Opened 8 years ago
Closed 4 years ago
#5811 closed defect (worksforme)
live_start_index option doesn't work.
Reported by: | smalukav | Owned by: | |
---|---|---|---|
Priority: | normal | Component: | avformat |
Version: | git-master | Keywords: | hls |
Cc: | nick20080808@gmail.com | Blocked By: | |
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
This bug occurs when you try to copy live hls stream from start. ffmpeg has an option to set the segment number where it must start reading.
ffmpeg -h full -live_start_index <int> .D...... segment index to start live streams at (negative values are from the end) (from INT_MIN to INT_MAX) (default -3)
But this option is totally broken, and ffmpeg always starts at the third last segment.
This happens because function select_cur_seq_no in hls.c uses c->live_start_index before ffmpeg sets its value to the specified by user.
Let's look to the call stack:
avformat_open_input --> s->iformat->read_header(s) --> hls_read_header --> pls->cur_seq_no = select_cur_seq_no(c, pls); --> select_cur_seq_no (here options was readed from HLSContext struct).
Because all options changes should occur after avformat_open_input call, there's no way to change this option value.
Looks like somebody tried to fix it and made AVFMT_FLAG_PRIV_OPT flag, which would eliminate s->iformat->read_header call in avformat_open_input. But as of today this flag isn't work (and it is unlikely will be worked in the future).
How to reproduce:
ffmpeg -re -i some_video.mp4 -c copy -hls_time 10 -hls_list_size 0 hls_stream/stream.m3u8 & sleep 100 ffmpeg -i hls_stream/stream.m3u8 -live_start_index 0 new_video.mp4
Despite -live_start_index 0 option, ffmpeg dropped the first few segments.
Change History (15)
comment:1 by , 8 years ago
Keywords: | hls added |
---|---|
Resolution: | → worksforme |
Status: | new → closed |
comment:2 by , 8 years ago
Resolution: | worksforme |
---|---|
Status: | closed → reopened |
Ok, just look what happens when you try to copy live hls stream.
Firstly, create live stream with option -re.
$ /opt/ffmpeg/bin/ffmpeg -re -i http://distribution.bbb3d.renderfarming.net/video/mp4/bbb_sunflower_2160p_60fps_normal.mp4 -c copy -hls_time 10 -hls_list_size 0 hls_stream/stream.m3u8 ffmpeg version N-81495-g11a631d Copyright (c) 2000-2016 the FFmpeg developers built with gcc 4.9.2 (Debian 4.9.2-10) configuration: --extra-cflags=-I/opt/ffmpeg/include --extra-ldflags=-L/opt/ffmpeg/lib --enable-rpath --prefix=/opt/ffmpeg --toolchain=hardened --enable-shared --enable-gpl --enable-nonfree --enable-openssl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libebur128 libavutil 55. 29.100 / 55. 29.100 libavcodec 57. 54.101 / 57. 54.101 libavformat 57. 48.101 / 57. 48.101 libavdevice 57. 0.102 / 57. 0.102 libavfilter 6. 58.100 / 6. 58.100 libswscale 4. 1.100 / 4. 1.100 libswresample 2. 1.100 / 2. 1.100 libpostproc 54. 0.100 / 54. 0.100 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'http://distribution.bbb3d.renderfarming.net/video/mp4/bbb_sunflower_2160p_60fps_normal.mp4': Metadata: major_brand : isom minor_version : 1 compatible_brands: isomavc1 creation_time : 2013-12-17T16:40:26.000000Z title : Big Buck Bunny, Sunflower version artist : Blender Foundation 2008, Janus Bager Kristensen 2013 comment : Creative Commons Attribution 3.0 - http://bbb3d.renderfarming.net genre : Animation composer : Sacha Goedegebure Duration: 00:10:34.53, start: 0.000000, bitrate: 8487 kb/s Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 3840x2160 [SAR 1:1 DAR 16:9], 8002 kb/s, 60 fps, 60 tbr, 60k tbn, 120 tbc (default) Metadata: creation_time : 2013-12-17T16:40:26.000000Z handler_name : GPAC ISO Video Handler Stream #0:1(und): Audio: mp3 (mp4a / 0x6134706D), 48000 Hz, stereo, s16p, 160 kb/s (default) Metadata: creation_time : 2013-12-17T16:40:28.000000Z handler_name : GPAC ISO Audio Handler Stream #0:2(und): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, 5.1(side), fltp, 320 kb/s (default) Metadata: creation_time : 2013-12-17T16:40:28.000000Z handler_name : GPAC ISO Audio Handler Side data: audio service type: main [hls @ 0xea7160] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead. Last message repeated 1 times Output #0, hls, to 'hls_stream/stream.m3u8': Metadata: major_brand : isom minor_version : 1 compatible_brands: isomavc1 composer : Sacha Goedegebure title : Big Buck Bunny, Sunflower version artist : Blender Foundation 2008, Janus Bager Kristensen 2013 comment : Creative Commons Attribution 3.0 - http://bbb3d.renderfarming.net genre : Animation encoder : Lavf57.48.101 Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 3840x2160 [SAR 1:1 DAR 16:9], q=2-31, 8002 kb/s, 60 fps, 60 tbr, 90k tbn, 120 tbc (default) Metadata: creation_time : 2013-12-17T16:40:26.000000Z handler_name : GPAC ISO Video Handler Stream #0:1(und): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, 5.1(side), 320 kb/s (default) Metadata: creation_time : 2013-12-17T16:40:28.000000Z handler_name : GPAC ISO Audio Handler Side data: audio service type: main Stream mapping: Stream #0:0 -> #0:0 (copy) Stream #0:2 -> #0:1 (copy)
Stream created. Wait when ffmpeg transcribe to local live stream a lot of segments.
$ cat hls_stream/stream.m3u8 #EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:13 #EXT-X-MEDIA-SEQUENCE:0 #EXTINF:12.483333, stream0.ts #EXTINF:7.616667, stream1.ts #EXTINF:11.466667, stream2.ts #EXTINF:12.300000, stream3.ts #EXTINF:8.200000, stream4.ts #EXTINF:8.333333, stream5.ts #EXTINF:11.916667, stream6.ts #EXTINF:11.750000, stream7.ts #EXTINF:8.333333, stream8.ts #EXTINF:11.700000, stream9.ts #EXTINF:8.333333, stream10.ts #EXTINF:8.750000, stream11.ts #EXTINF:10.050000, stream12.ts #EXTINF:12.500000, stream13.ts #EXTINF:7.000000, stream14.ts #EXTINF:9.633333, stream15.ts #EXTINF:10.216667, stream16.ts #EXTINF:9.900000, stream17.ts #EXTINF:9.833333, stream18.ts #EXTINF:10.966667, stream19.ts #EXTINF:9.000000, stream20.ts #EXTINF:12.033333, stream21.ts
And now try to copy local stream to new video starting from the first segment.
$ /opt/ffmpeg/bin/ffmpeg -i hls_stream/stream.m3u8 -c copy -live_start_index 0 -v 45 new_video.mp4 ffmpeg version N-81495-g11a631d Copyright (c) 2000-2016 the FFmpeg developers built with gcc 4.9.2 (Debian 4.9.2-10) configuration: --extra-cflags=-I/opt/ffmpeg/include --extra-ldflags=-L/opt/ffmpeg/lib --enable-rpath --prefix=/opt/ffmpeg --toolchain=hardened --enable-shared --enable-gpl --enable-nonfree --enable-openssl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libebur128 libavutil 55. 29.100 / 55. 29.100 libavcodec 57. 54.101 / 57. 54.101 libavformat 57. 48.101 / 57. 48.101 libavdevice 57. 0.102 / 57. 0.102 libavfilter 6. 58.100 / 6. 58.100 libswscale 4. 1.100 / 4. 1.100 libswresample 2. 1.100 / 2. 1.100 libpostproc 54. 0.100 / 54. 0.100 Splitting the commandline. Reading option '-i' ... matched as input file with argument 'hls_stream/stream.m3u8'. Reading option '-c' ... matched as option 'c' (codec name) with argument 'copy'. Reading option '-live_start_index' ... matched as AVOption 'live_start_index' with argument '0'. Reading option '-v' ... matched as option 'v' (set logging level) with argument '99'. Reading option 'new_video.mp4' ... matched as output file. Finished splitting the commandline. Parsing a group of options: global . Applying option v (set logging level) with argument 99. Successfully parsed a group of options. Parsing a group of options: input file hls_stream/stream.m3u8. Successfully parsed a group of options. Opening an input file: hls_stream/stream.m3u8. [hls,applehttp @ 0x1f92820] HLS request for url 'hls_stream/stream19.ts', offset 0, playlist 0 [h264 @ 0x1fb59a0] Reinit context to 3840x2160, pix_fmt: yuv420p Input #0, hls,applehttp, from 'hls_stream/stream.m3u8': Duration: N/A, start: 191.736000, bitrate: N/A Program 0 Metadata: variant_bitrate : 0 Stream #0:0: Video: h264 (High), 1 reference frame ([27][0][0][0] / 0x001B), yuv420p, 3840x2160 [SAR 1:1 DAR 16:9], 60 fps, 60 tbr, 90k tbn, 120 tbc Metadata: variant_bitrate : 0 Stream #0:1: Audio: ac3 ([129][0][0][0] / 0x0081), 48000 Hz, 5.1(side), fltp, 320 kb/s Metadata: variant_bitrate : 0 [mp4 @ 0x1fa62a0] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead. Last message repeated 1 times [mp4 @ 0x1fa62a0] track 1: codec frame size is not set Output #0, mp4, to 'new_video.mp4': Metadata: encoder : Lavf57.48.101 Stream #0:0: Video: h264 (High), 1 reference frame ([33][0][0][0] / 0x0021), yuv420p, 3840x2160 (0x0) [SAR 1:1 DAR 16:9], q=2-31, 60 fps, 60 tbr, 90k tbn, 90k tbc Metadata: variant_bitrate : 0 Stream #0:1: Audio: ac3 ([165][0][0][0] / 0x00A5), 48000 Hz, 5.1(side), 320 kb/s Metadata: variant_bitrate : 0 Stream mapping: Stream #0:0 -> #0:0 (copy) Stream #0:1 -> #0:1 (copy) Press [q] to stop, [?] for help [hls,applehttp @ 0x1f92820] HLS request for url 'hls_stream/stream20.ts', offset 0, playlist 0 [hls,applehttp @ 0x1f92820] HLS request for url 'hls_stream/stream21.ts', offset 0, playlist 0 [hls,applehttp @ 0x1f92820] HLS request for url 'hls_stream/stream22.ts', offset 0, playlist 0 [hls,applehttp @ 0x1f92820] HLS request for url 'hls_stream/stream23.ts', offset 0, playlist 0 [hls,applehttp @ 0x1f92820] HLS request for url 'hls_stream/stream24.ts', offset 0, playlist 0 [hls,applehttp @ 0x1f92820] HLS request for url 'hls_stream/stream25.ts', offset 0, playlist 0 [hls,applehttp @ 0x1f92820] HLS request for url 'hls_stream/stream26.ts', offset 0, playlist 0 [hls,applehttp @ 0x1f92820] HLS request for url 'hls_stream/stream27.ts', offset 0, playlist 0
Despite -live_start_index option, ffmpeg start reading only from segment 19, not the first segment.
And if you change in source code the default option value to 0 (start from the first segment) and recompile ffmpeg, these commands will work as expected.
comment:3 by , 8 years ago
Please test with -f lavfi -i testsrc
as input and -vcodec mpeg1video
as codec so I can try to reproduce.
Is this only reproducible with -vcodec copy
? It was not part of your original command line.
comment:4 by , 8 years ago
$ /opt/ffmpeg/bin/ffmpeg -re -f lavfi -i testsrc -vcodec mpeg1video -hls_time 10 -hls_list_size 0 hls_stream/stream.m3u8 ffmpeg version N-81495-g11a631d Copyright (c) 2000-2016 the FFmpeg developers built with gcc 4.9.2 (Debian 4.9.2-10) configuration: --extra-cflags=-I/opt/ffmpeg/include --extra-ldflags=-L/opt/ffmpeg/lib --enable-rpath --prefix=/opt/ffmpeg --toolchain=hardened --enable-shared --enable-gpl --enable-nonfree --enable-openssl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libebur128 libavutil 55. 29.100 / 55. 29.100 libavcodec 57. 54.101 / 57. 54.101 libavformat 57. 48.101 / 57. 48.101 libavdevice 57. 0.102 / 57. 0.102 libavfilter 6. 58.100 / 6. 58.100 libswscale 4. 1.100 / 4. 1.100 libswresample 2. 1.100 / 2. 1.100 libpostproc 54. 0.100 / 54. 0.100 Input #0, lavfi, from 'testsrc': Duration: N/A, start: 0.000000, bitrate: N/A Stream #0:0: Video: rawvideo (RGB[24] / 0x18424752), rgb24, 320x240 [SAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc [hls @ 0x1010d80] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead. Output #0, hls, to 'hls_stream/stream.m3u8': Metadata: encoder : Lavf57.48.101 Stream #0:0: Video: mpeg1video, yuv420p, 320x240 [SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 25 fps, 90k tbn, 25 tbc Metadata: encoder : Lavc57.54.101 mpeg1video Side data: cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1 Stream mapping: Stream #0:0 -> #0:0 (rawvideo (native) -> mpeg1video (native)) Press [q] to stop, [?] for help
$ cat hls_stream/stream.m3u8 #EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:11 #EXT-X-MEDIA-SEQUENCE:0 #EXTINF:10.080000, stream0.ts #EXTINF:10.080000, stream1.ts #EXTINF:10.080000, stream2.ts #EXTINF:10.080000, stream3.ts #EXTINF:10.080000, stream4.ts #EXTINF:9.600000, stream5.ts #EXTINF:10.080000, stream6.ts #EXTINF:10.080000, stream7.ts #EXTINF:10.080000, stream8.ts #EXTINF:10.080000, stream9.ts #EXTINF:10.080000, stream10.ts #EXTINF:9.600000, stream11.ts #EXTINF:10.080000, stream12.ts #EXTINF:10.080000, stream13.ts #EXTINF:10.080000, stream14.ts
$ /opt/ffmpeg/bin/ffmpeg -i hls_stream/stream.m3u8 -vcodec mpeg1video -live_start_index 0 -v 45 new_video.mp4 ffmpeg version N-81495-g11a631d Copyright (c) 2000-2016 the FFmpeg developers built with gcc 4.9.2 (Debian 4.9.2-10) configuration: --extra-cflags=-I/opt/ffmpeg/include --extra-ldflags=-L/opt/ffmpeg/lib --enable-rpath --prefix=/opt/ffmpeg --toolchain=hardened --enable-shared --enable-gpl --enable-nonfree --enable-openssl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libebur128 libavutil 55. 29.100 / 55. 29.100 libavcodec 57. 54.101 / 57. 54.101 libavformat 57. 48.101 / 57. 48.101 libavdevice 57. 0.102 / 57. 0.102 libavfilter 6. 58.100 / 6. 58.100 libswscale 4. 1.100 / 4. 1.100 libswresample 2. 1.100 / 2. 1.100 libpostproc 54. 0.100 / 54. 0.100 [hls,applehttp @ 0x837820] HLS request for url 'hls_stream/stream12.ts', offset 0, playlist 0 Input #0, hls,applehttp, from 'hls_stream/stream.m3u8': Duration: N/A, start: 121.440000, bitrate: 104857 kb/s Program 0 Metadata: variant_bitrate : 0 Stream #0:0: Video: mpeg1video, 1 reference frame ([2][0][0][0] / 0x0002), yuv420p(tv), 320x240 [SAR 1:1 DAR 4:3], 104857 kb/s, 25 fps, 25 tbr, 90k tbn, 25 tbc Metadata: variant_bitrate : 0 [graph 0 input from stream 0:0 @ 0x837540] w:320 h:240 pixfmt:yuv420p tb:1/90000 fr:25/1 sar:1/1 sws_param:flags=2 [mp4 @ 0x85c420] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead. Output #0, mp4, to 'new_video.mp4': Metadata: encoder : Lavf57.48.101 Stream #0:0: Video: mpeg1video, 1 reference frame (j[0][0][0] / 0x006A), yuv420p, 320x240 [SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 25 fps, 12800 tbn, 25 tbc Metadata: variant_bitrate : 0 encoder : Lavc57.54.101 mpeg1video Side data: cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1 Stream mapping: Stream #0:0 -> #0:0 (mpeg1video (native) -> mpeg1video (native)) Press [q] to stop, [?] for help [hls,applehttp @ 0x837820] HLS request for url 'hls_stream/stream13.ts', offset 0, playlist 0 [hls,applehttp @ 0x837820] HLS request for url 'hls_stream/stream14.ts', offset 0, playlist 0 [hls,applehttp @ 0x837820] HLS request for url 'hls_stream/stream15.ts', offset 0, playlist 0 [hls,applehttp @ 0x837820] HLS request for url 'hls_stream/stream16.ts', offset 0, playlist 0 [hls,applehttp @ 0x837820] HLS request for url 'hls_stream/stream17.ts', offset 0, playlist 0 [hls,applehttp @ 0x837820] HLS request for url 'hls_stream/stream18.ts', offset 0, playlist 0 [hls,applehttp @ 0x837820] HLS request for url 'hls_stream/stream19.ts', offset 0, playlist 0 [hls,applehttp @ 0x837820] HLS request for url 'hls_stream/stream20.ts', offset 0, playlist 0 [hls,applehttp @ 0x837820] HLS request for url 'hls_stream/stream21.ts', offset 0, playlist 0
Is this only reproducible with -vcodec copy?
No, it doesn't depend on the codec. I guess it's only demuxer problem.
comment:5 by , 8 years ago
Resolution: | → worksforme |
---|---|
Status: | reopened → closed |
$ ffmpeg -v 45 -live_start_index 0 -i stream.m3u8 out.avi ffmpeg version N-81473-gb2c6a11 Copyright (c) 2000-2016 the FFmpeg developers built with gcc 4.7 (SUSE Linux) configuration: --enable-gpl libavutil 55. 29.100 / 55. 29.100 libavcodec 57. 54.100 / 57. 54.100 libavformat 57. 48.100 / 57. 48.100 libavdevice 57. 0.102 / 57. 0.102 libavfilter 6. 57.100 / 6. 57.100 libswscale 4. 1.100 / 4. 1.100 libswresample 2. 1.100 / 2. 1.100 libpostproc 54. 0.100 / 54. 0.100 [hls,applehttp @ 0x35c3440] HLS request for url 'stream0.ts', offset 0, playlist 0 Input #0, hls,applehttp, from 'stream.m3u8': Duration: N/A, start: 1.440000, bitrate: 104857 kb/s Program 0 Metadata: variant_bitrate : 0 Stream #0:0: Video: mpeg1video, 1 reference frame ([2][0][0][0] / 0x0002), yuv420p(tv), 320x240 [SAR 1:1 DAR 4:3], 104857 kb/s, 25 fps, 25 tbr, 90k tbn, 25 tbc Metadata: variant_bitrate : 0 [graph 0 input from stream 0:0 @ 0x361baa0] w:320 h:240 pixfmt:yuv420p tb:1/90000 fr:25/1 sar:1/1 sws_param:flags=2 [avi @ 0x35e8d00] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead. Output #0, avi, to 'out.avi': Metadata: ISFT : Lavf57.48.100 Stream #0:0: Video: mpeg4, 1 reference frame (FMP4 / 0x34504D46), yuv420p, 320x240 [SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc Metadata: variant_bitrate : 0 encoder : Lavc57.54.100 mpeg4 Side data: cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1 Stream mapping: Stream #0:0 -> #0:0 (mpeg1video (native) -> mpeg4 (native)) Press [q] to stop, [?] for help [hls,applehttp @ 0x35c3440] HLS request for url 'stream1.ts', offset 0, playlist 0 [hls,applehttp @ 0x35c3440] HLS request for url 'stream2.ts', offset 0, playlist 0 [hls,applehttp @ 0x35c3440] HLS request for url 'stream3.ts', offset 0, playlist 0 [hls,applehttp @ 0x35c3440] HLS request for url 'stream4.ts', offset 0, playlist 0 frame= 1056 fps=0.0 q=9.4 Lsize= 1363kB time=00:00:42.24 bitrate= 264.3kbits/s speed= 140x video:1332kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 2.320622% Input file #0 (stream.m3u8): Input stream #0:0 (video): 1057 packets read (1382348 bytes); 1057 frames decoded; Total: 1057 packets (1382348 bytes) demuxed Output file #0 (out.avi): Output stream #0:0 (video): 1056 frames encoded; 1056 packets muxed (1363729 bytes); Total: 1056 packets (1363729 bytes) muxed
$ ffmpeg -v 45 -live_start_index 11 -i stream.m3u8 out.avi ffmpeg version N-81473-gb2c6a11 Copyright (c) 2000-2016 the FFmpeg developers built with gcc 4.7 (SUSE Linux) configuration: --enable-gpl libavutil 55. 29.100 / 55. 29.100 libavcodec 57. 54.100 / 57. 54.100 libavformat 57. 48.100 / 57. 48.100 libavdevice 57. 0.102 / 57. 0.102 libavfilter 6. 57.100 / 6. 57.100 libswscale 4. 1.100 / 4. 1.100 libswresample 2. 1.100 / 2. 1.100 libpostproc 54. 0.100 / 54. 0.100 [hls,applehttp @ 0x2be1440] HLS request for url 'stream11.ts', offset 0, playlist 0 Input #0, hls,applehttp, from 'stream.m3u8': Duration: N/A, start: 111.840000, bitrate: 104857 kb/s Program 0 Metadata: variant_bitrate : 0 Stream #0:0: Video: mpeg1video, 1 reference frame ([2][0][0][0] / 0x0002), yuv420p(tv), 320x240 [SAR 1:1 DAR 4:3], 104857 kb/s, 25 fps, 25 tbr, 90k tbn, 25 tbc Metadata: variant_bitrate : 0 [graph 0 input from stream 0:0 @ 0x2bf6280] w:320 h:240 pixfmt:yuv420p tb:1/90000 fr:25/1 sar:1/1 sws_param:flags=2 [avi @ 0x2bf2640] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead. Output #0, avi, to 'out.avi': Metadata: ISFT : Lavf57.48.100 Stream #0:0: Video: mpeg4, 1 reference frame (FMP4 / 0x34504D46), yuv420p, 320x240 [SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc Metadata: variant_bitrate : 0 encoder : Lavc57.54.100 mpeg4 Side data: cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1 Stream mapping: Stream #0:0 -> #0:0 (mpeg1video (native) -> mpeg4 (native)) Press [q] to stop, [?] for help [hls,applehttp @ 0x2be1440] HLS request for url 'stream12.ts', offset 0, playlist 0 [hls,applehttp @ 0x2be1440] HLS request for url 'stream13.ts', offset 0, playlist 0 [hls,applehttp @ 0x2be1440] HLS request for url 'stream14.ts', offset 0, playlist 0 [hls,applehttp @ 0x2be1440] HLS request for url 'stream15.ts', offset 0, playlist 0 frame= 1141 fps=0.0 q=7.6 Lsize= 1450kB time=00:00:45.64 bitrate= 260.3kbits/s speed= 152x video:1417kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 2.321591% Input file #0 (stream.m3u8): Input stream #0:0 (video): 1142 packets read (1160452 bytes); 1142 frames decoded; Total: 1142 packets (1160452 bytes) demuxed Output file #0 (out.avi): Output stream #0:0 (video): 1141 frames encoded; 1141 packets muxed (1451289 bytes); Total: 1141 packets (1451289 bytes) muxed
$ ffmpeg -v 45 -live_start_index -15 -i stream.m3u8 out.avi ffmpeg version N-81473-gb2c6a11 Copyright (c) 2000-2016 the FFmpeg developers built with gcc 4.7 (SUSE Linux) configuration: --enable-gpl libavutil 55. 29.100 / 55. 29.100 libavcodec 57. 54.100 / 57. 54.100 libavformat 57. 48.100 / 57. 48.100 libavdevice 57. 0.102 / 57. 0.102 libavfilter 6. 57.100 / 6. 57.100 libswscale 4. 1.100 / 4. 1.100 libswresample 2. 1.100 / 2. 1.100 libpostproc 54. 0.100 / 54. 0.100 [hls,applehttp @ 0x1ece440] HLS request for url 'stream24.ts', offset 0, playlist 0 Input #0, hls,applehttp, from 'stream.m3u8': Duration: N/A, start: 241.440000, bitrate: 104857 kb/s Program 0 Metadata: variant_bitrate : 0 Stream #0:0: Video: mpeg1video, 1 reference frame ([2][0][0][0] / 0x0002), yuv420p(tv), 320x240 [SAR 1:1 DAR 4:3], 104857 kb/s, 25 fps, 25 tbr, 90k tbn, 25 tbc Metadata: variant_bitrate : 0 [graph 0 input from stream 0:0 @ 0x1f0c780] w:320 h:240 pixfmt:yuv420p tb:1/90000 fr:25/1 sar:1/1 sws_param:flags=2 [avi @ 0x1ef41e0] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead. Output #0, avi, to 'out.avi': Metadata: ISFT : Lavf57.48.100 Stream #0:0: Video: mpeg4, 1 reference frame (FMP4 / 0x34504D46), yuv420p, 320x240 [SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc Metadata: variant_bitrate : 0 encoder : Lavc57.54.100 mpeg4 Side data: cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1 Stream mapping: Stream #0:0 -> #0:0 (mpeg1video (native) -> mpeg4 (native)) Press [q] to stop, [?] for help [hls,applehttp @ 0x1ece440] HLS request for url 'stream25.ts', offset 0, playlist 0 [hls,applehttp @ 0x1ece440] HLS request for url 'stream26.ts', offset 0, playlist 0 [hls,applehttp @ 0x1ece440] HLS request for url 'stream27.ts', offset 0, playlist 0 [hls,applehttp @ 0x1ece440] HLS request for url 'stream28.ts', offset 0, playlist 0 frame= 1119 fps=0.0 q=11.0 Lsize= 1423kB time=00:00:44.76 bitrate= 260.5kbits/s speed= 149x video:1391kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 2.328217% Input file #0 (stream.m3u8): Input stream #0:0 (video): 1120 packets read (1140142 bytes); 1120 frames decoded; Total: 1120 packets (1140142 bytes) demuxed Output file #0 (out.avi): Output stream #0:0 (video): 1119 frames encoded; 1119 packets muxed (1424266 bytes); Total: 1119 packets (1424266 bytes) muxed
comment:6 by , 8 years ago
Keywords: | hls.c added; hls removed |
---|---|
Priority: | normal → critical |
just fixed the funny live_start_index bug.
At least fix for the server and stream I am interested in.
Turns out like this in my case (10s segments)
- pls->start_seq_no, whatever segment is streamed "now" from stream server
- pls->n_segments, the max OLD segments the server keeps available, 1438,FOUR HOURS
- c->live_start_index, where ffmpeg puts the command argument I give it, 1400
Note, pls->n_segments is given as a positive number although it is kindo negative, how max cmaller one can make the segmentcounter. (the thought-bug?)
THat is, a funny thing, shld i use PLUS 1400 or MINUS 1400?
Note, when asking for old, smaller number segments!
(seems the existing code did the same thought-bug in both cases?? always did nothing?)
So I made it accept both but always GO BACKWARDS (earlier), both in time and segments
/* index If this is a LIVE stream, start live_start_index segments from the
- start or end */
printf("\n start_seq_no %d n_segments %d live_start_index %d \n",pls->start_seq_no,pls->n_segments,c->live_start_index) ;
if (c->live_start_index < 0) /* user gives neg number, 5th grade -/+ math*/
/* take max of two negative numbers, hehe*/
/* 93abcd, - 1438(4 hours back), -1400*/
seq_gunnar = pls->start_seq_no + FFMAX((- pls->n_segments), c->live_start_index);
else /* user gives pos number, kindo simpler, just subtract the smaller*/
/* 1400, 1438 */
seq_gunnar = pls->start_seq_no - FFMIN(c->live_start_index, pls->n_segments);
printf("\n start_seq_no %d n_segments %d live_start_index %d gunnar %d\n",pls->start_seq_no,pls->n_segments,c->live_start_index,seq_gunnar) ;
return seq_gunnar;
bottom line, the negative of a cpl of negative or not negative numbers is funny
PS Forgot, disabled lots of checks of seqment numbers in read_data subroutine, esp the reload: part.
A mess at the moment, cant do other backwards numbers than the full 4 hours
But better than nothing at all.
comment:7 by , 8 years ago
Keywords: | hls added; hls.c removed |
---|---|
Priority: | critical → normal |
Please send patches to the ffmpeg-devel mailing list.
comment:8 by , 6 years ago
I have encountered the same problem , it seems that if you put "-live_start_index" before the "-i" option, everything is ok, but if you put it after "-i", then it doesn't work, so I just put it before "-i" to avoid this annoyed problem. until version 4.1.1 this problem is still not fixed.
follow-ups: 10 11 comment:9 by , 4 years ago
Cc: | added |
---|---|
Resolution: | worksforme |
Status: | closed → reopened |
Coming from the youtube-dl project, I still cannot figure out how to fix this issue.
youtube-dl already placed -live_start_index
before -i
options but it stills starts at the point of execution for live streams. Values of option -live_start_index
such as 0
, -36000
and -180000
are tried but to no avail.
The following is the youtube-dl debug log (including ffmpeg output).
D:\>youtube-dl --external-downloader-args "-live_start_index -180000" -v https://www.youtube.com/watch?v=orNc3NwAmHY --hls-use-mpegts --output "%(title)s-%(id)s.ts" [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['--external-downloader-args', '-live_start_index -180000', '-v', 'https://www.youtube.com/watch?v=orNc3NwAmHY', '--hls-use-mpegts', '--output', '%(title)s-%(id)s.ts'] [debug] Encodings: locale cp950, fs mbcs, out cp950, pref cp950 [debug] youtube-dl version 2020.12.29 [debug] Python version 3.4.4 (CPython) - Windows-10-10.0.18362 [debug] exe versions: ffmpeg 4.3.1-2020-11-19-essentials_build-www.gyan.dev, ffprobe 4.3.1-2020-11-19-essentials_build-www.gyan.dev [debug] Proxy map: {} [youtube] orNc3NwAmHY: Downloading webpage [youtube] orNc3NwAmHY: Downloading m3u8 information [youtube] orNc3NwAmHY: Downloading MPD manifest [debug] Default format spec: best/bestvideo+bestaudio [debug] Invoking downloader on 'https://manifest.googlevideo.com/api/manifest/hls_playlist/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/dover/11/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8' [download] Destination: 瑪瑪信箱《第89集》-orNc3NwAmHY.ts [debug] ffmpeg command line: ffmpeg -y -loglevel verbose -live_start_index -180000 -headers "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.63 Safari/537.36 Accept-Language: en-us,en;q=0.5 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 " -i "https://manifest.googlevideo.com/api/manifest/hls_playlist/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/dover/11/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8" -c copy -f mpegts "file: 瑪瑪信箱《第89集》-orNc3NwAmHY.ts.part" ffmpeg version 4.3.1-2020-11-19-essentials_build-www.gyan.dev Copyright (c) 2000-2020 the FFmpeg developers built with gcc 10.2.0 (Rev5, Built by MSYS2 project) configuration: --enable-gpl --enable-version3 --enable-static --disable-w32threads --disable-autodetect --enable-fontconfig --enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-lzma --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-libass --enable-libfreetype --enable-libfribidi --enable-libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libgme --enable-libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-librubberband libavutil 56. 51.100 / 56. 51.100 libavcodec 58. 91.100 / 58. 91.100 libavformat 58. 45.100 / 58. 45.100 libavdevice 58. 10.100 / 58. 10.100 libavfilter 7. 85.100 / 7. 85.100 libswscale 5. 7.100 / 5. 7.100 libswresample 3. 7.100 / 3. 7.100 libpostproc 55. 7.100 / 55. 7.100 [tcp @ 000001c051784a40] Starting connection attempt to 172.217.24.78 port 443 [tcp @ 000001c051784a40] Successfully connected to 172.217.24.78 port 443 [hls @ 000001c05177f580] Skip ('#EXT-X-VERSION:3') [hls @ 000001c05177f580] Skip ('#EXT-X-DISCONTINUITY-SEQUENCE:6') [hls @ 000001c05177f580] Skip ('#EXT-X-PROGRAM-DATE-TIME:2020-12-29T13:29:39.932+00:00') [hls @ 000001c05177f580] HLS request for url 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2315/goap/clen%3D43434%3Blmt%3D1609244637012210/govp/clen%3D693528%3Blmt%3D1609244637012213/dur/2.000/file/seg.ts', offset 0, playlist 0 [hls @ 000001c05177f580] Opening 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2315/goap/clen%3D43434%3Blmt%3D1609244637012210/govp/clen%3D693528%3Blmt%3D1609244637012213/dur/2.000/file/seg.ts' for reading [tcp @ 000001c0517d9d00] Starting connection attempt to 182.239.95.108 port 443 [tcp @ 000001c0517d9d00] Successfully connected to 182.239.95.108 port 443 [hls @ 000001c05177f580] HLS request for url 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2316/goap/clen%3D43345%3Blmt%3D1609244637012230/govp/clen%3D697632%3Blmt%3D1609244637012231/dur/2.000/file/seg.ts', offset 0, playlist 0 [hls @ 000001c05177f580] Opening 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2316/goap/clen%3D43345%3Blmt%3D1609244637012230/govp/clen%3D697632%3Blmt%3D1609244637012231/dur/2.000/file/seg.ts' for reading [tcp @ 000001c051ea7d80] Starting connection attempt to 182.239.95.108 port 443 [tcp @ 000001c051ea7d80] Successfully connected to 182.239.95.108 port 443 [h264 @ 000001c0521862c0] Reinit context to 1280x720, pix_fmt: yuv420p Input #0, hls, from 'https://manifest.googlevideo.com/api/manifest/hls_playlist/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/dover/11/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8': Duration: N/A, start: 4628.201356, bitrate: N/A Program 0 Metadata: variant_bitrate : 0 Stream #0:0: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp Metadata: variant_bitrate : 0 Stream #0:1: Video: h264 (Main), 1 reference frame ([27][0][0][0] / 0x001B), yuv420p(tv, bt709, left), 1280x720 [SAR 1:1 DAR 16:9], 30 tbr, 90k tbn, 60 tbc Metadata: variant_bitrate : 0 [mpegts @ 000001c0527e6040] service 1 using PCR in pid=256, pcr_period=0ms [mpegts @ 000001c0527e6040] muxrate VBR, sdt every 500 ms, pat/pmt every 100 ms Output #0, mpegts, to 'file: 瑪瑪信箱《第89集》-orNc3NwAmHY.ts.part': Metadata: encoder : Lavf58.45.100 Stream #0:0: Video: h264 (Main), 1 reference frame ([27][0][0][0] / 0x001B), yuv420p(tv, bt709, left), 1280x720 (0x0) [SAR 1:1 DAR 16:9], q=2-31, 30 tbr, 90k tbn, 90k tbc Metadata: variant_bitrate : 0 Stream #0:1: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp Metadata: variant_bitrate : 0 Stream mapping: Stream #0:1 -> #0:0 (copy) Stream #0:0 -> #0:1 (copy) Press [q] to stop, [?] for help [hls @ 000001c05177f580] HLS request for url 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2317/goap/clen%3D43330%3Blmt%3D1609244637012250/govp/clen%3D634115%3Blmt%3D1609244637012251/dur/2.000/file/seg.ts', offset 0, playlist 0 [https @ 000001c051d5edc0] Opening 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2317/goap/clen%3D43330%3Blmt%3D1609244637012250/govp/clen%3D634115%3Blmt%3D1609244637012251/dur/2.000/file/seg.ts' for reading [hls @ 000001c05177f580] HLS request for url 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2318/goap/clen%3D43617%3Blmt%3D1609244637012270/govp/clen%3D484229%3Blmt%3D1609244637012273/dur/2.000/file/seg.ts', offset 0, playlist 0 [https @ 000001c052022040] Opening 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2318/goap/clen%3D43617%3Blmt%3D1609244637012270/govp/clen%3D484229%3Blmt%3D1609244637012273/dur/2.000/file/seg.ts' for reading [hls @ 000001c05177f580] HLS request for url 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2319/goap/clen%3D43658%3Blmt%3D1609244637012290/govp/clen%3D402657%3Blmt%3D1609244637012291/dur/2.000/file/seg.ts', offset 0, playlist 0 [https @ 000001c051d5edc0] Opening 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2319/goap/clen%3D43658%3Blmt%3D1609244637012290/govp/clen%3D402657%3Blmt%3D1609244637012291/dur/2.000/file/seg.ts' for reading [hls @ 000001c05177f580] HLS request for url 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2320/goap/clen%3D43293%3Blmt%3D1609244637012310/govp/clen%3D361489%3Blmt%3D1609244637012311/dur/2.000/file/seg.ts', offset 0, playlist 0 [https @ 000001c052022040] Opening 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2320/goap/clen%3D43293%3Blmt%3D1609244637012310/govp/clen%3D361489%3Blmt%3D1609244637012311/dur/2.000/file/seg.ts' for reading [hls @ 000001c05177f580] HLS request for url 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2321/goap/clen%3D43537%3Blmt%3D1609244637012330/govp/clen%3D372263%3Blmt%3D1609244637012332/dur/2.000/file/seg.ts', offset 0, playlist 0 [https @ 000001c051d5edc0] Opening 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2321/goap/clen%3D43537%3Blmt%3D1609244637012330/govp/clen%3D372263%3Blmt%3D1609244637012332/dur/2.000/file/seg.ts' for reading [hls @ 000001c05177f580] HLS request for url 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2322/goap/clen%3D43118%3Blmt%3D1609244637012350/govp/clen%3D449656%3Blmt%3D1609244637012351/dur/2.000/file/seg.ts', offset 0, playlist 0 [https @ 000001c052022040] Opening 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2322/goap/clen%3D43118%3Blmt%3D1609244637012350/govp/clen%3D449656%3Blmt%3D1609244637012351/dur/2.000/file/seg.ts' for reading [tcp @ 000001c0524b2900] Starting connection attempt to 172.217.24.78 port 443s/s speed= 6.7x [tcp @ 000001c0524b2900] Successfully connected to 172.217.24.78 port 443 [hls @ 000001c05177f580] Skip ('#EXT-X-VERSION:3') [hls @ 000001c05177f580] Skip ('#EXT-X-DISCONTINUITY-SEQUENCE:6') [hls @ 000001c05177f580] Skip ('#EXT-X-PROGRAM-DATE-TIME:2020-12-29T13:29:43.932+00:00') [hls @ 000001c05177f580] HLS request for url 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2323/goap/clen%3D43668%3Blmt%3D1609244637012370/govp/clen%3D373164%3Blmt%3D1609244637012371/dur/2.000/file/seg.ts', offset 0, playlist 0 [https @ 000001c051d5edc0] Opening 'https://r1---sn-jhi3-i3b6.googlevideo.com/videoplayback/id/orNc3NwAmHY.1/itag/95/source/yt_live_broadcast/expire/1609270213/ei/ZS_rX-_xBrGFlQSqz7uAAg/ip/161.81.183.103/requiressl/yes/ratebypass/yes/live/1/sgoap/gir%3Dyes%3Bitag%3D140/sgovp/gir%3Dyes%3Bitag%3D136/hls_chunk_host/r1---sn-jhi3-i3b6.googlevideo.com/playlist_duration/30/manifest_duration/30/vprv/1/playlist_type/DVR/initcwndbps/12470/mh/1B/mm/44/mn/sn-jhi3-i3b6/ms/lva/mv/m/mvi/1/pl/21/keepalive/yes/mt/1609248265/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,live,sgoap,sgovp,playlist_duration,manifest_duration,vprv,playlist_type/sig/AOq0QJ8wRgIhAPz6E7Ckttuwxoe7w1CmtnpRNg9pUMXj1jy-3vhjMWDjAiEA17cH6Uq6TufnMyIP5KxX2Vz8xG0g7xh9lNYN4CGLyDE%3D/lsparams/hls_chunk_host,initcwndbps,mh,mm,mn,ms,mv,mvi,pl/lsig/AG3C_xAwRAIgE2vGxUejKyhOjLtlgR0Q2qFNJ9XLcHZjonWha5qrPnkCIDMAOLbkN9BimlEKg4jvGgfuQbXZJTKg6mZOVUUIm8Cz/playlist/index.m3u8/sq/2323/goap/clen%3D43668%3Blmt%3D1609244637012370/govp/clen%3D373164%3Blmt%3D1609244637012371/dur/2.000/file/seg.ts' for reading D:\>
comment:10 by , 4 years ago
Replying to nixklai:
Coming from the youtube-dl project, I still cannot figure out how to fix this issue.
youtube-dl already placed
-live_start_index
before-i
options but it stills starts at the point of execution for live streams. Values of option-live_start_index
such as0
,-36000
and-180000
are tried but to no avail.
The following is the youtube-dl debug log (including ffmpeg output).
D:\>youtube-dl --external-downloader-args "-live_start_index -180000" -v https://www.youtube.com/watch?v=orNc3NwAmHY --hls-use-mpegts --output "%(title)s-%(id)s.ts" [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['--external-downloader-args', '-live_start_index -180000', '-v', 'https://www.youtube.com/watch?v=orNc3NwAmHY', '--hls-use-mpegts', '--output', '%(title)s-%(id)s.ts']
How can i get the m3u8 link? i cannot get m3u8 list link as your way.
(base) bogon:ufbuild liuqi$ youtube-dl --external-downloader-args "-live_start_index -180000" -v https://www.youtube.com/watch?v=orNc3NwAmHY --hls-use-mpegts --output "%(title)s-%(id)s.ts" [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['--external-downloader-args', '-live_start_index -180000', '-v', 'https://www.youtube.com/watch?v=orNc3NwAmHY', '--hls-use-mpegts', '--output', '%(title)s-%(id)s.ts'] [debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8 [debug] youtube-dl version 2020.12.09 [debug] Python version 3.7.4 (CPython) - Darwin-19.6.0-x86_64-i386-64bit [debug] exe versions: ffmpeg N-100475-gf1357274e9, ffprobe N-100475-gf1357274e9, rtmpdump 2.4 [debug] Proxy map: {} [youtube] orNc3NwAmHY: Downloading webpage [debug] Default format spec: bestvideo+bestaudio/best [debug] Invoking downloader on 'https://r4---sn-i3b7kns6.googlevideo.com/videoplayback?expire=1609335041&ei=oSzsX8eAFLj-gAP2xrXQBQ&ip=156.236.120.141&id=o-ADkMEtrZuGdAyF1wHDGafJ37TyDH5KOVKZMT5A6QxvFa&itag=136&aitags=133%2C134%2C135%2C136%2C160%2C242%2C243%2C244%2C247%2C278&source=youtube&requiressl=yes&mh=1B&mm=31%2C26&mn=sn-i3b7kns6%2Csn-npoe7nes&ms=au%2Conr&mv=m&mvi=4&pl=24&initcwndbps=511250&vprv=1&mime=video%2Fmp4&ns=F4MXogtd9LysRC-IsoxGFO8F&gir=yes&clen=903201271&dur=8916.099&lmt=1609295101449811&mt=1609313085&fvip=4&keepalive=yes&c=WEB&txp=5432434&n=dUyNbuEOd40-MZl8&sparams=expire%2Cei%2Cip%2Cid%2Caitags%2Csource%2Crequiressl%2Cvprv%2Cmime%2Cns%2Cgir%2Cclen%2Cdur%2Clmt&sig=AOq0QJ8wRQIhAMY1H9bJN-b7MSFW76rqXjuXQb5kLz4Y5P8Es5XJEV4BAiBfgR34isOo7wVwhjB_CNZ7D3s3l8D-LjzbxFrh3Hs2HQ%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AG3C_xAwRQIhAInUG2MHzn5_tqcS2ngSyC8P4Op1W9Xp4Dav-JDMsT1CAiB0vE4amBCets-B7KknuQvxIPKkr4Wiva37_uEXZ30pXQ%3D%3D&ratebypass=yes' [download] Resuming download at byte 233512091 [download] Destination: 孕婦的生產心聲!_ 瑪瑪信箱《第89集》-orNc3NwAmHY.ts.f136 [download] 26.6% of 861.36MiB at 641.81KiB/s ETA 16:49^C
follow-ups: 12 13 comment:11 by , 4 years ago
Resolution: | → needs_more_info |
---|---|
Status: | reopened → closed |
Replying to nixklai:
Coming from the youtube-dl project, I still cannot figure out how to fix this issue.
youtube-dl already placed
-live_start_index
before-i
options but it stills starts at the point of execution for live streams. Values of option-live_start_index
such as0
,-36000
and-180000
are tried but to no avail.
The following is the youtube-dl debug log (including ffmpeg output).
D:\>youtube-dl --external-downloader-args "-live_start_index -180000" -v https://www.youtube.com/watch?v=orNc3NwAmHY --hls-use-mpegts --output "%(title)s-%(id)s.ts" [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['--external-downloader-args', '-live_start_index -180000', '-v', 'https://www.youtube.com/watch?v=orNc3NwAmHY', '--hls-use-mpegts', '--output', '%(title)s-%(id)s.ts']
How can i get the m3u8 link? i cannot get m3u8 list link as your way.
(base) bogon:ufbuild liuqi$ youtube-dl --external-downloader-args "-live_start_index -180000" -v https://www.youtube.com/watch?v=orNc3NwAmHY --hls-use-mpegts --output "%(title)s-%(id)s.ts" [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['--external-downloader-args', '-live_start_index -180000', '-v', 'https://www.youtube.com/watch?v=orNc3NwAmHY', '--hls-use-mpegts', '--output', '%(title)s-%(id)s.ts'] [debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8 [debug] youtube-dl version 2020.12.09 [debug] Python version 3.7.4 (CPython) - Darwin-19.6.0-x86_64-i386-64bit [debug] exe versions: ffmpeg N-100475-gf1357274e9, ffprobe N-100475-gf1357274e9, rtmpdump 2.4 [debug] Proxy map: {} [youtube] orNc3NwAmHY: Downloading webpage [debug] Default format spec: bestvideo+bestaudio/best [debug] Invoking downloader on 'https://r4---sn-i3b7kns6.googlevideo.com/videoplayback?expire=1609335041&ei=oSzsX8eAFLj-gAP2xrXQBQ&ip=156.236.120.141&id=o-ADkMEtrZuGdAyF1wHDGafJ37TyDH5KOVKZMT5A6QxvFa&itag=136&aitags=133%2C134%2C135%2C136%2C160%2C242%2C243%2C244%2C247%2C278&source=youtube&requiressl=yes&mh=1B&mm=31%2C26&mn=sn-i3b7kns6%2Csn-npoe7nes&ms=au%2Conr&mv=m&mvi=4&pl=24&initcwndbps=511250&vprv=1&mime=video%2Fmp4&ns=F4MXogtd9LysRC-IsoxGFO8F&gir=yes&clen=903201271&dur=8916.099&lmt=1609295101449811&mt=1609313085&fvip=4&keepalive=yes&c=WEB&txp=5432434&n=dUyNbuEOd40-MZl8&sparams=expire%2Cei%2Cip%2Cid%2Caitags%2Csource%2Crequiressl%2Cvprv%2Cmime%2Cns%2Cgir%2Cclen%2Cdur%2Clmt&sig=AOq0QJ8wRQIhAMY1H9bJN-b7MSFW76rqXjuXQb5kLz4Y5P8Es5XJEV4BAiBfgR34isOo7wVwhjB_CNZ7D3s3l8D-LjzbxFrh3Hs2HQ%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AG3C_xAwRQIhAInUG2MHzn5_tqcS2ngSyC8P4Op1W9Xp4Dav-JDMsT1CAiB0vE4amBCets-B7KknuQvxIPKkr4Wiva37_uEXZ30pXQ%3D%3D&ratebypass=yes' [download] Resuming download at byte 233512091 [download] Destination: 孕婦的生產心聲!_ 瑪瑪信箱《第89集》-orNc3NwAmHY.ts.f136 [download] 26.6% of 861.36MiB at 641.81KiB/s ETA 16:49^C
comment:12 by , 4 years ago
Resolution: | needs_more_info |
---|---|
Status: | closed → reopened |
Replying to stevenliu:
Replying to nixklai:
Coming from the youtube-dl project, I still cannot figure out how to fix this issue.
youtube-dl already placed
-live_start_index
before-i
options but it stills starts at the point of execution for live streams. Values of option-live_start_index
such as0
,-36000
and-180000
are tried but to no avail.
The following is the youtube-dl debug log (including ffmpeg output).
D:\>youtube-dl --external-downloader-args "-live_start_index -180000" -v https://www.youtube.com/watch?v=orNc3NwAmHY --hls-use-mpegts --output "%(title)s-%(id)s.ts" [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['--external-downloader-args', '-live_start_index -180000', '-v', 'https://www.youtube.com/watch?v=orNc3NwAmHY', '--hls-use-mpegts', '--output', '%(title)s-%(id)s.ts']How can i get the m3u8 link? i cannot get m3u8 list link as your way.
(base) bogon:ufbuild liuqi$ youtube-dl --external-downloader-args "-live_start_index -180000" -v https://www.youtube.com/watch?v=orNc3NwAmHY --hls-use-mpegts --output "%(title)s-%(id)s.ts" [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['--external-downloader-args', '-live_start_index -180000', '-v', 'https://www.youtube.com/watch?v=orNc3NwAmHY', '--hls-use-mpegts', '--output', '%(title)s-%(id)s.ts'] [debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8 [debug] youtube-dl version 2020.12.09 [debug] Python version 3.7.4 (CPython) - Darwin-19.6.0-x86_64-i386-64bit [debug] exe versions: ffmpeg N-100475-gf1357274e9, ffprobe N-100475-gf1357274e9, rtmpdump 2.4 [debug] Proxy map: {} [youtube] orNc3NwAmHY: Downloading webpage [debug] Default format spec: bestvideo+bestaudio/best [debug] Invoking downloader on 'https://r4---sn-i3b7kns6.googlevideo.com/videoplayback?expire=1609335041&ei=oSzsX8eAFLj-gAP2xrXQBQ&ip=156.236.120.141&id=o-ADkMEtrZuGdAyF1wHDGafJ37TyDH5KOVKZMT5A6QxvFa&itag=136&aitags=133%2C134%2C135%2C136%2C160%2C242%2C243%2C244%2C247%2C278&source=youtube&requiressl=yes&mh=1B&mm=31%2C26&mn=sn-i3b7kns6%2Csn-npoe7nes&ms=au%2Conr&mv=m&mvi=4&pl=24&initcwndbps=511250&vprv=1&mime=video%2Fmp4&ns=F4MXogtd9LysRC-IsoxGFO8F&gir=yes&clen=903201271&dur=8916.099&lmt=1609295101449811&mt=1609313085&fvip=4&keepalive=yes&c=WEB&txp=5432434&n=dUyNbuEOd40-MZl8&sparams=expire%2Cei%2Cip%2Cid%2Caitags%2Csource%2Crequiressl%2Cvprv%2Cmime%2Cns%2Cgir%2Cclen%2Cdur%2Clmt&sig=AOq0QJ8wRQIhAMY1H9bJN-b7MSFW76rqXjuXQb5kLz4Y5P8Es5XJEV4BAiBfgR34isOo7wVwhjB_CNZ7D3s3l8D-LjzbxFrh3Hs2HQ%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AG3C_xAwRQIhAInUG2MHzn5_tqcS2ngSyC8P4Op1W9Xp4Dav-JDMsT1CAiB0vE4amBCets-B7KknuQvxIPKkr4Wiva37_uEXZ30pXQ%3D%3D&ratebypass=yes' [download] Resuming download at byte 233512091 [download] Destination: 孕婦的生產心聲!_ 瑪瑪信箱《第89集》-orNc3NwAmHY.ts.f136 [download] 26.6% of 861.36MiB at 641.81KiB/s ETA 16:49^C
Since the URL is dynamically generated by YouTube and scrapped by youtube-dl, you may need a constant live stream. I believe the YouTube channel Cat Trumpet always has several live streams available, and you may use them with youtube-dl to get the URL like mine (https://***a-random-server***.googlevideo.com/videoplayback?...).
You can also try using a live stream demo URL from Akamai. The issue persists in this live stream as well. Please check this log for more information.
Both youtube-dl and Akamai live streams start download at the time of execution, but not the start of the stream.
follow-up: 14 comment:13 by , 4 years ago
Replying to stevenliu:
Replying to nixklai:
Coming from the youtube-dl project, I still cannot figure out how to fix this issue.
youtube-dl already placed
-live_start_index
before-i
options but it stills starts at the point of execution for live streams. Values of option-live_start_index
such as0
,-36000
and-180000
are tried but to no avail.
The following is the youtube-dl debug log (including ffmpeg output).
D:\>youtube-dl --external-downloader-args "-live_start_index -180000" -v https://www.youtube.com/watch?v=orNc3NwAmHY --hls-use-mpegts --output "%(title)s-%(id)s.ts" [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['--external-downloader-args', '-live_start_index -180000', '-v', 'https://www.youtube.com/watch?v=orNc3NwAmHY', '--hls-use-mpegts', '--output', '%(title)s-%(id)s.ts']How can i get the m3u8 link? i cannot get m3u8 list link as your way.
(base) bogon:ufbuild liuqi$ youtube-dl --external-downloader-args "-live_start_index -180000" -v https://www.youtube.com/watch?v=orNc3NwAmHY --hls-use-mpegts --output "%(title)s-%(id)s.ts" [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['--external-downloader-args', '-live_start_index -180000', '-v', 'https://www.youtube.com/watch?v=orNc3NwAmHY', '--hls-use-mpegts', '--output', '%(title)s-%(id)s.ts'] [debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8 [debug] youtube-dl version 2020.12.09 [debug] Python version 3.7.4 (CPython) - Darwin-19.6.0-x86_64-i386-64bit [debug] exe versions: ffmpeg N-100475-gf1357274e9, ffprobe N-100475-gf1357274e9, rtmpdump 2.4 [debug] Proxy map: {} [youtube] orNc3NwAmHY: Downloading webpage [debug] Default format spec: bestvideo+bestaudio/best [debug] Invoking downloader on 'https://r4---sn-i3b7kns6.googlevideo.com/videoplayback?expire=1609335041&ei=oSzsX8eAFLj-gAP2xrXQBQ&ip=156.236.120.141&id=o-ADkMEtrZuGdAyF1wHDGafJ37TyDH5KOVKZMT5A6QxvFa&itag=136&aitags=133%2C134%2C135%2C136%2C160%2C242%2C243%2C244%2C247%2C278&source=youtube&requiressl=yes&mh=1B&mm=31%2C26&mn=sn-i3b7kns6%2Csn-npoe7nes&ms=au%2Conr&mv=m&mvi=4&pl=24&initcwndbps=511250&vprv=1&mime=video%2Fmp4&ns=F4MXogtd9LysRC-IsoxGFO8F&gir=yes&clen=903201271&dur=8916.099&lmt=1609295101449811&mt=1609313085&fvip=4&keepalive=yes&c=WEB&txp=5432434&n=dUyNbuEOd40-MZl8&sparams=expire%2Cei%2Cip%2Cid%2Caitags%2Csource%2Crequiressl%2Cvprv%2Cmime%2Cns%2Cgir%2Cclen%2Cdur%2Clmt&sig=AOq0QJ8wRQIhAMY1H9bJN-b7MSFW76rqXjuXQb5kLz4Y5P8Es5XJEV4BAiBfgR34isOo7wVwhjB_CNZ7D3s3l8D-LjzbxFrh3Hs2HQ%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AG3C_xAwRQIhAInUG2MHzn5_tqcS2ngSyC8P4Op1W9Xp4Dav-JDMsT1CAiB0vE4amBCets-B7KknuQvxIPKkr4Wiva37_uEXZ30pXQ%3D%3D&ratebypass=yes' [download] Resuming download at byte 233512091 [download] Destination: 孕婦的生產心聲!_ 瑪瑪信箱《第89集》-orNc3NwAmHY.ts.f136 [download] 26.6% of 861.36MiB at 641.81KiB/s ETA 16:49^C
Since the URL is dynamically generated by YouTube and scrapped by youtube-dl, you may need a constant live stream. I believe the YouTube channel Cat Trumpet always has several live streams available, and you may use them with youtube-dl to get the URL like mine (https://***a-random-server***.googlevideo.com/videoplayback?...).
You can also try using a live stream demo URL from Akamai. The issue persists in this live stream as well. Please check this log for more information.
Both youtube-dl and Akamai live streams start download at the time of execution, but not the start of the stream.
comment:14 by , 4 years ago
Replying to nixklai:
Replying to stevenliu:
Replying to nixklai:
Coming from the youtube-dl project, I still cannot figure out how to fix this issue.
youtube-dl already placed
-live_start_index
before-i
options but it stills starts at the point of execution for live streams. Values of option-live_start_index
such as0
,-36000
and-180000
are tried but to no avail.
The following is the youtube-dl debug log (including ffmpeg output).
D:\>youtube-dl --external-downloader-args "-live_start_index -180000" -v https://www.youtube.com/watch?v=orNc3NwAmHY --hls-use-mpegts --output "%(title)s-%(id)s.ts" [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['--external-downloader-args', '-live_start_index -180000', '-v', 'https://www.youtube.com/watch?v=orNc3NwAmHY', '--hls-use-mpegts', '--output', '%(title)s-%(id)s.ts']How can i get the m3u8 link? i cannot get m3u8 list link as your way.
(base) bogon:ufbuild liuqi$ youtube-dl --external-downloader-args "-live_start_index -180000" -v https://www.youtube.com/watch?v=orNc3NwAmHY --hls-use-mpegts --output "%(title)s-%(id)s.ts" [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['--external-downloader-args', '-live_start_index -180000', '-v', 'https://www.youtube.com/watch?v=orNc3NwAmHY', '--hls-use-mpegts', '--output', '%(title)s-%(id)s.ts'] [debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8 [debug] youtube-dl version 2020.12.09 [debug] Python version 3.7.4 (CPython) - Darwin-19.6.0-x86_64-i386-64bit [debug] exe versions: ffmpeg N-100475-gf1357274e9, ffprobe N-100475-gf1357274e9, rtmpdump 2.4 [debug] Proxy map: {} [youtube] orNc3NwAmHY: Downloading webpage [debug] Default format spec: bestvideo+bestaudio/best [debug] Invoking downloader on 'https://r4---sn-i3b7kns6.googlevideo.com/videoplayback?expire=1609335041&ei=oSzsX8eAFLj-gAP2xrXQBQ&ip=156.236.120.141&id=o-ADkMEtrZuGdAyF1wHDGafJ37TyDH5KOVKZMT5A6QxvFa&itag=136&aitags=133%2C134%2C135%2C136%2C160%2C242%2C243%2C244%2C247%2C278&source=youtube&requiressl=yes&mh=1B&mm=31%2C26&mn=sn-i3b7kns6%2Csn-npoe7nes&ms=au%2Conr&mv=m&mvi=4&pl=24&initcwndbps=511250&vprv=1&mime=video%2Fmp4&ns=F4MXogtd9LysRC-IsoxGFO8F&gir=yes&clen=903201271&dur=8916.099&lmt=1609295101449811&mt=1609313085&fvip=4&keepalive=yes&c=WEB&txp=5432434&n=dUyNbuEOd40-MZl8&sparams=expire%2Cei%2Cip%2Cid%2Caitags%2Csource%2Crequiressl%2Cvprv%2Cmime%2Cns%2Cgir%2Cclen%2Cdur%2Clmt&sig=AOq0QJ8wRQIhAMY1H9bJN-b7MSFW76rqXjuXQb5kLz4Y5P8Es5XJEV4BAiBfgR34isOo7wVwhjB_CNZ7D3s3l8D-LjzbxFrh3Hs2HQ%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AG3C_xAwRQIhAInUG2MHzn5_tqcS2ngSyC8P4Op1W9Xp4Dav-JDMsT1CAiB0vE4amBCets-B7KknuQvxIPKkr4Wiva37_uEXZ30pXQ%3D%3D&ratebypass=yes' [download] Resuming download at byte 233512091 [download] Destination: 孕婦的生產心聲!_ 瑪瑪信箱《第89集》-orNc3NwAmHY.ts.f136 [download] 26.6% of 861.36MiB at 641.81KiB/s ETA 16:49^CSince the URL is dynamically generated by YouTube and scrapped by youtube-dl, you may need a constant live stream. I believe the YouTube channel Cat Trumpet always has several live streams available, and you may use them with youtube-dl to get the URL like mine (https://***a-random-server***.googlevideo.com/videoplayback?...).
You can also try using a live stream demo URL from Akamai. The issue persists in this live stream as well. Please check this log for more information.
Both youtube-dl and Akamai live streams start download at the time of execution, but not the start of the stream.
Okay, i have get your point, eg. "-live_start_index 5", get segment start from the first segment count[1] + 4 = 5 position, but the description said it from from end of the list.
comment:15 by , 4 years ago
Resolution: | → worksforme |
---|---|
Status: | reopened → closed |
works ok for me:
(base) liuqi05:ufbuild liuqi$ ./ffplay -live_start_index -5 https://cph-p2p-msl.akamaized.net/hls/live/2000341/test/level_1.m3u8 ffplay version N-100494-g063ca801ca Copyright (c) 2003-2020 the FFmpeg developers built with Apple clang version 12.0.0 (clang-1200.0.32.28) configuration: --prefix=/usr/local/ --libdir=/usr/local/lib/ --cc=clang --quiet --enable-htmlpages --enable-libx264 --enable-libxml2 --enable-gpl --extra-ldflags='-I/usr/local/opt/openssl/include/ -O0 -g3 -fsanitize=address -Wno-error -fPIC -I/usr/local/include' --extra-ldflags='-O0 -g3 -fsanitize=address -Wno-error -fPIC -L/usr/local/lib -L/usr/local/opt/openssl/lib' --enable-libfreetype --enable-fontconfig --enable-libspeex --enable-libopus --enable-libzmq --enable-libx265 --enable-libass --enable-videotoolbox --disable-optimizations --enable-audiotoolbox --enable-opengl --disable-stripping --disable-avresample --samples=../../fate-suite/ --enable-encoder=hevc_videotoolbox --enable-hwaccel=hevc_videotoolbox --enable-hwaccel=h264_videotoolbox --enable-openssl --enable-nonfree libavutil 56. 62.100 / 56. 62.100 libavcodec 58.115.102 / 58.115.102 libavformat 58. 65.100 / 58. 65.100 libavdevice 58. 11.103 / 58. 11.103 libavfilter 7. 94.100 / 7. 94.100 libswscale 5. 8.100 / 5. 8.100 libswresample 3. 8.100 / 3. 8.100 libpostproc 55. 8.100 / 55. 8.100 [hls @ 0x61b00001ff80] Skip ('#EXT-X-VERSION:3')B sq= 0B f=0/0 [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756023.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756029.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756035.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756041.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756047.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756053.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756059.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756065.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756071.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756077.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756083.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756089.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756095.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756101.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756107.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756113.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756119.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756125.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756131.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756137.ts') pls->start_seq_no = [5284977], pls->n_segments = [20]Opening 'https://cph-p2p-msl.akamaized.net/hls/live/2000341/test/segment_1_20210104_1609756113.ts' for reading [hls @ 0x61b00001ff80] Opening 'https://cph-p2p-msl.akamaized.net/hls/live/2000341/test/segment_1_20210104_1609756119.ts' for reading [NULL @ 0x619000119e80] non-existing SPS 0 referenced in buffering period [h264 @ 0x61900011b280] non-existing SPS 0 referenced in buffering period Input #0, hls, from 'https://cph-p2p-msl.akamaized.net/hls/live/2000341/test/level_1.m3u8': Duration: N/A, start: 22639.133522, bitrate: N/A Program 0 Metadata: variant_bitrate : 0 Stream #0:0: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p, 640x266 [SAR 399:400 DAR 12:5], 24 fps, 24 tbr, 90k tbn, 48 tbc Metadata: variant_bitrate : 0 Stream #0:1: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp Metadata: variant_bitrate : 0 ^C(base) liuqi05:ufbuild liuqi$ 22KB vq= 93KB sq= 0B f=0/0 (base) liuqi05:ufbuild liuqi$ (base) liuqi05:ufbuild liuqi$ (base) liuqi05:ufbuild liuqi$ (base) liuqi05:ufbuild liuqi$ (base) liuqi05:ufbuild liuqi$ ./ffplay -live_start_index 5 https://cph-p2p-msl.akamaized.net/hls/live/2000341/test/level_1.m3u8 ffplay version N-100494-g063ca801ca Copyright (c) 2003-2020 the FFmpeg developers built with Apple clang version 12.0.0 (clang-1200.0.32.28) configuration: --prefix=/usr/local/ --libdir=/usr/local/lib/ --cc=clang --quiet --enable-htmlpages --enable-libx264 --enable-libxml2 --enable-gpl --extra-ldflags='-I/usr/local/opt/openssl/include/ -O0 -g3 -fsanitize=address -Wno-error -fPIC -I/usr/local/include' --extra-ldflags='-O0 -g3 -fsanitize=address -Wno-error -fPIC -L/usr/local/lib -L/usr/local/opt/openssl/lib' --enable-libfreetype --enable-fontconfig --enable-libspeex --enable-libopus --enable-libzmq --enable-libx265 --enable-libass --enable-videotoolbox --disable-optimizations --enable-audiotoolbox --enable-opengl --disable-stripping --disable-avresample --samples=../../fate-suite/ --enable-encoder=hevc_videotoolbox --enable-hwaccel=hevc_videotoolbox --enable-hwaccel=h264_videotoolbox --enable-openssl --enable-nonfree libavutil 56. 62.100 / 56. 62.100 libavcodec 58.115.102 / 58.115.102 libavformat 58. 65.100 / 58. 65.100 libavdevice 58. 11.103 / 58. 11.103 libavfilter 7. 94.100 / 7. 94.100 libswscale 5. 8.100 / 5. 8.100 libswresample 3. 8.100 / 3. 8.100 libpostproc 55. 8.100 / 55. 8.100 [hls @ 0x61b00001ff80] Skip ('#EXT-X-VERSION:3')B sq= 0B f=0/0 [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756041.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756047.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756053.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756059.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756065.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756071.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756077.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756083.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756089.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756095.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756101.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756107.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756113.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756119.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756125.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756131.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756137.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756143.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756149.ts') [hls @ 0x61b00001ff80] Segment url ('segment_1_20210104_1609756155.ts') pls->start_seq_no = [5284980], pls->n_segments = [20]Opening 'https://cph-p2p-msl.akamaized.net/hls/live/2000341/test/segment_1_20210104_1609756071.ts' for reading [hls @ 0x61b00001ff80] Opening 'https://cph-p2p-msl.akamaized.net/hls/live/2000341/test/segment_1_20210104_1609756077.ts' for reading [NULL @ 0x6190000e9c80] non-existing SPS 0 referenced in buffering period [h264 @ 0x6190000eb080] non-existing SPS 0 referenced in buffering period Input #0, hls, from 'https://cph-p2p-msl.akamaized.net/hls/live/2000341/test/level_1.m3u8': Duration: N/A, start: 22597.128622, bitrate: N/A Program 0 Metadata: variant_bitrate : 0 Stream #0:0: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p, 640x266 [SAR 399:400 DAR 12:5], 24 fps, 24 tbr, 90k tbn, 48 tbc Metadata: variant_bitrate : 0 Stream #0:1: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp Metadata: variant_bitrate : 0 22598.04 A-V: -0.034 fd= 0 aq= 28KB vq= 191KB sq= 0B f=0/0 (base) liuqi05:ufbuild liuqi$
Works for me as documented, your analysis is definitely wrong, see for example mov_read_header() which reads a context variable mapped from a user option on the top of the function.
Feel free to reopen this ticket if you can provide the failing command line(s) together with the complete, uncut console output.