Recherche avancée

Médias (1)

Mot : - Tags -/ipad

Autres articles (47)

  • Submit bugs and patches

    13 avril 2011

    Unfortunately a software is never perfect.
    If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
    If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
    You may also (...)

  • Personnaliser les catégories

    21 juin 2013, par

    Formulaire de création d’une catégorie
    Pour ceux qui connaissent bien SPIP, une catégorie peut être assimilée à une rubrique.
    Dans le cas d’un document de type catégorie, les champs proposés par défaut sont : Texte
    On peut modifier ce formulaire dans la partie :
    Administration > Configuration des masques de formulaire.
    Dans le cas d’un document de type média, les champs non affichés par défaut sont : Descriptif rapide
    Par ailleurs, c’est dans cette partie configuration qu’on peut indiquer le (...)

  • Les formats acceptés

    28 janvier 2010, par

    Les commandes suivantes permettent d’avoir des informations sur les formats et codecs gérés par l’installation local de ffmpeg :
    ffmpeg -codecs ffmpeg -formats
    Les format videos acceptés en entrée
    Cette liste est non exhaustive, elle met en exergue les principaux formats utilisés : h264 : H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 m4v : raw MPEG-4 video format flv : Flash Video (FLV) / Sorenson Spark / Sorenson H.263 Theora wmv :
    Les formats vidéos de sortie possibles
    Dans un premier temps on (...)

Sur d’autres sites (7834)

  • Shaka Player returns 4001 error - Node.js local web server playing MPEG-DASH

    27 mai 2020, par salgarji

    I've used Chrome inspection tool to access 'Console' and analyze what is happening. Complete error information :

    



    D {severity: 2, category: 4, code: 4001, data: Array(1), handled: false}
category: 4
code: 4001
data: Array(1)
0: "http://localhost:8080/dash_segmentos/video.mpd"
length: 1
__proto__: Array(0)
handled: false
severity: 2
__proto__: Object


    



    My Server.js file :

    



    var http = require('http');
var fs = require('fs');

console.log(__dirname);

var path='dash_segmentos/video.mpd';
fs.access(path, fs.constants.R_OK | fs.constants.W_OK, (err) => {
    if (err) {
        console.log("%s doesn't exist", path);
    } else {
        console.log('can read/write %s', path);
    }
});

const PORT=8080; 

fs.readFile('./player.html', function (err, html) {

    if (err) throw err;    

    http.createServer(function(request, response) {  
        response.setHeader("Access-Control-Allow-Headers", "authorization, content-type");
        response.setHeader("Access-Control-Allow-Origin", "*");
        response.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
        response.writeHeader(200, {"Content-Type": "text/html"}); 
        response.write(html);  
        response.end();
    }).listen(PORT);
});


    



    As you can see I've added CORS (I guess it's correct) and a console.log to see if it's in the proper location. Furthermore, I've verified that file is accessible with fs.access and it returns can read/write dash_segmentos/video.mpd For this reason, I'm sure I am in the correct path and referencing the right file.

    



    The HTML code (player.html) provided to Server.js :

    



    &#xA;&#xA; &#xA; <code class="echappe-js">&lt;script type=&quot;text/javascript&quot;&amp;#xA;src=&quot;https://cdnjs.cloudflare.com/ajax/libs/shaka-player/2.5.11/shaka-player.compiled.js&quot;&gt;&lt;/script&gt;&#xA; &#xA; &#xA; 
    &#xA; &#xA;

    &#xA;&#xA; &lt;script&gt;&amp;#xA;function initApp() { &amp;#xA;shaka.polyfill.installAll(); &amp;#xA;if (shaka.Player.isBrowserSupported()) { &amp;#xA; initPlayer(); &amp;#xA; } else { &amp;#xA; console.error(&amp;#x27;Browser not supported!&amp;#x27;);&amp;#xA; }}&amp;#xA;&amp;#xA;function initPlayer() { &amp;#xA;var video = document.getElementById( &amp;#x27;video&amp;#x27; );&amp;#xA;var player = new shaka.Player( video );&amp;#xA; window.player = player; &amp;#xA;player.addEventListener(&amp;#x27;error&amp;#x27;, onErrorEvent); &amp;#xA;player.load(path).then(function (){&amp;#xA;    console.log(&amp;#x27;Video loaded correctly&amp;#x27;);&amp;#xA; }).catch(onError);&amp;#xA;&amp;#xA;function onErrorEvent(event) {&amp;#xA; onError(event.detail); &amp;#xA; }&amp;#xA;function onError(error) {&amp;#xA; console.error(&amp;#x27;Codigo de error: &amp;#x27;, error.code, &amp;#x27; en &amp;#x27;, error);&amp;#xA; }&amp;#xA;}&amp;#xA;&lt;/script&gt;&#xA;&#xA;&lt;script&gt;&amp;#xA;var path=&amp;#x27;dash_segmentos/video.mpd&amp;#x27;;&amp;#xA;//var path=&amp;#x27;https://dash.akamaized.net/dash264/TestCases/2c/qualcomm/1/MultiResMPEG2.mpd&amp;#x27;;&amp;#xA;//the URL above is working! but it won&amp;#x27;t read my local mpd&amp;#xA;&amp;#xA;document.addEventListener(&amp;#x27;DOMContentLoaded&amp;#x27;, initApp);&amp;#xA;&amp;#xA; &lt;/script&gt;&#xA; &#xA;&#xA;

    &#xA;&#xA;

    I've tried changing the URL to an online resource and the player is properly working.

    &#xA;&#xA;

    My fluent-ffmpeg command which generates the video is :

    &#xA;&#xA;

    var ffmpeg = require(&#x27;fluent-ffmpeg&#x27;);&#xA;&#xA;var grabacion = new ffmpeg();&#xA;&#xA;grabacion.addInput(&#x27;0&#x27;)&#xA;.inputOptions([&#x27;-y -nostdin&#x27;, &#x27;-f avfoundation&#x27;, &#x27;-video_size 1280x720&#x27;, &#x27;-framerate 30&#x27;])&#xA;.outputOptions([&#x27;-vcodec libx264&#x27;, &#x27;-keyint_min 0&#x27;, &#x27;-g 100&#x27;, &#x27;-map 0:v&#x27;, &#x27;-b:v 1000k&#x27;, &#x27;-f dash&#x27;,&#xA; &#x27;-use_template 1&#x27;, &#x27;-use_timeline 0&#x27;, &#x27;-init_seg_name video0-$RepresentationID$-$Number$.mp4&#x27;,&#xA; &#x27;-media_seg_name video0-$RepresentationID$-$Number$.mp4&#x27;,&#x27;-single_file 0&#x27;, &#x27;-remove_at_exit 0&#x27;, &#x27;-window_size 20&#x27;, &#x27;-seg_duration 4&#x27;])&#xA;.output(&#x27;/path/to/files/dash_segmentos/video.mpd&#x27;)&#xA;.run();&#xA;

    &#xA;&#xA;

    The mpd manifest file is :

    &#xA;&#xA;

    &lt;?xml version="1.0" encoding="utf-8"?>&#xA;<mpd xmlns="urn:mpeg:dash:schema:mpd:2011" profiles="urn:mpeg:dash:profile:isoff-live:2011" type="static" mediapresentationduration="PT26.7S" maxsegmentduration="PT4.0S" minbuffertime="PT13.2S">&#xA;    <programinformation>&#xA;    </programinformation>&#xA;    <servicedescription>&#xA;    </servicedescription>&#xA;    <period start="PT0.0S">&#xA;        <adaptationset contenttype="video" startwithsap="1" segmentalignment="true" bitstreamswitching="true" framerate="30000/1001" maxwidth="1280" maxheight="720" par="16:9">&#xA;            <representation mimetype="video/mp4" codecs="avc1.7a001f" bandwidth="1000000" width="1280" height="720" sar="1:1">&#xA;                <segmenttemplate timescale="1000000" duration="4000000" initialization="video0-$RepresentationID$-$Number$.mp4" media="video0-$RepresentationID$-$Number$.mp4" startnumber="1">&#xA;                </segmenttemplate>&#xA;            </representation>&#xA;        </adaptationset>&#xA;    </period>&#xA;</mpd>&#xA;

    &#xA;&#xA;

    Is something about ffmpeg ? Permissions ? Pixel format ? Encoding ? I've tried with other mpd file provided by my Raspberry Pi using video4linux (v4l) and it returns the same error !

    &#xA;&#xA;

    I know that's a lot of code, but maybe you find it quicker than me. I guess it's a Shaka Player thing with the XML, but I can't explain how ffmpeg is wrongly creating XML code.

    &#xA;&#xA;

    Thank you in advance !!

    &#xA;

  • ffmpeg to convert file to webm returns in error

    14 avril 2019, par user3184895

    i have a self-recorded file in .ts format and want to convert it to three different formats(.mp4, .ogg and .webm).

    for that i use my brandnew debian9 with following commands :

    /usr/bin/ffmpeg -y -i source.ts -strict experimental -r 25 -b 18550k -bt 22792k -acodec aac -ac 2 -ar 48000 -ab 320k output.mp4

    /usr/bin/ffmpeg -y -i source.ts -r 25 -b 18550k -bt 22792k -vcodec libtheora -acodec libvorbis -ac 2 -ar 48000 -ab 320k output.ogg

    /usr/bin/ffmpeg -y -i source.ts -r 25 -b 18550k -bt 22792k -ac 2 -ar 48000 -ab 320k output.webm

    Source-File :

    General
    ID                                       : 1019 (0x3FB)
    Complete name                            : test.ts
    Format                                   : MPEG-TS
    File size                                : 85.9 MiB
    Duration                                 : 56 s 490 ms
    Overall bit rate mode                    : Variable
    Overall bit rate                         : 12.7 Mb/s

    Video
    ID                                       : 5101 (0x13ED)
    Menu ID                                  : 10301 (0x283D)
    Format                                   : AVC
    Format/Info                              : Advanced Video Codec
    Format profile                           : High@L4
    Format settings, CABAC                   : Yes
    Format settings, ReFrames                : 4 frames
    Codec ID                                 : 27
    Duration                                 : 55 s 880 ms
    Bit rate                                 : 11.1 Mb/s
    Width                                    : 1 280 pixels
    Height                                   : 720 pixels
    Display aspect ratio                     : 16:9
    Frame rate                               : 50.000 FPS
    Color space                              : YUV
    Chroma subsampling                       : 4:2:0
    Bit depth                                : 8 bits
    Scan type                                : Progressive
    Bits/(Pixel*Frame)                       : 0.241
    Stream size                              : 74.1 MiB (86%)

    Audio #1
    ID                                       : 5102 (0x13EE)
    Menu ID                                  : 10301 (0x283D)
    Format                                   : MPEG Audio
    Format version                           : Version 1
    Format profile                           : Layer 2
    Codec ID                                 : 3
    Duration                                 : 56 s 448 ms
    Bit rate mode                            : Constant
    Bit rate                                 : 256 kb/s
    Channel(s)                               : 2 channels
    Sampling rate                            : 48.0 kHz
    Compression mode                         : Lossy
    Delay relative to video                  : -1 s 136 ms
    Stream size                              : 1.72 MiB (2%)
    Language                                 : German

    Audio #2
    ID                                       : 5103 (0x13EF)
    Menu ID                                  : 10301 (0x283D)
    Format                                   : MPEG Audio
    Format version                           : Version 1
    Format profile                           : Layer 2
    Codec ID                                 : 3
    Duration                                 : 56 s 448 ms
    Bit rate mode                            : Constant
    Bit rate                                 : 256 kb/s
    Channel(s)                               : 2 channels
    Sampling rate                            : 48.0 kHz
    Compression mode                         : Lossy
    Delay relative to video                  : -1 s 136 ms
    Stream size                              : 1.72 MiB (2%)
    descriptor_tag_extension                 : 6

    Audio #3
    ID                                       : 5106 (0x13F2)
    Menu ID                                  : 10301 (0x283D)
    Format                                   : AC-3
    Format/Info                              : Audio Coding 3
    Mode extension                           : CM (complete main)
    Format settings, Endianness              : Big
    Codec ID                                 : 6
    Duration                                 : 56 s 480 ms
    Bit rate mode                            : Constant
    Bit rate                                 : 448 kb/s
    Channel(s)                               : 2 channels
    Channel positions                        : Front: L R
    Sampling rate                            : 48.0 kHz
    Frame rate                               : 31.250 FPS (1536 spf)
    Bit depth                                : 16 bits
    Compression mode                         : Lossy
    Delay relative to video                  : -1 s 168 ms
    Stream size                              : 3.02 MiB (4%)
    Language                                 : German

    Text
    ID                                       : 5105 (0x13F1)
    Menu ID                                  : 10301 (0x283D)
    Format                                   : DVB Subtitle
    Codec ID                                 : 6
    Duration                                 : 54 s 800 ms
    Delay relative to video                  : 2 s 520 ms
    Language                                 : German

    Other
    ID                                       : 5104 (0x13F0)-100
    Menu ID                                  : 10301 (0x283D)
    Format                                   : Teletext
    Language                                 : German

    Menu
    ID                                       : 5100 (0x13EC)
    Menu ID                                  : 10301 (0x283D)
    Duration                                 : 56 s 490 ms
    List                                     : 1170 (0x492) () / 1176 (0x498) () / 2171 (0x87B) () / 5101 (0x13ED) (AVC) / 5102 (0x13EE) (MPEG Audio, German) / 5103 (0x13EF) (MPEG Audio) / 5104 (0x13F0)-100 (Teletext, de) / 5105 (0x13F1) (DVB Subtitle, German) / 5106 (0x13F2) (AC-3, German) / 5108 (0x13F4) () / 5172 (0x1434) ()
    Language                                 :  /  /  /  / German /  / German / German / German

    Why i am doing that ? I just play arround with a privat intranet (web-application) to stream my own recorded files on different clients (Smartphone, Tablet, Desktop). Thats also the reason for the different formats (.mp4, .ogg, .webm)

    My current problem is : The command to convert it to .webm returns following error :

    /usr/bin/ffmpeg -y -i test.ts -r 25 -b 18550k -bt 22792k -ac 2 -ar 48000 -ab 320k output.webm
    ffmpeg version 3.2.12-1~deb9u1 Copyright (c) 2000-2018 the FFmpeg developers
     built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
     configuration: --prefix=/usr --extra-version='1~deb9u1' --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libebur128 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
     libavutil      55. 34.101 / 55. 34.101
     libavcodec     57. 64.101 / 57. 64.101
     libavformat    57. 56.101 / 57. 56.101
     libavdevice    57.  1.100 / 57.  1.100
     libavfilter     6. 65.100 /  6. 65.100
     libavresample   3.  1.  0 /  3.  1.  0
     libswscale      4.  2.100 /  4.  2.100
     libswresample   2.  3.100 /  2.  3.100
     libpostproc    54.  1.100 / 54.  1.100
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] decode_slice_header error
    [h264 @ 0x557535b03b40] no frame!
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] decode_slice_header error
    [h264 @ 0x557535b03b40] no frame!
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] decode_slice_header error
    [h264 @ 0x557535b03b40] no frame!
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] decode_slice_header error
    [h264 @ 0x557535b03b40] no frame!
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] decode_slice_header error
    [h264 @ 0x557535b03b40] no frame!
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] decode_slice_header error
    [h264 @ 0x557535b03b40] no frame!
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] decode_slice_header error
    [h264 @ 0x557535b03b40] no frame!
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] decode_slice_header error
    [h264 @ 0x557535b03b40] no frame!
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] decode_slice_header error
    [h264 @ 0x557535b03b40] no frame!
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] decode_slice_header error
    [h264 @ 0x557535b03b40] no frame!
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] SPS unavailable in decode_picture_timing
    [h264 @ 0x557535b03b40] non-existing PPS 0 referenced
    [h264 @ 0x557535b03b40] decode_slice_header error
    [h264 @ 0x557535b03b40] no frame!
    [mpegts @ 0x557535ade440] start time for stream 9 is not set in estimate_timings_from_pts
    [mpegts @ 0x557535ade440] PES packet size mismatch
    [mpegts @ 0x557535ade440] Could not find codec parameters for stream 0 (Unknown: none ([5][0][0][0] / 0x0005)): unknown codec
    Consider increasing the value for the 'analyzeduration' and 'probesize' options
    [mpegts @ 0x557535ade440] Could not find codec parameters for stream 1 (Unknown: none ([12][0][0][0] / 0x000C)): unknown codec
    Consider increasing the value for the 'analyzeduration' and 'probesize' options
    [mpegts @ 0x557535ade440] Could not find codec parameters for stream 2 (Unknown: none ([11][0][0][0] / 0x000B)): unknown codec
    Consider increasing the value for the 'analyzeduration' and 'probesize' options
    [mpegts @ 0x557535ade440] Could not find codec parameters for stream 10 (Unknown: none ([11][0][0][0] / 0x000B)): unknown codec
    Consider increasing the value for the 'analyzeduration' and 'probesize' options
    Input #0, mpegts, from 'test.ts':
     Duration: 00:00:58.04, start: 86615.181389, bitrate: 12418 kb/s
     Program 10301
       Stream #0:0[0x492]: Unknown: none ([5][0][0][0] / 0x0005)
       Stream #0:1[0x498]: Unknown: none ([12][0][0][0] / 0x000C)
       Stream #0:2[0x87b]: Unknown: none ([11][0][0][0] / 0x000B)
       Stream #0:3[0x13ed]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], 50 fps, 50 tbr, 90k tbn, 100 tbc
       Stream #0:4[0x13ee](deu): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 256 kb/s
       Stream #0:5[0x13ef](mis): Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 256 kb/s
       Stream #0:6[0x13f0](deu): Subtitle: dvb_teletext ([6][0][0][0] / 0x0006)
       Stream #0:7[0x13f1](deu): Subtitle: dvb_subtitle ([6][0][0][0] / 0x0006) (hearing impaired)
       Stream #0:8[0x13f2](deu): Audio: ac3 ([6][0][0][0] / 0x0006), 48000 Hz, stereo, fltp, 448 kb/s
       Stream #0:9[0x13f4]: Data: bin_data ([6][0][0][0] / 0x0006)
       Stream #0:10[0x1434]: Unknown: none ([11][0][0][0] / 0x000B)
     Program 10302
     Program 10303
     Program 10304
    Please use -b:a or -b:v, -b is ambiguous
    [libvpx-vp9 @ 0x557535ba6d00] v1.6.1
    Stream mapping:
     Stream #0:3 -> #0:0 (h264 (native) -> vp9 (libvpx-vp9))
     Stream #0:4 -> #0:1 (mp2 (native) -> opus (libopus))
     Stream #0:6 -> #0:2 (dvb_teletext (libzvbi_teletextdec) -> webvtt (native))
    Error while opening encoder for output stream #0:2 - maybe incorrect parameters such as bit_rate, rate, width or height

    i dont understand the problem, because the convertions to .ogg or .mp4 are workin. So i cannot be a problem with the source-codecs. Does anyone have any idea what my problem might be

  • Overlay filter in LibAV/FFMpeg returns strange (tripled) frame in C

    28 juillet 2014, par gkuczera

    I tried to make a program, which merges two frames. I use LibAV (libav-win32-20140428) under Windows 7 64 and Visual Studio 2013.
    But the result is quite odd.

    http://oi58.tinypic.com/rcobnm.jpg

    The filter which was used is Overlay. When I change the graph, to the one, that uses only one stream and add FADE effect, everything works like a charm. But OVERLAY and eg. DRAWBOX give me strange distortion (three frames on one and black and white effect). Here is the code :

    static int init_filter_graph(AVFilterGraph **pGraph, AVFilterContext **pSrc1, AVFilterContext **pSink)
    {
       AVFilterGraph* tFilterGraph;
       AVFilterContext* tBufferContext1;
       AVFilter* tBuffer1;
       AVFilterContext* tColorContext;
       AVFilter* tColor;
       AVFilterContext* tOverlayContext;
       AVFilter* tOverlay;
       AVFilterContext* tBufferSinkContext;
       AVFilter* tBufferSink;

       int tError;

       /* Create a new filtergraph, which will contain all the filters. */
       tFilterGraph = avfilter_graph_alloc();

       if (!tFilterGraph) {
           return -1;
       }

       { // BUFFER FILTER 1
           tBuffer1 = avfilter_get_by_name("buffer");
           if (!tBuffer1) {
               return -1;
           }
           tBufferContext1 = avfilter_graph_alloc_filter(tFilterGraph, tBuffer1, "src1");
           if (!tBufferContext1) {
               return -1;
           }

           av_dict_set(&amp;tOptionsDict, "width", "320", 0);
           av_dict_set(&amp;tOptionsDict, "height", "240", 0);
           av_dict_set(&amp;tOptionsDict, "pix_fmt", "bgr24", 0);
           av_dict_set(&amp;tOptionsDict, "time_base", "1/25", 0);
           av_dict_set(&amp;tOptionsDict, "sar", "1", 0);
           tError = avfilter_init_dict(tBufferContext1, &amp;tOptionsDict);
           av_dict_free(&amp;tOptionsDict);
           if (tError &lt; 0) {
               return tError;
           }
       }

       { // COLOR FILTER
           tColor = avfilter_get_by_name("color");
           if (!tColor) {
               return -1;
           }
           tColorContext = avfilter_graph_alloc_filter(tFilterGraph, tColor, "color");
           if (!tColorContext) {
               return -1;
           }

           av_dict_set(&amp;tOptionsDict, "color", "white", 0);
           av_dict_set(&amp;tOptionsDict, "size", "20x120", 0);
           av_dict_set(&amp;tOptionsDict, "framerate", "1/25", 0);
           tError = avfilter_init_dict(tColorContext, &amp;tOptionsDict);
           av_dict_free(&amp;tOptionsDict);
           if (tError &lt; 0) {
               return tError;
           }
       }

       { // OVERLAY FILTER
           tOverlay = avfilter_get_by_name("overlay");
           if (!tOverlay) {
               return -1;
           }
           tOverlayContext = avfilter_graph_alloc_filter(tFilterGraph, tOverlay, "overlay");
           if (!tOverlayContext) {
               return -1;
           }

           av_dict_set(&amp;tOptionsDict, "x", "0", 0);
           av_dict_set(&amp;tOptionsDict, "y", "0", 0);
           av_dict_set(&amp;tOptionsDict, "main_w", "120", 0);
           av_dict_set(&amp;tOptionsDict, "main_h", "140", 0);
           av_dict_set(&amp;tOptionsDict, "overlay_w", "320", 0);
           av_dict_set(&amp;tOptionsDict, "overlay_h", "240", 0);
           tError = avfilter_init_dict(tOverlayContext, &amp;tOptionsDict);
           av_dict_free(&amp;tOptionsDict);
           if (tError &lt; 0) {
               return tError;
           }
       }

       { // BUFFERSINK FILTER
           tBufferSink = avfilter_get_by_name("buffersink");
           if (!tBufferSink) {
               return -1;
           }

           tBufferSinkContext = avfilter_graph_alloc_filter(tFilterGraph, tBufferSink, "sink");
           if (!tBufferSinkContext) {
               return -1;
           }

           tError = avfilter_init_str(tBufferSinkContext, NULL);
           if (tError &lt; 0) {
               return tError;
           }
       }

       // Linking graph
       tError = avfilter_link(tBufferContext1, 0, tOverlayContext, 0);
       if (tError >= 0) {
           tError = avfilter_link(tColorContext, 0, tOverlayContext, 1);
       }
       if (tError >= 0) {
           tError = avfilter_link(tOverlayContext, 0, tBufferSinkContext, 0);
       }
       if (tError &lt; 0) {
           return tError;
       }

       tError = avfilter_graph_config(tFilterGraph, NULL);
       if (tError &lt; 0) {
           return tError;
       }

       *pGraph = tFilterGraph;
       *pSrc1 = tBufferContext1;
       *pSink = tBufferSinkContext;

       return 0;
    }

    What do you think is the reason ?