Recherche avancée

Médias (1)

Mot : - Tags -/bug

Autres articles (36)

  • Menus personnalisés

    14 novembre 2010, par

    MediaSPIP utilise le plugin Menus pour gérer plusieurs menus configurables pour la navigation.
    Cela permet de laisser aux administrateurs de canaux la possibilité de configurer finement ces menus.
    Menus créés à l’initialisation du site
    Par défaut trois menus sont créés automatiquement à l’initialisation du site : Le menu principal ; Identifiant : barrenav ; Ce menu s’insère en général en haut de la page après le bloc d’entête, son identifiant le rend compatible avec les squelettes basés sur Zpip ; (...)

  • Emballe médias : à quoi cela sert ?

    4 février 2011, par

    Ce plugin vise à gérer des sites de mise en ligne de documents de tous types.
    Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ;

  • 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 (4746)

  • aws-lambda not recognizing ffmpeg command

    28 août 2019, par Jay

    AWS Lambda function running Python is not recognizing -filter_complex

      os.system(f"/tmp/ffmpeg -f lavfi -i color=black -i 2.gif -filter_complex [0][1]scale2ref[bg][gif];[bg]setsar=1[bg];[bg][gif]overlay=shortest=1 2.mp4")

    Error from CloudWatch :

    sh: -filter_complex: command not found

    Running:
    ffmpeg version N-48801-g06ba4783a0-static https://johnvansickle.com/ffmpeg/ Copyright (c) 2000-2019 the FFmpeg developers

    I think I know the problem. Somehow I need to put Quotes around :

    "[0][1]scale2ref[bg][gif];[bg]setsar=1[bg];[bg][gif]overlay=shortest=1"
  • FFMPEG, Creating an MPEG-DASH stream with existing inputs

    10 septembre 2019, par kitensei

    I am trying to generating a DASH .mpd file from multiple inputs (2 videos, 1 audio) without any success..

    What I’d like to do it’s simple getting the streams and create an mpd file without any re encoding since I’ve already my sources ready.

    The output seems to work in rxplayer, but I do get a lot of errors (see log below).

    Here are my 3 sources (taken from http://dash-mse-test.appspot.com/media.html) :

    ➜  test-dash $ ffprobe -hide_banner ../test-sources/car/car-20120827-89.mp4
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '../test-sources/car/car-20120827-89.mp4':
     Metadata:
       major_brand     : dash
       minor_version   : 0
       compatible_brands: iso6avc1mp41
       creation_time   : 2012-08-24T03:04:15.000000Z
     Duration: 00:03:01.39, start: 0.000000, bitrate: 4202 kb/s
       Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 1920x1080, 171 kb/s, 23.97 fps, 23.97 tbr, 90k tbn, 47.95 tbc (default)
       Metadata:
         creation_time   : 2012-08-24T03:04:15.000000Z
         handler_name    : VideoHandler

    ➜  test-dash $ ffprobe -hide_banner ../test-sources/car/car-20120827-88.mp4
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '../test-sources/car/car-20120827-88.mp4':
     Metadata:
       major_brand     : dash
       minor_version   : 0
       compatible_brands: iso6avc1mp41
       creation_time   : 2012-08-27T01:01:28.000000Z
     Duration: 00:03:01.43, start: 0.000000, bitrate: 2076 kb/s
       Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(progressive), 1280x720, 81 kb/s, 23.97 fps, 23.97 tbr, 90k tbn, 47.95 tbc (default)
       Metadata:
         creation_time   : 2012-08-27T01:01:28.000000Z
         handler_name    : VideoHandler

    ➜  test-dash $ ffprobe -hide_banner ../test-sources/car/car-20120827-8b.mp4
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '../test-sources/car/car-20120827-8b.mp4':
     Metadata:
       major_brand     : dash
       minor_version   : 0
       compatible_brands: iso6mp41
       creation_time   : 2012-08-27T01:19:23.000000Z
     Duration: 00:03:01.63, start: 0.000000, bitrate: 31 kb/s
       Stream #0:0(und): Audio: aac (LC) (mp4a / 0x6134706D), 22050 Hz, mono, fltp, 1 kb/s (default)
       Metadata:
         creation_time   : 2012-08-27T01:19:23.000000Z
         handler_name    : SoundHandler

    And here how I am "muxing" them together with an .mpd manifest :

    ffmpeg  \
    -re \
    -i ../test-sources/car/car-20120827-88.mp4 \
    -i ../test-sources/car/car-20120827-89.mp4 \
    -i ../test-sources/car/car-20120827-8d.mp4 \
    -map 0:0  \
    -map 1:0 \
    -map 2:0 \
    -c copy \
    -bf 1 -keyint_min 120 -g 120 -sc_threshold 0 \
    -b_strategy 0 -use_timeline 1 -use_template 1 \
    -adaptation_sets "id=0,streams=v id=1,streams=a" \
    -f dash out.mpd

    The generated mpd file :

    <?xml version="1.0" encoding="utf-8"?>
    <mpd xmlns="urn:mpeg:dash:schema:mpd:2011" profiles="urn:mpeg:dash:profile:isoff-live:2011" type="static" mediapresentationduration="PT3M1.3S" minbuffertime="PT10.0S">
       <programinformation>
       </programinformation>
       <period start="PT0.0S">
           <adaptationset contenttype="video" segmentalignment="true" bitstreamswitching="true" lang="und">
               <representation mimetype="video/mp4" codecs="avc1.4d401f" bandwidth="81397" width="1280" height="720" framerate="45000/1877">
                   <segmenttemplate timescale="24000" initialization="init-stream$RepresentationID$.m4s" media="chunk-stream$RepresentationID$-$Number%05d$.m4s" startnumber="1">
                       <segmenttimeline>
                           <s t="0" d="120128"></s>
                           <s d="120120" r="34"></s>
                           <s d="29023"></s>
                       </segmenttimeline>
                   </segmenttemplate>
               </representation>
               <representation mimetype="video/mp4" codecs="avc1.640028" bandwidth="171953" width="1920" height="1080" framerate="45000/1877">
                   <segmenttemplate timescale="24000" initialization="init-stream$RepresentationID$.m4s" media="chunk-stream$RepresentationID$-$Number%05d$.m4s" startnumber="1">
                       <segmenttimeline>
                           <s t="0" d="121129"></s>
                           <s d="239239"></s>
                           <s d="120120" r="32"></s>
                           <s d="29023"></s>
                       </segmenttimeline>
                   </segmenttemplate>
               </representation>
           </adaptationset>
           <adaptationset contenttype="audio" segmentalignment="true" bitstreamswitching="true" lang="und">
               <representation mimetype="audio/mp4" codecs="mp4a.40.2" bandwidth="13976" audiosamplingrate="44100">
                   <audiochannelconfiguration schemeiduri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"></audiochannelconfiguration>
                   <segmenttemplate timescale="44100" initialization="init-stream$RepresentationID$.m4s" media="chunk-stream$RepresentationID$-$Number%05d$.m4s" startnumber="1">
                       <segmenttimeline>
                           <s t="0" d="219136"></s>
                           <s d="221184"></s>
                           <s d="220160"></s>
                           <s d="221184"></s>
                           <s d="220160"></s>
                           <s d="221184" r="1"></s>
                           <s d="220160"></s>
                           <s d="221184"></s>
                           <s d="220160"></s>
                           <s d="221184"></s>
                           <s d="220160"></s>
                           <s d="221184"></s>
                           <s d="220160"></s>
                           <s d="221184"></s>
                           <s d="220160"></s>
                           <s d="221184" r="1"></s>
                           <s d="220160"></s>
                           <s d="221184"></s>
                           <s d="220160"></s>
                           <s d="221184"></s>
                           <s d="220160"></s>
                           <s d="221184"></s>
                           <s d="220160"></s>
                           <s d="221184"></s>
                           <s d="220160"></s>
                           <s d="221184" r="1"></s>
                           <s d="220160"></s>
                           <s d="221184"></s>
                           <s d="220160"></s>
                           <s d="221184"></s>
                           <s d="220160"></s>
                           <s d="221184"></s>
                           <s d="220160"></s>
                           <s d="63488"></s>
                       </segmenttimeline>
                   </segmenttemplate>
               </representation>
           </adaptationset>
       </period>
    </mpd>

    But I get a lot of errors :

    ➜  test-dash git:(0.1) ✗ ffmpeg  \
    -re \
    -i ../test-sources/car/car-20120827-88.mp4 \
    -i ../test-sources/car/car-20120827-89.mp4 \
    -i ../test-sources/car/car-20120827-8d.mp4 \
    -map 0:0  \
    -map 1:0 \
    -map 2:0 \
    -c copy \
    -bf 1 -keyint_min 120 -g 120 -sc_threshold 0 \
    -b_strategy 0 -use_timeline 1 -use_template 1 \
    -adaptation_sets "id=0,streams=v id=1,streams=a" \
    -f dash out.mpd
    ffmpeg version n4.2.1 Copyright (c) 2000-2019 the FFmpeg developers
     built with gcc 9.1.0 (GCC)
     configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libiec61883 --enable-libjack --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-nvdec --enable-nvenc --enable-omx --enable-shared --enable-version3
     libavutil      56. 31.100 / 56. 31.100
     libavcodec     58. 54.100 / 58. 54.100
     libavformat    58. 29.100 / 58. 29.100
     libavdevice    58.  8.100 / 58.  8.100
     libavfilter     7. 57.100 /  7. 57.100
     libswscale      5.  5.100 /  5.  5.100
     libswresample   3.  5.100 /  3.  5.100
     libpostproc    55.  5.100 / 55.  5.100
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '../test-sources/car/car-20120827-88.mp4':
     Metadata:
       major_brand     : dash
       minor_version   : 0
       compatible_brands: iso6avc1mp41
       creation_time   : 2012-08-27T01:01:28.000000Z
     Duration: 00:03:01.43, start: 0.000000, bitrate: 2076 kb/s
       Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(progressive), 1280x720, 81 kb/s, 23.97 fps, 23.97 tbr, 90k tbn, 47.95 tbc (default)
       Metadata:
         creation_time   : 2012-08-27T01:01:28.000000Z
         handler_name    : VideoHandler
    Input #1, mov,mp4,m4a,3gp,3g2,mj2, from '../test-sources/car/car-20120827-89.mp4':
     Metadata:
       major_brand     : dash
       minor_version   : 0
       compatible_brands: iso6avc1mp41
       creation_time   : 2012-08-24T03:04:15.000000Z
     Duration: 00:03:01.39, start: 0.000000, bitrate: 4202 kb/s
       Stream #1:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 1920x1080, 171 kb/s, 23.97 fps, 23.97 tbr, 90k tbn, 47.95 tbc (default)
       Metadata:
         creation_time   : 2012-08-24T03:04:15.000000Z
         handler_name    : VideoHandler
    Input #2, mov,mp4,m4a,3gp,3g2,mj2, from '../test-sources/car/car-20120827-8d.mp4':
     Metadata:
       major_brand     : dash
       minor_version   : 0
       compatible_brands: iso6mp41
       creation_time   : 2012-08-27T00:59:44.000000Z
     Duration: 00:03:01.58, start: 0.000000, bitrate: 255 kb/s
       Stream #2:0(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 13 kb/s (default)
       Metadata:
         creation_time   : 2012-08-27T00:59:44.000000Z
         handler_name    : SoundHandler
    [dash @ 0x55b464bb1240] Opening 'init-stream0.m4s' for writing
    [dash @ 0x55b464bb1240] Opening 'init-stream1.m4s' for writing
    [dash @ 0x55b464bb1240] Opening 'init-stream2.m4s' for writing
    Output #0, dash, to 'out.mpd':
     Metadata:
       major_brand     : dash
       minor_version   : 0
       compatible_brands: iso6avc1mp41
       encoder         : Lavf58.29.100
       Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(progressive), 1280x720, q=2-31, 81 kb/s, 23.97 fps, 23.97 tbr, 24k tbn, 23.98 tbc (default)
       Metadata:
         creation_time   : 2012-08-27T01:01:28.000000Z
         handler_name    : VideoHandler
       Stream #0:1(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(progressive), 1920x1080, q=2-31, 171 kb/s, 23.97 fps, 23.97 tbr, 24k tbn, 23.98 tbc (default)
       Metadata:
         creation_time   : 2012-08-24T03:04:15.000000Z
         handler_name    : VideoHandler
       Stream #0:2(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 13 kb/s (default)
       Metadata:
         creation_time   : 2012-08-27T00:59:44.000000Z
         handler_name    : SoundHandler
    Stream mapping:
     Stream #0:0 -> #0:0 (copy)
     Stream #1:0 -> #0:1 (copy)
     Stream #2:0 -> #0:2 (copy)
    Press [q] to stop, [?] for help
    [dash @ 0x55b464bb1240] Opening 'chunk-stream0-00001.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'chunk-stream1-00001.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00001.m4s.tmp' for writing
    [mp4 @ 0x55b464c3d840] Application provided duration: -8 / timestamp: 119119 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream0-00002.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Non-monotonous DTS in output stream 0:1; previous: 119127, current: 119119; changing to 119128. This may result in incorrect timestamps in the output file.
    [dash @ 0x55b464bb1240] Opening 'out.mpd.tmp' for writing
    [mp4 @ 0x55b464c425c0] Application provided duration: -1000 / timestamp: 119128 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream1-00002.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00002.m4s.tmp' for writing
    [mp4 @ 0x55b464c425c0] Application provided duration: -8 / timestamp: 120120 is out of range for mov/mp4 format
    [mp4 @ 0x55b464c425c0] pts has no value
    [mp4 @ 0x55b464c3d840] Application provided duration: -8 / timestamp: 239239 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream0-00003.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00003.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'out.mpd.tmp' for writing74 bitrate=N/A speed=   1x    
    [mp4 @ 0x55b464c3d840] Application provided duration: -8 / timestamp: 359359 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream0-00004.m4s.tmp' for writing
    [mp4 @ 0x55b464c425c0] Application provided duration: -8 / timestamp: 359359 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream1-00003.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00004.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'out.mpd.tmp' for writing81 bitrate=N/A speed=   1x    
    [mp4 @ 0x55b464c3d840] Application provided duration: -8 / timestamp: 479479 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream0-00005.m4s.tmp' for writing
    [mp4 @ 0x55b464c425c0] Application provided duration: -8 / timestamp: 479479 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream1-00004.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00005.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'out.mpd.tmp' for writing86 bitrate=N/A speed=   1x    
    [mp4 @ 0x55b464c3d840] Application provided duration: -8 / timestamp: 599599 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream0-00006.m4s.tmp' for writing
    [mp4 @ 0x55b464c425c0] Application provided duration: -8 / timestamp: 599599 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream1-00005.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00006.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'out.mpd.tmp' for writing95 bitrate=N/A speed=   1x    
    [mp4 @ 0x55b464c3d840] Application provided duration: -8 / timestamp: 719719 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream0-00007.m4s.tmp' for writing
    [mp4 @ 0x55b464c425c0] Application provided duration: -8 / timestamp: 719719 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream1-00006.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00007.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'out.mpd.tmp' for writing53 bitrate=N/A speed=   1x    
    [mp4 @ 0x55b464c3d840] Application provided duration: -8 / timestamp: 839839 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream0-00008.m4s.tmp' for writing
    [mp4 @ 0x55b464c425c0] Application provided duration: -8 / timestamp: 839839 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream1-00007.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00008.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'out.mpd.tmp' for writing59 bitrate=N/A speed=   1x    
    [mp4 @ 0x55b464c3d840] Application provided duration: -8 / timestamp: 959959 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream0-00009.m4s.tmp' for writing
    [mp4 @ 0x55b464c425c0] Application provided duration: -8 / timestamp: 959959 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream1-00008.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00009.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'out.mpd.tmp' for writing66 bitrate=N/A speed=   1x    
    [mp4 @ 0x55b464c3d840] Application provided duration: -8 / timestamp: 1080079 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream0-00010.m4s.tmp' for writing
    [mp4 @ 0x55b464c425c0] Application provided duration: -8 / timestamp: 1080079 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream1-00009.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00010.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'out.mpd.tmp' for writing73 bitrate=N/A speed=   1x    
    [mp4 @ 0x55b464c3d840] Application provided duration: -8 / timestamp: 1200199 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream0-00011.m4s.tmp' for writing
    [mp4 @ 0x55b464c425c0] Application provided duration: -8 / timestamp: 1200199 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream1-00010.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00011.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'out.mpd.tmp' for writing82 bitrate=N/A speed=   1x    
    [mp4 @ 0x55b464c3d840] Application provided duration: -8 / timestamp: 1320319 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream0-00012.m4s.tmp' for writing
    [mp4 @ 0x55b464c425c0] Application provided duration: -8 / timestamp: 1320319 is out of range for mov/mp4 format
    [dash @ 0x55b464bb1240] Opening 'chunk-stream1-00011.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00012.m4s.tmp' for writing
    [dash @ 0x55b464bb1240] Opening 'out.mpd.tmp' for writing90 bitrate=N/A speed=   1x    
    ...
       [mp4 @ 0x55b464c425c0] Application provided duration: -8 / timestamp: 3962959 is out of range for mov/mp4 format
       [dash @ 0x55b464bb1240] Opening 'chunk-stream1-00033.m4s.tmp' for writing
       [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00034.m4s.tmp' for writing
       [dash @ 0x55b464bb1240] Opening 'out.mpd.tmp' for writing06 bitrate=N/A speed=   1x    
       [mp4 @ 0x55b464c3d840] Application provided duration: -8 / timestamp: 4083079 is out of range for mov/mp4 format
       [dash @ 0x55b464bb1240] Opening 'chunk-stream0-00035.m4s.tmp' for writing
       [mp4 @ 0x55b464c425c0] Application provided duration: -8 / timestamp: 4083079 is out of range for mov/mp4 format
       [dash @ 0x55b464bb1240] Opening 'chunk-stream1-00034.m4s.tmp' for writing
       [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00035.m4s.tmp' for writing
       [dash @ 0x55b464bb1240] Opening 'out.mpd.tmp' for writing10 bitrate=N/A speed=   1x    
       [mp4 @ 0x55b464c3d840] Application provided duration: -8 / timestamp: 4203199 is out of range for mov/mp4 format
       [dash @ 0x55b464bb1240] Opening 'chunk-stream0-00036.m4s.tmp' for writing
       [mp4 @ 0x55b464c425c0] Application provided duration: -8 / timestamp: 4203199 is out of range for mov/mp4 format
       [dash @ 0x55b464bb1240] Opening 'chunk-stream1-00035.m4s.tmp' for writing
       [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00036.m4s.tmp' for writing
       [dash @ 0x55b464bb1240] Opening 'out.mpd.tmp' for writing67 bitrate=N/A speed=   1x    
       [mp4 @ 0x55b464c3d840] Application provided duration: -8 / timestamp: 4323319 is out of range for mov/mp4 format
       [dash @ 0x55b464bb1240] Opening 'chunk-stream0-00037.m4s.tmp' for writing
       [mp4 @ 0x55b464c425c0] Application provided duration: -8 / timestamp: 4323319 is out of range for mov/mp4 format
       [dash @ 0x55b464bb1240] Opening 'chunk-stream1-00036.m4s.tmp' for writing
       [dash @ 0x55b464bb1240] Opening 'chunk-stream2-00037.m4s.tmp' for writing
       [dash @ 0x55b464bb1240] Opening 'out.mpd.tmp' for writing18 bitrate=N/A speed=   1x    
       frame= 4350 fps= 24 q=-1.0 Lq=-1.0 size=N/A time=00:03:01.55 bitrate=N/A speed=   1x    
       video:138926kB audio:5621kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
  • ffmpeg encoded hls makes audio and video progressively out of sync

    21 septembre 2020, par eschie

    When trying to encoding a source .mp4 to multiple bitrates and sizes for adaptive HLSv3 playback the resulting audio and video become progressively out of sync. When scrubbing to a later point it seems to reset, and stay in sync.

    &#xA;&#xA;

    I'm on the latest ffmpeg 4.2.1 via homebrew-ffmpeg, with the libfdk-aac codec. Note, this was also occurring with ffmpeg 4.1.

    &#xA;&#xA;

    ffmpeg version 4.2.1 Copyright (c) 2000-2019 the FFmpeg developers&#xA;  built with Apple LLVM version 9.0.0 (clang-900.0.39.2)&#xA;  configuration: --prefix=/usr/local/Cellar/ffmpeg/4.2.1-with-options_1 --enable-shared --cc=clang --host-cflags= --host-ldflags= --enable-gpl --enable-libaom --enable-libmp3lame --enable-libopus --enable-libsnappy --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --disable-libjack --disable-indev=jack --enable-opencl --enable-videotoolbox --disable-htmlpages --enable-libfdk-aac --enable-nonfree&#xA;  libavutil      56. 31.100 / 56. 31.100&#xA;  libavcodec     58. 54.100 / 58. 54.100&#xA;  libavformat    58. 29.100 / 58. 29.100&#xA;  libavdevice    58.  8.100 / 58.  8.100&#xA;  libavfilter     7. 57.100 /  7. 57.100&#xA;  libswscale      5.  5.100 /  5.  5.100&#xA;  libswresample   3.  5.100 /  3.  5.100&#xA;  libpostproc    55.  5.100 / 55.  5.100&#xA;

    &#xA;&#xA;

    The audio and video streams are marginally off, would that cause this problem ?

    &#xA;&#xA;

    ffprobe -v error -select_streams v:0 -show_entries stream=duration -of default=noprint_wrappers=1:nokey=1 INPUT_FILE.mp4&#xA;80.480400

    &#xA;&#xA;

    ffprobe -v error -select_streams a:0 -show_entries stream=duration -of default=noprint_wrappers=1:nokey=1 INPUT_FILE.mp4&#xA;80.469333

    &#xA;&#xA;

    Here is some metadata on the source file :

    &#xA;&#xA;

    General&#xA;Complete name                            : INPUT_VIDEO.mp4&#xA;Format                                   : MPEG-4&#xA;Format profile                           : Base Media / Version 2&#xA;Codec ID                                 : mp42 (mp42/mp41)&#xA;File size                                : 236 MiB&#xA;Duration                                 : 1 min 21 s&#xA;Overall bit rate mode                    : Variable&#xA;Overall bit rate                         : 24.2 Mb/s&#xA;Encoded date                             : UTC 2019-08-27 22:13:53&#xA;Tagged date                              : UTC 2019-08-27 22:15:15&#xA;TIM                                      : 00;00;00;00&#xA;TSC                                      : 30000&#xA;TSZ                                      : 1001&#xA;&#xA;Video&#xA;ID                                       : 1&#xA;Format                                   : AVC&#xA;Format/Info                              : Advanced Video Codec&#xA;Format profile                           : Main@L4.1&#xA;Format settings                          : CABAC / 2 Ref Frames&#xA;Format settings, CABAC                   : Yes&#xA;Format settings, Reference frames        : 2 frames&#xA;Codec ID                                 : avc1&#xA;Codec ID/Info                            : Advanced Video Coding&#xA;Duration                                 : 1 min 21 s&#xA;Bit rate mode                            : Variable&#xA;Bit rate                                 : 23.8 Mb/s&#xA;Maximum bit rate                         : 768 kb/s&#xA;Width                                    : 1 920 pixels&#xA;Height                                   : 1 080 pixels&#xA;Display aspect ratio                     : 16:9&#xA;Frame rate mode                          : Constant&#xA;Frame rate                               : 29.970 (30000/1001) FPS&#xA;Color space                              : YUV&#xA;Chroma subsampling                       : 4:2:0&#xA;Bit depth                                : 8 bits&#xA;Scan type                                : Progressive&#xA;Bits/(Pixel*Frame)                       : 0.383&#xA;Stream size                              : 233 MiB (99%)&#xA;Language                                 : English&#xA;Encoded date                             : UTC 2019-08-27 22:13:53&#xA;Tagged date                              : UTC 2019-08-27 22:13:53&#xA;Color range                              : Limited&#xA;Color primaries                          : BT.709&#xA;Transfer characteristics                 : BT.709&#xA;Matrix coefficients                      : BT.709&#xA;Codec configuration box                  : avcC&#xA;&#xA;Audio&#xA;ID                                       : 2&#xA;Format                                   : AAC LC&#xA;Format/Info                              : Advanced Audio Codec Low Complexity&#xA;Codec ID                                 : mp4a-40-2&#xA;Duration                                 : 1 min 21 s&#xA;Source duration                          : 1 min 21 s&#xA;Bit rate mode                            : Constant&#xA;Bit rate                                 : 317 kb/s&#xA;Channel(s)                               : 2 channels&#xA;Channel layout                           : L R&#xA;Sampling rate                            : 48.0 kHz&#xA;Frame rate                               : 46.875 FPS (1024 SPF)&#xA;Compression mode                         : Lossy&#xA;Stream size                              : 3.10 MiB (1%)&#xA;Source stream size                       : 3.10 MiB (1%)&#xA;Language                                 : English&#xA;Encoded date                             : UTC 2019-08-27 22:13:53&#xA;Tagged date                              : UTC 2019-08-27 22:13:53&#xA;

    &#xA;&#xA;

    And the encoding command :

    &#xA;&#xA;

    ffmpeg \&#xA;-i INPUT_VIDEO \&#xA;-dn \&#xA;-sn \&#xA;-filter_complex \&#xA;"[0:v]fps=fps=24000/1001, \&#xA;setpts=(PTS-STARTPTS), \&#xA;split=12[vsplit1][vsplit2][vsplit3][vsplit4][vsplit5][vsplit6][vsplit7][vsplit8][vsplit9][vsplit10][vsplit11][vsplit12]; \&#xA;[vsplit1]scale=-1:1080[video_1080_4.1]; \&#xA;[vsplit2]scale=-1:720[video_720_4.1]; \&#xA;[vsplit3]scale=-1:720[video_720_3.1]; \&#xA;[vsplit4]scale=-1:540[video_540_3.1]; \&#xA;[vsplit5]scale=-1:432[video_432_3.1]; \&#xA;[vsplit6]scale=-1:270[video_270_3.0]; \&#xA;[vsplit7]scale=-1:270[video_270_3.1]; \&#xA;[vsplit8]scale=-1:144[video_144_4.1]; \&#xA;[vsplit9]scale=-1:144[video_144_3.0]; \&#xA;[vsplit10]scale=1920:1080[base_1080]; \&#xA;[vsplit11]scale=1280:720[base_720]; \&#xA;[vsplit12]scale=640:360[base_360]" \&#xA;\&#xA;-map "[video_1080_4.1]" \&#xA;-r:v:0 "24000/1001" \&#xA;-c:v:0 "libx264" \&#xA;-x264-params:0 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \&#xA;-preset:v:0 "slow" \&#xA;-profile:v:0 "high" \&#xA;-level:v:0 "4.1" \&#xA;-refs:v:0 "2" \&#xA;-b-pyramid:v:0 "strict" \&#xA;-tune:v:0 "film" \&#xA;-b:v:0 "4800000" \&#xA;-maxrate:v:0 "4800000" \&#xA;-bufsize:v:0 "6*4800000/8" \&#xA;-vsync:v:0 "cfr" \&#xA;-bsf:v:0 "h264_metadata=fixed_frame_rate_flag=1" \&#xA;\&#xA;-map "[video_720_4.1]" \&#xA;-r:v:1 "24000/1001" \&#xA;-c:v:1 "libx264" \&#xA;-x264-params:1 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \&#xA;-preset:v:1 "slow" \&#xA;-profile:v:1 "main" \&#xA;-level:v:1 "4.1" \&#xA;-refs:v:1 "2" \&#xA;-b-pyramid:v:1 "strict" \&#xA;-tune:v:1 "film" \&#xA;-b:v:1 "3200000" \&#xA;-maxrate:v:1 "3200000" \&#xA;-bufsize:v:1 "6*3200000/8" \&#xA;-vsync:v:1 "cfr" \&#xA;-bsf:v:1 "h264_metadata=fixed_frame_rate_flag=1" \&#xA;\&#xA;-map "[video_720_3.1]" \&#xA;-r:v:2 "24000/1001" \&#xA;-c:v:2 "libx264" \&#xA;-x264-params:2 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \&#xA;-preset:v:2 "slow" \&#xA;-profile:v:2 "main" \&#xA;-level:v:2 "3.1" \&#xA;-refs:v:2 "2" \&#xA;-b-pyramid:v:2 "strict" \&#xA;-tune:v:2 "film" \&#xA;-b:v:2 "2200000" \&#xA;-maxrate:v:2 "2200000" \&#xA;-bufsize:v:2 "6*2200000/8" \&#xA;-vsync:v:2 "cfr" \&#xA;-bsf:v:2 "h264_metadata=fixed_frame_rate_flag=1" \&#xA;\&#xA;-map "[video_540_3.1]" \&#xA;-r:v:3 "24000/1001" \&#xA;-c:v:3 "libx264" \&#xA;-x264-params:3 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \&#xA;-preset:v:3 "slow" \&#xA;-profile:v:3 "main" \&#xA;-level:v:3 "3.1" \&#xA;-refs:v:3 "2" \&#xA;-b-pyramid:v:3 "strict" \&#xA;-tune:v:3 "film" \&#xA;-b:v:3 "1400000" \&#xA;-maxrate:v:3 "1400000" \&#xA;-bufsize:v:3 "6*1400000/8" \&#xA;-vsync:v:3 "cfr" \&#xA;-bsf:v:3 "h264_metadata=fixed_frame_rate_flag=1" \&#xA;\&#xA;-map "[video_432_3.1]" \&#xA;-r:v:4 "24000/1001" \&#xA;-c:v:4 "libx264" \&#xA;-x264-params:4 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \&#xA;-preset:v:4 "slow" \&#xA;-profile:v:4 "main" \&#xA;-level:v:4 "3.1" \&#xA;-refs:v:4 "2" \&#xA;-b-pyramid:v:4 "strict" \&#xA;-tune:v:4 "film" \&#xA;-b:v:4 "900000" \&#xA;-maxrate:v:4 "900000" \&#xA;-bufsize:v:4 "6*900000/8" \&#xA;-vsync:v:4 "cfr" \&#xA;-bsf:v:4 "h264_metadata=fixed_frame_rate_flag=1" \&#xA;\&#xA;-map "[video_270_3.0]" \&#xA;-r:v:5 "24000/1001" \&#xA;-c:v:5 "libx264" \&#xA;-x264-params:5 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \&#xA;-preset:v:5 "slow" \&#xA;-profile:v:5 "baseline" \&#xA;-level:v:5 "3.0" \&#xA;-refs:v:5 "2" \&#xA;-b-pyramid:v:5 "strict" \&#xA;-tune:v:5 "film" \&#xA;-b:v:5 "400000" \&#xA;-maxrate:v:5 "400000" \&#xA;-bufsize:v:5 "6*400000/8" \&#xA;-vsync:v:5 "cfr" \&#xA;-bsf:v:5 "h264_metadata=fixed_frame_rate_flag=1" \&#xA;\&#xA;-map "[video_270_3.1]" \&#xA;-r:v:6 "24000/1001" \&#xA;-c:v:6 "libx264" \&#xA;-x264-params:6 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \&#xA;-preset:v:6 "slow" \&#xA;-profile:v:6 "main" \&#xA;-level:v:6 "3.1" \&#xA;-refs:v:6 "2" \&#xA;-b-pyramid:v:6 "strict" \&#xA;-tune:v:6 "film" \&#xA;-b:v:6 "200000" \&#xA;-maxrate:v:6 "200000" \&#xA;-bufsize:v:6 "6*200000/8" \&#xA;-vsync:v:6 "cfr" \&#xA;-bsf:v:6 "h264_metadata=fixed_frame_rate_flag=1" \&#xA;\&#xA;-map "[video_144_4.1]" \&#xA;-r:v:7 "24000/1001" \&#xA;-c:v:7 "libx264" \&#xA;-x264-params:7 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \&#xA;-preset:v:7 "slow" \&#xA;-profile:v:7 "high" \&#xA;-level:v:7 "4.1" \&#xA;-refs:v:7 "2" \&#xA;-b-pyramid:v:7 "strict" \&#xA;-tune:v:7 "film" \&#xA;-b:v:7 "64000" \&#xA;-maxrate:v:7 "64000" \&#xA;-bufsize:v:7 "6*64000/8" \&#xA;-vsync:v:7 "cfr" \&#xA;-bsf:v:7 "h264_metadata=fixed_frame_rate_flag=1" \&#xA;\&#xA;-map "[video_144_3.0]" \&#xA;-r:v:8 "24000/1001" \&#xA;-c:v:8 "libx264" \&#xA;-x264-params:8 "keyint=144:min-keyint=144:scenecut=0:open_gop=0" \&#xA;-preset:v:8 "slow" \&#xA;-profile:v:8 "baseline" \&#xA;-level:v:8 "3.0" \&#xA;-refs:v:8 "2" \&#xA;-b-pyramid:v:8 "strict" \&#xA;-tune:v:8 "film" \&#xA;-b:v:8 "56000" \&#xA;-maxrate:v:8 "56000" \&#xA;-bufsize:v:8 "6*56000/8" \&#xA;-vsync:v:8 "cfr" \&#xA;-bsf:v:8 "h264_metadata=fixed_frame_rate_flag=1" \&#xA;\&#xA;-map "[base_1080]" \&#xA;-c:v:9 "libx264" \&#xA;-preset:v:9 "slow" \&#xA;\&#xA;-map "[base_720]" \&#xA;-c:v:10 "libx264" \&#xA;-preset:v:10 "slow" \&#xA;\&#xA;-map "[base_360]" \&#xA;-c:v:11 "libx264" \&#xA;-preset:v:11 "slow" \&#xA;\&#xA;-map a:0 -map a:0 -map a:0 -map a:0 -map a:0 -map a:0 -map a:0 -map a:0 -map a:0 -map a:0 -map a:0 -map a:0 \&#xA;-c:a "libfdk_aac" \&#xA;-ar "48000" \&#xA;-ab "128k" \&#xA;-af "aresample=async=1:min_hard_comp=0.100000:first_pts=0" \&#xA;\&#xA;-f tee \&#xA;-flags &#x2B;global_header \&#xA;"[select=\&#x27;v:0,a:0,v:1,a:1,v:2,a:2,v:3,a:3,v:4,a:4,v:5,a:5,v:6,a:6,v:7,a:7,v:8,a:8\&#x27;:f=hls:hls_flags=discont_start&#x2B;temp_file:hls_time=6:hls_list_size=0:var_stream_map=\&#x27;v:0,a:0 v:1,a:1 v:2,a:2 v:3,a:3 v:4,a:4 v:5,a:5 v:6,a:6 v:7,a:7 v:8,a:8\&#x27;:master_pl_name=playlist.m3u8:hls_segment_filename=INPUT_VIDEO__%v_%03d.ts]INPUT_VIDEO/out_%v.m3u8|[select=\&#x27;v:9,a:9\&#x27;:f=mp4:movflags=&#x2B;faststart]INPUT_VIDEO/large-1920-1080.mp4|[select=\&#x27;v:10,a:10\&#x27;:f=mp4:movflags=&#x2B;faststart]INPUT_VIDEO/med-1280-720.mp4|[select=\&#x27;v:11,a:11\&#x27;:f=mp4:movflags=&#x2B;faststart]INPUT_VIDEO/sm-640-360.mp4"&#xA;

    &#xA;