[FFmpeg-trac] #8469(ffmpeg:new): HLS muxer creates variant playlists with wrong segment lengths when x264 baseline profile is used
FFmpeg
trac at avcodec.org
Tue Jan 14 01:51:22 EET 2020
#8469: HLS muxer creates variant playlists with wrong segment lengths when x264
baseline profile is used
-------------------------------------+-------------------------------------
Reporter: pmiller | Type: defect
Status: new | Priority: normal
Component: ffmpeg | Version: 4.2
Keywords: hls, | Blocked By:
profile:v baseline, segment |
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Summary of the bug:
When baseline profile is used in a hls muxer, the segment lengths for the
variant are wrong.
The other playlists have correct lengths (=6)
How to reproduce:
{{{
% ffmpeg -y -i bigbuckbunny.mp4 \
-report -t 30 -ac 2 \
-flags +global_header+cgop \
-movflags faststart \
-lavfi
'[0:v]split=3[v0][v01][v02];[v01]scale=w=trunc(in_w/8)*6:h=trunc(in_h/8)*6[v1];[v02]scale=w=trunc(in_w/8)*4:h=trunc(in_h/8)*4[v2]'
\
-map '[v0]' -map 0:a:0 -map '[v1]' -map 0:a:0 -map '[v2]' -map 0:a:0 \
-r:v:0 30 -force_key_frames:v:0 "expr:eq(mod(n,60),0)" \
-c:v:0 libx264 \
-x264opts:v:0 rc-lookahead=60:keyint=120:min-keyint=60:no-open-gop=1 \
-pix_fmt:v:0 yuv420p \
-profile:v:0 high \
-b:v:0 3000k -minrate:v:0 3000k -maxrate:v:0 3300k -bufsize:v:0 3M \
-r:v:1 30 -force_key_frames:v:1 "expr:eq(mod(n,60),0)" \
-c:v:1 libx264 \
-x264opts:v:1 rc-lookahead=60:keyint=120:min-keyint=60:no-open-gop=1 \
-pix_fmt:v:1 yuv420p \
-profile:v:1 main \
-b:v:1 2000k -minrate:v:1 2000k -maxrate:v:1 2200k -bufsize:v:1 2M \
-r:v:2 15 -force_key_frames:v:2 "expr:eq(mod(n,30),0)" \
-c:v:2 libx264 \
-x264opts:v:2 rc-lookahead=30:keyint=60:min-keyint=30:no-open-gop=1 \
-pix_fmt:v:2 yuv420p \
-profile:v:2 baseline \
-b:v:2 800k -minrate:v:2 800k -maxrate:v:2 880k -bufsize:v:2 800k \
-b:a:0 96k -b:a:1 48k -b:a:2 32k \
-f hls -hls_segment_type fmp4 \
-var_stream_map 'v:0,a:0 v:1,a:1 v:2,a:2' \
-hls_segment_filename 'segments_%v.mp4' \
-master_pl_name master.m3u8 \
-hls_time 6 -hls_list_size 0 \
-hls_flags
single_file+discont_start+program_date_time+independent_segments+round_durations
\ 'variant_%v.m3u8'
}}}
>cat variant_2.m3u8
#EXTM3U
#EXT-X-VERSION:7
#EXT-X-TARGETDURATION:8
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-DISCONTINUITY
#EXT-X-INDEPENDENT-SEGMENTS
#EXT-X-MAP:URI="segments_2.mp4",BYTERANGE="1630 at 0"
#EXTINF:8,
#EXT-X-BYTERANGE:592264 at 1630
#EXT-X-PROGRAM-DATE-TIME:2020-01-13T18:44:47.000-0500
segments_2.mp4
#EXTINF:6,
#EXT-X-BYTERANGE:640195 at 593894
#EXT-X-PROGRAM-DATE-TIME:2020-01-13T18:44:55.000-0500
segments_2.mp4
#EXTINF:6,
#EXT-X-BYTERANGE:639175 at 1234089
#EXT-X-PROGRAM-DATE-TIME:2020-01-13T18:45:01.000-0500
segments_2.mp4
#EXTINF:6,
#EXT-X-BYTERANGE:496716 at 1873264
#EXT-X-PROGRAM-DATE-TIME:2020-01-13T18:45:07.000-0500
segments_2.mp4
#EXTINF:4,
#EXT-X-BYTERANGE:397751 at 2369980
#EXT-X-PROGRAM-DATE-TIME:2020-01-13T18:45:13.000-0500
segments_2.mp4
#EXT-X-ENDLIST
--
Ticket URL: <https://trac.ffmpeg.org/ticket/8469>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list