Recherche avancée

Médias (91)

Autres articles (67)

  • Mise à jour de la version 0.1 vers 0.2

    24 juin 2013, par

    Explications des différents changements notables lors du passage de la version 0.1 de MediaSPIP à la version 0.3. Quelles sont les nouveautés
    Au niveau des dépendances logicielles Utilisation des dernières versions de FFMpeg (>= v1.2.1) ; Installation des dépendances pour Smush ; Installation de MediaInfo et FFprobe pour la récupération des métadonnées ; On n’utilise plus ffmpeg2theora ; On n’installe plus flvtool2 au profit de flvtool++ ; On n’installe plus ffmpeg-php qui n’est plus maintenu au (...)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • Ecrire une actualité

    21 juin 2013, par

    Présentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
    Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
    Vous pouvez personnaliser le formulaire de création d’une actualité.
    Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)

Sur d’autres sites (11928)

  • FFMPEG Debug "Invalid data found when processing input"

    29 septembre 2020, par dgcipp

    How can I debug this error ? I am trying to display a vp8-encoded video stream (TCP) from Android (x86) to my PC but I got this message from ffplay : "tcp ://10.8.0.3:49152 ? listen : Invalid data found when processing input"

    


    With h264 it works and the same code in an android device works with vp8 too.

    


    Command in the server :

    


    ffplay -i tcp://10.8.0.3:49152?listen


    


    I have tried adding verbosity or log-level debug, but it shows the same. How can I get a detailed error ?

    


    enter image description here

    


  • "invalid argument" for av_buffersrc_write_frame / av_buffersrc_add_frame

    1er février 2017, par TheSHEEEP

    I am trying to use FFmpeg C api to create a filter to merge two audio streams. Trying to follow the code from here : Implementing a multiple input filter graph with the Libavfilter library in Android NDK

    Everything seems to be alright.

    However, as soon as I call av_buffersrc_write_frame (or av_buffersrc_add_frame or av_buffersrc_add_frame_flags, it doesn’t matter), FFmpeg just reports "invalid argument" and nothing else - an utterly useless error message, as it could mean everything.
    Which argument is invalid ? What is wrong about it ? Nobody knows.

    I am initializing the graph and "grabbing" the contexts of the buffer sources for later use like this :

    // Alloc filter graph
    *filter_graph = avfilter_graph_alloc();
    if ((*filter_graph) == NULL) {
       os::log("Error: Cannot allocate filter graph.");
       return AVERROR(ENOMEM);
    }

    // Building the filter string, ommitted

    int result = avfilter_graph_parse2(*filter_graph, filterString.c_str(), &gis, &gos, NULL);
    if (result < 0)
    {
       char errorBuf[1024];
       av_make_error_string(errorBuf, 1024, result);
       log("Error: Parsing filter string: %s", errorBuf);
       return AVERROR_EXIT;
    }

    // Configure the graph
    result = avfilter_graph_config(*filter_graph, NULL);
    if (result < 0)
    {
       char errorBuf[1024];
       av_make_error_string(errorBuf, 1024, result);
       log("Error: Configuring filter graph: %s", errorBuf);
       return AVERROR_EXIT;
    }

    // Get the buffer source and buffer sink contexts
    for (unsigned int i = 0; i < (*filter_graph)->nb_filters; ++i) {
       AVFilterContext* filterContext = (*filter_graph)->filters[i];

       // The first two filters should be the abuffers
       std::string name = filterContext->name;
       if (name.find("abuffer") != name.npos && i < 2) {
           inputs[i].buffer_source_context = filterContext;
       }

       // abuffersink is the one we need to get the converted frames from
       if (name.find("abuffersink") != name.npos) {
           *buffer_sink_context = filterContext;
       }
    }

    There are absolutely no errors in the initialization. At least FFmpeg has only this to say about it, which I think looks good :

    FFMPEG: [Parsed_abuffer_0 @ 0ddfe840] Setting 'time_base' to value '1/48000'
    FFMPEG: [Parsed_abuffer_0 @ 0ddfe840] Setting 'sample_rate' to value '48000'
    FFMPEG: [Parsed_abuffer_0 @ 0ddfe840] Setting 'sample_fmt' to value '1'
    FFMPEG: [Parsed_abuffer_0 @ 0ddfe840] Setting 'channel_layout' to value '3'
    FFMPEG: [Parsed_abuffer_0 @ 0ddfe840] Setting 'channels' to value '2'
    FFMPEG: [Parsed_abuffer_0 @ 0ddfe840] tb:1/48000 samplefmt:s16 samplerate:48000 chlayout:3
    FFMPEG: [Parsed_abuffer_1 @ 0ddfe500] Setting 'time_base' to value '1/44100'
    FFMPEG: [Parsed_abuffer_1 @ 0ddfe500] Setting 'sample_rate' to value '44100'
    FFMPEG: [Parsed_abuffer_1 @ 0ddfe500] Setting 'sample_fmt' to value '1'
    FFMPEG: [Parsed_abuffer_1 @ 0ddfe500] Setting 'channel_layout' to value '3'
    FFMPEG: [Parsed_abuffer_1 @ 0ddfe500] Setting 'channels' to value '2'
    FFMPEG: [Parsed_abuffer_1 @ 0ddfe500] tb:1/44100 samplefmt:s16 samplerate:44100 chlayout:3
    FFMPEG: [Parsed_volume_3 @ 0ddfe580] Setting 'volume' to value '2'
    FFMPEG: [Parsed_aresample_4 @ 0ddfe660] Setting 'sample_rate' to value '48000'
    FFMPEG: [Parsed_aformat_5 @ 0ddfe940] Setting 'sample_fmts' to value 'fltp'
    FFMPEG: [Parsed_aformat_5 @ 0ddfe940] Setting 'channel_layouts' to value '3'

    Then, I am trying to add a frame (that has been decoded beforehand) like this :

    // "buffer_source_context" is one of the "inputs[i].buffer_source_context" from the code above
    int result = av_buffersrc_write_frame(  buffer_source_context,
                                               input_frame);
    if (result < 0) {
       char errorBuf[1024];
       av_make_error_string(errorBuf, 1024, result);
       log("Error: While adding to buffer source: %s", errorBuf);
       return AVERROR_EXIT;
    }

    And the result is the mentioned "invalid argument".

    The buffer_source_context is one of those noted from the code above and the input_frame is perfectly fine as well.
    Before the filtering code was added, the same frame was passed to an encoder instead without a problem.

    I am at a loss at what the error could be here. I log FFmpeg errors at the lowest possible level, but not a single error is shown. I am using FFmpeg 3.1.1.

  • Error : "No such option : -l" when running yt-dlp

    12 juin 2022, par garson

    I have adapted code from this Stack Overflow answer to try to download a video and use ffmpeg to alter it

    


    yt-dlp    "https://www.youtube.com/watch?v=PtkqwslbLY8" -o  ffmpeg -i in.mp4 -vcodec libx264 -crf 23 -preset fast -profile:v baseline \
-level 3 -refs 6 -vf "scale=640:-1,pad=iw:480:0:(oh-ih)/2,format=yuv420p" \
-acodec copy output.mp4


    


    However, when I run this I'm getting the error :

    


    yt-dlp: error: no such option: -l


    


    Any ideas of how to fix this ?