[FFmpeg-trac] #7798(undetermined:new): hls muxer often generates segments shorter than -hls_time

FFmpeg trac at avcodec.org
Sat Mar 16 14:00:34 EET 2019


#7798: hls muxer often generates segments shorter than -hls_time
-------------------------------------+-------------------------------------
             Reporter:  JoshuaWalsh  |                    Owner:
                 Type:  defect       |                   Status:  new
             Priority:  normal       |                Component:
                                     |  undetermined
              Version:  git-master   |               Resolution:
             Keywords:  hls          |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------

Comment (by JoshuaWalsh):

 Thanks for the feedback. I have reproduced the issue with more minimal
 settings. It turns out yadif, libfdk, piped input, and stream mapping were
 all extraneous.

 {{{
 $ ffmpeg -nostdin -i ./4minutetest.mp4 -vcodec libx264 -preset veryfast
 -acodec aac -b:a 128k -hls_init_time 5 -hls_time 5 -hls_list_size 5
 -hls_allow_cache 0 ./output/index.m3u8
 ffmpeg version 3.4.4-0ubuntu0.18.04.1 Copyright (c) 2000-2018 the FFmpeg
 developers
   built with gcc 7 (Ubuntu 7.3.0-16ubuntu3)
   configuration: --prefix=/usr --extra-version=0ubuntu0.18.04.1
 --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-libflite --enable-libfontconfig --enable-
 libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-
 libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt
 --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg
 --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-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi
 --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-
 libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint
 --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
   libavutil      55. 78.100 / 55. 78.100
   libavcodec     57.107.100 / 57.107.100
   libavformat    57. 83.100 / 57. 83.100
   libavdevice    57. 10.100 / 57. 10.100
   libavfilter     6.107.100 /  6.107.100
   libavresample   3.  7.  0 /  3.  7.  0
   libswscale      4.  8.100 /  4.  8.100
   libswresample   2.  9.100 /  2.  9.100
   libpostproc    54.  7.100 / 54.  7.100
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from './4minutetest.mp4':
   Metadata:
     major_brand     : isom
     minor_version   : 512
     compatible_brands: isomiso2avc1mp41
     encoder         : Lavf57.83.100
   Duration: 00:04:00.02, start: 0.000000, bitrate: 5381 kb/s
     Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p,
 1920x1080 [SAR 1:1 DAR 16:9], 5033 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc
 (default)
     Metadata:
       handler_name    : VideoHandler
     Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, 5.1,
 fltp, 342 kb/s (default)
     Metadata:
       handler_name    : SoundHandler
 Stream mapping:
   Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
   Stream #0:1 -> #0:1 (aac (native) -> aac (native))
 [libx264 @ 0x7fffeb49a300] using SAR=1/1
 [libx264 @ 0x7fffeb49a300] using cpu capabilities: MMX2 SSE2Fast SSSE3
 SSE4.2 AVX FMA3 BMI2 AVX2
 [libx264 @ 0x7fffeb49a300] profile High, level 4.0
 [libx264 @ 0x7fffeb49a300] 264 - core 152 r2854 e9a5903 - H.264/MPEG-4 AVC
 codec - Copyleft 2003-2017 - http://www.videolan.org/x264.html - options:
 cabac=1 ref=1 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=2 psy=1
 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=1
 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=24
 lookahead_threads=8 sliced_threads=0 nr=0 decimate=1 interlaced=0
 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1
 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=1 keyint=250 keyint_min=25
 scenecut=40 intra_refresh=0 rc_lookahead=10 rc=crf mbtree=1 crf=23.0
 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
 [hls @ 0x7fffeb48e2e0] Opening './output/index0.ts' for writing
 Output #0, hls, to './output/index.m3u8':
   Metadata:
     major_brand     : isom
     minor_version   : 512
     compatible_brands: isomiso2avc1mp41
     encoder         : Lavf57.83.100
     Stream #0:0(und): Video: h264 (libx264), yuv420p, 1920x1080 [SAR 1:1
 DAR 16:9], q=-1--1, 25 fps, 90k tbn, 25 tbc (default)
     Metadata:
       handler_name    : VideoHandler
       encoder         : Lavc57.107.100 libx264
     Side data:
       cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
     Stream #0:1(eng): Audio: aac (LC), 48000 Hz, 5.1, fltp, 128 kb/s
 (default)
     Metadata:
       handler_name    : SoundHandler
       encoder         : Lavc57.107.100 aac
 [hls @ 0x7fffeb48e2e0] Opening './output/index1.ts' for writingA
 speed=4.66x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index2.ts' for writingA
 speed=5.18x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index3.ts' for writingA speed=
 5.3x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index4.ts' for writingA
 speed=5.37x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index5.ts' for writingA
 speed=5.35x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index6.ts' for writingA
 speed=5.96x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index7.ts' for writingA speed=
 6.1x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index8.ts' for writingA
 speed=5.99x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index9.ts' for writingA
 speed=5.88x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index10.ts' for writing
 speed=5.78x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index11.ts' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index12.ts' for writing
 speed=5.81x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index13.ts' for writing speed=
 5.8x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index14.ts' for writing
 speed=5.86x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index15.ts' for writing
 speed=5.95x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index16.ts' for writing
 speed=5.92x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index17.ts' for writing
 speed=5.95x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index18.ts' for writing
 speed=6.02x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index19.ts' for writing
 speed=6.07x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index20.ts' for writing
 speed=6.08x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index21.ts' for writing
 speed=6.08x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index22.ts' for writing
 speed=6.14x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index23.ts' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index24.ts' for writing
 speed=6.23x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index25.ts' for writing
 speed=6.26x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index26.ts' for writing
 speed=6.26x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index27.ts' for writing
 speed=6.23x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index28.ts' for writing
 speed=6.18x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index29.ts' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index30.ts' for writing
 speed=6.17x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index31.ts' for writing
 speed=6.21x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index32.ts' for writing
 speed=6.26x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index33.ts' for writing
 speed=6.27x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index34.ts' for writing
 speed=6.26x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index35.ts' for writing
 speed=6.24x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index36.ts' for writing
 speed=6.17x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index37.ts' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index38.ts' for writing
 speed=6.17x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index39.ts' for writing
 speed=6.23x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index40.ts' for writing speed=
 6.2x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index41.ts' for writing
 speed=6.17x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index42.ts' for writing
 speed=6.15x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index43.ts' for writing
 speed=6.17x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index44.ts' for writing
 speed=6.16x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index45.ts' for writing
 speed=6.16x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index46.ts' for writing
 speed=6.19x
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writing
 [hls @ 0x7fffeb48e2e0] Opening './output/index.m3u8.tmp' for writinged=
 6.2x
 frame= 6000 fps=155 q=-1.0 Lsize=N/A time=00:04:00.00 bitrate=N/A
 speed=6.18x
 video:119576kB audio:3763kB subtitle:0kB other streams:0kB global
 headers:0kB muxing overhead: unknown
 [libx264 @ 0x7fffeb49a300] frame I:59    Avg QP:20.09  size:115507
 [libx264 @ 0x7fffeb49a300] frame P:2012  Avg QP:22.57  size: 36698
 [libx264 @ 0x7fffeb49a300] frame B:3929  Avg QP:24.85  size: 10637
 [libx264 @ 0x7fffeb49a300] consecutive B-frames:  3.6% 25.9%  3.6% 66.8%
 [libx264 @ 0x7fffeb49a300] mb I  I16..4: 14.8% 57.1% 28.1%
 [libx264 @ 0x7fffeb49a300] mb P  I16..4:  9.1% 12.5%  1.6%  P16..4: 28.2%
 12.4%  5.6%  0.0%  0.0%    skip:30.7%
 [libx264 @ 0x7fffeb49a300] mb B  I16..4:  1.6%  1.6%  0.2%  B16..8: 14.2%
 4.3%  0.6%  direct: 4.2%  skip:73.3%  L0:38.5% L1:44.7% BI:16.8%
 [libx264 @ 0x7fffeb49a300] 8x8 transform intra:52.7% inter:61.3%
 [libx264 @ 0x7fffeb49a300] coded y,uvDC,uvAC intra: 43.5% 35.7% 4.2%
 inter: 8.5% 8.9% 0.2%
 [libx264 @ 0x7fffeb49a300] i16 v,h,dc,p: 36% 43% 15%  7%
 [libx264 @ 0x7fffeb49a300] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 25% 32% 25%  3%
 3%  3%  3%  3%  4%
 [libx264 @ 0x7fffeb49a300] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 12% 67%  7%  2%
 2%  2%  3%  2%  3%
 [libx264 @ 0x7fffeb49a300] i8c dc,h,v,p: 59% 19% 19%  3%
 [libx264 @ 0x7fffeb49a300] Weighted P-Frames: Y:3.1% UV:1.7%
 [libx264 @ 0x7fffeb49a300] kb/s:4081.50
 [aac @ 0x7fffeb48c380] Qavg: 228.645
 }}}

 Resulting segments are between 2 and 12 seconds long. I will attach a
 -report log file shortly.

--
Ticket URL: <https://trac.ffmpeg.org/ticket/7798#comment:2>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list