#5419(avformat:new): HLS EXT-X-DISCONTINUITY tag is not supported
#5419: HLS EXT-X-DISCONTINUITY tag is not supported -----------------------------------+--------------------------------------- Reporter: xyq204101 | Type: enhancement Status: new | Priority: normal Component: avformat | Version: git-master Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 0 Analyzed by developer: 0 | -----------------------------------+--------------------------------------- Summary of the bug: I'm trying to read input from HLS and output to RTMP, this works fine if the HLS segments are all in one time sequence. However if the time changes e.g. segments generated from two video files, ffmpeg got error 'Non- monotonous DTS in output stream 0:1;'. According to the HLS documentation, EXT-X-DISCONTINUITY should be used when time sequence changes. (https://tools.ietf.org/html/draft-pantos- http-live-streaming-13#section-3.4.11) But I still got the same error after I added that tag to the m3u8 file. Look at hls.c file in libavformat, it doesn't handle EXT-X-DISCONTINUITY tag. How to reproduce: {{{ ffmpeg -re -i http://hls-server/playlist.m3u8 -acodec copy -vcodec copy -bsf:a aac_adtstoasc -f flv rtmp://rtmp-server/app }}} -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported -------------------------------------+------------------------------------- Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: Version: git-master | undetermined Keywords: | Resolution: Blocking: | Blocked By: Analyzed by developer: 0 | Reproduced by developer: 0 -------------------------------------+------------------------------------- Changes (by cehoyos): * keywords: hls => * type: enhancement => defect * component: avformat => undetermined Comment: Is network input required to reproduce this issue or is it also reproducible if you provide the segments as input files? Is network output required to reproduce the problem or is it also reproducible with file output? -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:1> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported -------------------------------------+------------------------------------- Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: Version: git-master | undetermined Keywords: | Resolution: Blocking: | Blocked By: Analyzed by developer: 0 | Reproduced by developer: 0 -------------------------------------+------------------------------------- Comment (by xyq204101): Network is not required for both input and output. It can be reproduced locally using the following ffmpeg commands: First, generate m3u8 file and segments: {{{ ffmpeg -i test.mp4 -hls_list_size 0 -hls_segment_filename 'test%03d.ts' out.m3u8 }}} The test.mp4 file I've used is (http://www.sample- videos.com/video/mp4/720/big_buck_bunny_720p_50mb.mp4) Then change the out.m3u8 file to swap the second and third segment and add #EXT-X-DISCONTINUITY tags before those two segments {{{ First few lines of original m3u8 #EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:0 #EXTINF:8.400000, test000.ts #EXTINF:4.560000, test001.ts #EXTINF:3.120000, test002.ts #EXTINF:5.640000, test003.ts Modified: #EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:0 #EXTINF:8.400000, test000.ts #EXT-X-DISCONTINUITY #EXTINF:3.120000, test002.ts #EXT-X-DISCONTINUITY #EXTINF:4.560000, test001.ts #EXTINF:5.640000, test003.ts }}} Then use the following ffmpeg command to convert that to flv {{{ ffmpeg -i out.m3u8 -acodec copy -vcodec copy -bsf:a aac_adtstoasc -f flv test.flv }}} Output: {{{ ffmpeg version 3.0.1-tessus Copyright (c) 2000-2016 the FFmpeg developers built with Apple LLVM version 6.0 (clang-600.0.57) (based on LLVM 3.5svn) configuration: --cc=/usr/bin/clang --prefix=/opt/ffmpeg --as=yasm --extra-version=tessus --enable-avisynth --enable-fontconfig --enable-gpl --enable-libass --enable-libbluray --enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopus --enable-libschroedinger --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable- libvpx --enable-libwavpack --enable-libx264 --enable-libx265 --enable- libxavs --enable-libxvid --enable-libzmq --enable-version3 --disable- ffplay --disable-indev=qtkit --disable-indev=x11grab_xcb libavutil 55. 17.103 / 55. 17.103 libavcodec 57. 24.102 / 57. 24.102 libavformat 57. 25.100 / 57. 25.100 libavdevice 57. 0.101 / 57. 0.101 libavfilter 6. 31.100 / 6. 31.100 libswscale 4. 0.100 / 4. 0.100 libswresample 2. 0.101 / 2. 0.101 libpostproc 54. 0.100 / 54. 0.100 Input #0, hls,applehttp, from 'out.m3u8': Duration: 00:04:41.80, start: 1.458667, bitrate: 0 kb/s Program 0 Metadata: variant_bitrate : 0 Stream #0:0: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc Stream #0:1: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz, 5.1, fltp, 314 kb/s File 'test.flv' already exists. Overwrite ? [y/N] y Output #0, flv, to 'test.flv': Metadata: encoder : Lavf57.25.100 Stream #0:0: Video: h264 ([7][0][0][0] / 0x0007), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 25 fps, 25 tbr, 1k tbn, 90k tbc Stream #0:1: Audio: aac (LC) ([10][0][0][0] / 0x000A), 48000 Hz, 5.1, 314 kb/s Stream mapping: Stream #0:0 -> #0:0 (copy) Stream #0:1 -> #0:1 (copy) Press [q] to stop, [?] for help [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8341; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8363; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8384; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:0; previous: 15981, current: 8341; changing to 15981. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:0; previous: 15981, current: 8381; changing to 15981. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8405; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8427; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8448; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:0; previous: 15981, current: 8421; changing to 15981. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8469; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8491; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8512; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:0; previous: 15981, current: 8461; changing to 15981. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:0; previous: 15981, current: 8501; changing to 15981. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8533; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8555; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8576; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:0; previous: 15981, current: 8541; changing to 15981. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:0; previous: 15981, current: 8581; changing to 15981. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8597; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8619; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8640; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:0; previous: 15981, current: 8621; changing to 15981. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8661; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8683; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8704; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:0; previous: 15981, current: 8661; changing to 15981. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:0; previous: 15981, current: 8701; changing to 15981. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8725; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8747; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8768; changing to 16000. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:0; previous: 15981, current: 8741; changing to 15981. This may result in incorrect timestamps in the output file. [flv @ 0x7ff473816800] Non-monotonous DTS in output stream 0:1; previous: 16000, current: 8789; changing to 16000. This may result in incorrect timestamps in the output file. ... A lot more similar errors }}} -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:2> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported -------------------------------------+------------------------------------- Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: Version: git-master | undetermined Keywords: | Resolution: Blocking: | Blocked By: Analyzed by developer: 0 | Reproduced by developer: 0 -------------------------------------+------------------------------------- Comment (by cehoyos): Do you want to report that trancoding fails (or produces unexpected / wrong output) or do you want to report that transcoding prints warnings? Please understand that the warning are printed by the muxer, they are not related to the demuxer. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:3> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported -------------------------------------+------------------------------------- Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: Version: git-master | undetermined Keywords: | Resolution: Blocking: | Blocked By: Analyzed by developer: 0 | Reproduced by developer: 0 -------------------------------------+------------------------------------- Comment (by xyq204101): Replying to [comment:3 cehoyos]:
Do you want to report that trancoding fails (or produces unexpected / wrong output) or do you want to report that transcoding prints warnings?
The transcoding is producing unexpected output. When I play the output flv file in VLC, it freeze at 8th second and after few seconds jump to 12th second directly. The content between 8th and 12th second is missing.
Please understand that the warning are printed by the muxer, they are not related to the demuxer.
From my understanding when the muxer saw timestamp difference it will skip those frames, however in this case the demuxer should somehow let the muxer know the timestamp difference is expected. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:4> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported -------------------------------------+------------------------------------- Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: Version: git-master | undetermined Keywords: | Resolution: Blocking: | Blocked By: Analyzed by developer: 0 | Reproduced by developer: 0 -------------------------------------+------------------------------------- Comment (by cehoyos): Replying to [comment:4 xyq204101]:
Replying to [comment:3 cehoyos]:
Do you want to report that trancoding fails (or produces unexpected / wrong output) or do you want to report that transcoding prints warnings?
The transcoding is producing unexpected output. When I play the output flv file in VLC, it freeze at 8th second and after few seconds jump to 12th second directly. The content between 8th and 12th second is missing.
What output did you expect after swapping the segments? -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:5> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported -------------------------------------+------------------------------------- Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: Version: git-master | undetermined Keywords: | Resolution: Blocking: | Blocked By: Analyzed by developer: 0 | Reproduced by developer: 0 -------------------------------------+------------------------------------- Comment (by xyq204101): Replying to [comment:5 cehoyos]:
Replying to [comment:4 xyq204101]:
Replying to [comment:3 cehoyos]:
Do you want to report that trancoding fails (or produces unexpected / wrong output) or do you want to report that transcoding prints warnings?
The transcoding is producing unexpected output. When I play the output flv file in VLC, it freeze at 8th second and after few seconds jump to 12th second directly. The content between 8th and 12th second is missing.
What output did you expect after swapping the segments?
The expect output is first contents in test000.ts, then test002.ts, then test001.ts then test003.ts.... according to the sequence of the m3u8 file. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:6> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
Replying to [comment:5 cehoyos]:
Replying to [comment:4 xyq204101]:
Replying to [comment:3 cehoyos]:
Do you want to report that trancoding fails (or produces unexpected / wrong output) or do you want to report that transcoding
#5419: HLS EXT-X-DISCONTINUITY tag is not supported -------------------------------------+------------------------------------- Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: Version: git-master | undetermined Keywords: | Resolution: Blocking: | Blocked By: Analyzed by developer: 0 | Reproduced by developer: 0 -------------------------------------+------------------------------------- Comment (by an_ffmpeg_user): Replying to [comment:6 xyq204101]: prints warnings?
The transcoding is producing unexpected output. When I play the
output flv file in VLC, it freeze at 8th second and after few seconds jump to 12th second directly. The content between 8th and 12th second is missing.
What output did you expect after swapping the segments?
The expect output is first contents in test000.ts, then test002.ts, then test001.ts then test003.ts.... according to the sequence of the m3u8 file.
What output did you expect after swapping the segments?
I concur with @xyq204101. {{{ #EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:0 #EXTINF:8.400000, test000.ts #EXTINF:4.560000, test001.ts #EXTINF:3.120000, test002.ts #EXTINF:5.640000, test003.ts }}} I would expect this to play test000 > test001 > test002 > test003 {{{ #EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:0 #EXTINF:8.400000, test000.ts #EXTINF:3.120000, test002.ts #EXTINF:4.560000, test001.ts #EXTINF:5.640000, test003.ts }}} A player which does not support EXT-X-DISCONTINUITY will behave unexpectedly. We have seen players that either power-on-through, stall or skip. This stream would not pass the Apple HLS Validator and playback support across software or devices could not be guaranteed. I would expect FFmpeg to scream, moan and complain at the console. This appears to be the behavior that @xyq204101 describes. {{{ #EXTM3U #EXT-X-VERSION:3 #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:0 #EXTINF:8.400000, test000.ts #EXT-X-DISCONTINUITY #EXTINF:3.120000, test002.ts #EXT-X-DISCONTINUITY #EXTINF:4.560000, test001.ts #EXTINF:5.640000, test003.ts }}} I would expect a HLSv3 or above player/encoder with EXT-X-DISCONTINUITY support to play or generate a seamless test000 > test002 > test001 > test003 output without console errors or warnings. It may choose to verbose log that a discontinuity flag was detected, but it should not justify a console warning or error if the EXT-X-DISCONTINUITY flag is correctly placed. But TBH, the console output is irrelevant - it is the stream that is important. @xyq204101 - how does FFplay behave when it tries to play your out.m3u8? It will help take the output modules and VLC out of the equation, helping the developers tag with the correct component. Also, it may be better to take the FLV container out of the loop and encapsulate in a single MPEG-TS. {{{ffmpeg -i out.m3u8 -acodec copy -vcodec copy -bsf:a aac_adtstoasc -f mpegts test.ts}}} -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:7> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported -------------------------------------+------------------------------------- Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: Version: git-master | undetermined Keywords: | Resolution: Blocking: | Blocked By: Analyzed by developer: 0 | Reproduced by developer: 0 -------------------------------------+------------------------------------- Comment (by HoldenForever): Hi, I have the same problem. EXT-X-DISCONTINUITY tags are currently not supported by the current version of FFMPEG. VLC does not support this as well. Someone a long time ago did create a patch to try and make this work in 2013: https://github.com/bbcallen/FFmpeg/commit/7d154d23c7a6b41da58bc40d3848f46d2e... I have tried to modify this to work on the latest version of FFMPEG by just setting the PTS and DTS to no value and it works sometimes however it is not the correct way and can cause some epic audio sync issues down the line. We need to make sure the timebase from demuxer to muxer is consistent and this patch attempts to do that while my patch fails. If I find a way to make this work I will submit it here as I have spent alot of time trying to solve this issue and I think when FFMPEG supports EXT-X-DISCONTINUITIES it will be alot better piece of software for my use cases. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:8> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported -------------------------------------+------------------------------------- Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: Version: git-master | undetermined Keywords: | Resolution: Blocking: | Blocked By: Analyzed by developer: 0 | Reproduced by developer: 0 -------------------------------------+------------------------------------- Comment (by HoldenForever): There have been many attempts to make this work from various people. Check out AirStachPlayer hls.c file: https://github.com/AirStash/AirStashPlayer/blob/d0013059c63cf0807196c1dd396a... /ffmpeg-x86_64/libavformat/hls.c I have not made their implementation work as of yet. You can hack around the problem by modifying the hls_read_packet function and change the end of the function to: /* If we got a packet, return it */ if (minplaylist >= 0) { struct playlist *pls = c->playlists[minplaylist]; *pkt = pls->pkt; pkt->stream_index += pls->stream_offset; reset_packet(&c->playlists[minplaylist]->pkt); if (pkt->dts != AV_NOPTS_VALUE) c->cur_timestamp = av_rescale_q(pkt->dts, pls->ctx->streams[pls->pkt.stream_index]->time_base, AV_TIME_BASE_Q); pkt->dts = AV_NOPTS_VALUE; pkt->pts = AV_NOPTS_VALUE; return 0; } return AVERROR_EOF; Just add the 2 lines: pkt->dts = AV_NOPTS_VALUE; pkt->pts = AV_NOPTS_VALUE; This seems to make FFMPEG handle #EXT-X-DISCONTINUITY Obviously you will need to compile your own build to make this work. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:9> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported -------------------------------------+------------------------------------- Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: Version: git-master | undetermined Keywords: | Resolution: Blocking: | Blocked By: Analyzed by developer: 0 | Reproduced by developer: 0 -------------------------------------+------------------------------------- Comment (by HoldenForever): There is a fix available for this. Please email me at holdenforever@gmail.com if you are interested. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:10> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported -------------------------------------+------------------------------------- Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: Version: git-master | undetermined Keywords: | Resolution: Blocking: | Blocked By: Analyzed by developer: 0 | Reproduced by developer: 0 -------------------------------------+------------------------------------- Changes (by cehoyos): * cc: HoldenForever (added) Comment: Replying to [comment:10 HoldenForever]:
There is a fix available for this. Please email me at holdenforever@gmail.com if you are interested. Please send your patch to the development mailing list.
-- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:11> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Changes (by anssi): * analyzed: 0 => 1 * cc: anssi.hannula@… (added) * component: undetermined => avformat * reproduced: 0 => 1 * keywords: => hls Comment: This report is valid as indeed the HLS demuxer doesn't currently support EXT-X-DISCONTINUITY tag. Changing the order of the segments in the playlist and marking them with EXT-X-DISCONTINUITY should indeed result in playback in the new order with consistent timestamps as has been suggested. To properly support the timestamp discontinuity case we'd need to map the timebase of each discontinuity sequence to a single consistent timebase, and that mapping would need to be considered when selecting the next frame to be output and when seeking. EXT-X-DISCONTINUITY also allows the file format, the number of tracks, and other stream properties to change, those would require some additional handling (e.g. open a different subdemuxer) but such cases may be more rare. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:12> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Changes (by jkkn): * cc: ffmpeg@… (added) -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:13> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by bdunbar42): Did this ever get fixed? Or could somebody send the patch? -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:15> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by bdunbar42): Did this ever get fixed? Or could somebody send the patch? -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:14> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: Type: defect | Status: new Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by damengzai): Replying to [comment:9 HoldenForever]:
There have been many attempts to make this work from various people.
Check out AirStachPlayer hls.c file: https://github.com/AirStash/AirStashPlayer/blob/d0013059c63cf0807196c1dd396a... /ffmpeg-x86_64/libavformat/hls.c
I have not made their implementation work as of yet. You can hack around
the problem by modifying the hls_read_packet function and change the end of the function to:
/* If we got a packet, return it */ if (minplaylist >= 0) { struct playlist *pls = c->playlists[minplaylist]; *pkt = pls->pkt; pkt->stream_index += pls->stream_offset; reset_packet(&c->playlists[minplaylist]->pkt);
if (pkt->dts != AV_NOPTS_VALUE) c->cur_timestamp = av_rescale_q(pkt->dts,
pls->ctx->streams[pls->pkt.stream_index]->time_base,
AV_TIME_BASE_Q);
pkt->dts = AV_NOPTS_VALUE; pkt->pts = AV_NOPTS_VALUE;
return 0; } return AVERROR_EOF;
Just add the 2 lines:
pkt->dts = AV_NOPTS_VALUE; pkt->pts = AV_NOPTS_VALUE;
This seems to make FFMPEG handle #EXT-X-DISCONTINUITY
Obviously you will need to compile your own build to make this work.
This is useful but not work,I changed some code and it work. Like this: ret = av_read_frame(pls->ctx, &pls->pkt); int seq_no = pls->cur_seq_no - pls->start_seq_no; struct segment *seg = pls->segments[seq_no]; int64_t pred = av_rescale_q(seg->previous_duration, AV_TIME_BASE_Q, s->streams[pkt->stream_index]->time_base); int64_t max_ts = av_rescale_q(seg->start_time + seg->duration, AV_TIME_BASE_Q, s->streams[pkt->stream_index]->time_base); max_ts += 2 * AV_TIME_BASE; if(s->start_time > 0){ max_ts+= av_rescale_q(s->start_time, AV_TIME_BASE_Q, s->streams[pkt->stream_index]->time_base); } if(pls->pkt.dts != AV_NOPTS_VALUE && pls->pkt.dts + pred < max_ts) pls->pkt.dts += pred; if(pls->pkt.pts != AV_NOPTS_VALUE && pls->pkt.pts + pred < max_ts) pls->pkt.pts += pred; {{{ }}} Just change the position of the code above.Others didn`t change. Because if tag EXT-X-DISCONTINUITY appear ,means dts and pts changed,and if dts less than seek_timestamp,it will stuck here( ts_diff = av_rescale_rnd(pls->pkt.dts, AV_TIME_BASE, tb.den, AV_ROUND_DOWN) - pls->seek_timestamp; if (ts_diff >= 0 && (pls->seek_flags & AVSEEK_FLAG_ANY || pls->pkt.flags & AV_PKT_FLAG_KEY)) { pls->seek_timestamp = AV_NOPTS_VALUE; break; }) hope helpful,if something wrong tell me please. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:16> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: Type: defect | Status: open Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Changes (by cehoyos): * status: new => open Comment: A real-world stream that allows to reproduce this was posted on the youtube-dl bug tracker. The following works as expected, playback continues after the discontinuity that can be seen in the status line after ten seconds: {{{ $ ffplay -ss 120 http://ipad- streaming.cbsnews.com/media/mpx/2016/12/11/830443587743/60_1211_FullEpisode_1199010_5000/60_1211_FullEpisode_1199010_5000.m3u8 }}} The following produces only ten seconds output, I stopped transcoding after no frames were written for several seconds, output continues after some time but shows horrible A/V desync: {{{ $ ffmpeg -ss 120 -i http://ipad- streaming.cbsnews.com/media/mpx/2016/12/11/830443587743/60_1211_FullEpisode_1199010_5000/60_1211_FullEpisode_1199010_5000.m3u8 -qscale 2 out.avi ffmpeg version N-83412-g8b80feb Copyright (c) 2000-2017 the FFmpeg developers built with gcc 4.7 (SUSE Linux) configuration: --enable-gpl libavutil 55. 46.100 / 55. 46.100 libavcodec 57. 75.100 / 57. 75.100 libavformat 57. 66.101 / 57. 66.101 libavdevice 57. 2.100 / 57. 2.100 libavfilter 6. 72.100 / 6. 72.100 libswscale 4. 3.101 / 4. 3.101 libswresample 2. 4.100 / 2. 4.100 libpostproc 54. 2.100 / 54. 2.100 Input #0, hls,applehttp, from 'http://ipad- streaming.cbsnews.com/media/mpx/2016/12/11/830443587743/60_1211_FullEpisode_1199010_5000/60_1211_FullEpisode_1199010_5000.m3u8': Duration: 00:43:55.58, start: 1.400000, bitrate: 0 kb/s Program 0 Metadata: variant_bitrate : 0 Stream #0:0: Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc Metadata: variant_bitrate : 0 Stream #0:1: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp Metadata: variant_bitrate : 0 Please use -q:a or -q:v, -qscale is ambiguous Output #0, avi, to 'out.avi': Metadata: ISFT : Lavf57.66.101 Stream #0:0: Video: mpeg4 (FMP4 / 0x34504D46), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 29.97 fps, 29.97 tbn, 29.97 tbc Metadata: variant_bitrate : 0 encoder : Lavc57.75.100 mpeg4 Side data: cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: -1 Stream #0:1: Audio: ac3 ([0] [0][0] / 0x2000), 44100 Hz, stereo, fltp, 192 kb/s Metadata: variant_bitrate : 0 encoder : Lavc57.75.100 ac3 Stream mapping: Stream #0:0 -> #0:0 (h264 (native) -> mpeg4 (native)) Stream #0:1 -> #0:1 (aac (native) -> ac3 (native)) Press [q] to stop, [?] for help frame= 328 fps= 16 q=2.0 Lsize= 7911kB time=00:00:11.14 bitrate=5815.0kbits/s speed=0.538x video:7629kB audio:256kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.318705% }}} The issue also manifests itself for the following command line, that produces output starting 140 seconds after the discontinuity: {{{ $ ffmpeg -ss 140 -i http://ipad- streaming.cbsnews.com/media/mpx/2016/12/11/830443587743/60_1211_FullEpisode_1199010_5000/60_1211_FullEpisode_1199010_5000.m3u8 -qscale 2 out.avi }}} -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:17> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: Type: defect | Status: open Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by Sylvain228): Here is a 24x7 linear test stream with frequent discontinuities. No solution found to manage discontinuities until now https://www.djing.com/tv/live.m3u8 -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:18> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: Type: defect | Status: open Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by moraleda): What is the current state of this bug? Are there plans to add support for the EXT-X-DISCONTINUITY tag? I am trying to produce a summary version of a playlist by removing some segments from a continuous playlist and adding EXT-X-DISCONTINUITY tags in the place of the removed segments, but the player does not realize the jump in pts and just sits showing the last frame for the duration of the removed segments. Thank you. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:19> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: Type: defect | Status: open Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by boehmi): Any plans on fixing this bug? I'm encountering it too with a self-written playlist as input that switches between two sources with EXT-X-DISCONTINUITY depending on availability. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:20> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: Type: defect | Status: open Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by jkoberg): I have a patch fixing this bug at http://ffmpeg.org/pipermail/ffmpeg- devel/2018-March/226706.html Please let me know if it's suitable for merge. Thanks! -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:21> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: Type: defect | Status: open Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by hedgehog90): What is the current status of this bug? Is there a hacky way around it in ffmpeg version 4.2.2 ? -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:22> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: Type: defect | Status: open Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by Balling): Replying to [comment:21 jkoberg]:
I have a patch fixing this bug at http://ffmpeg.org/pipermail/ffmpeg- devel/2018-March/226706.html
Please let me know if it's suitable for merge.
Thanks!
Please resubmit this http://ffmpeg.org/pipermail/ffmpeg- devel/attachments/20180316/739542e4/attachment.obj so it will be shown on https://patchwork.ffmpeg.org -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:23> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: Type: defect | Status: open Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by bhertz): Replying to [comment:21 jkoberg]:
I have a patch fixing this bug at http://ffmpeg.org/pipermail/ffmpeg- devel/2018-March/226706.html
Thanks for the patch from a user. Had the same problem with an internet stream, which issued a series of EXT-X-DISCONTINUITY tags from time to time thus making ffmpeg croak ("Non-monotonous DTS in output stream" aplenty, finally it stopped producing output). Your patch fixes that, partly. Partly because vlc, with which I relay the stream on LAN, still occasionally complains about timestamps upon remuxing. But now it at least recovers autonomously, and no restart is required. Which I previously had to do every two hours or so. So the patch is of real benefit here, and I specifically registered on this site to convey my appreciation. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:24> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: Type: defect | Status: open Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by hls_downloader): When will the patch be finally merged? Stop ignoring the issue please! -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:25> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: (none) Type: defect | Status: open Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by luckysk): It seems to be on the 2021 petition list, I guess, btw,can we at least try to merge some of the above mentioned improved patches? -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:26> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: (none) Type: defect | Status: open Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by emkowale): Could someone please provide instructions on exactly how to apply the patch? It sure would be great if this was included in the packaged version of ffmpeg. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:27> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: (none) Type: defect | Status: open Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by mrskman): I sign this petition +1 -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:28> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: (none) Type: defect | Status: open Priority: normal | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by Balling): We need to first apply this LGTM patch https://patchwork.ffmpeg.org/project/ffmpeg/patch/20220128202320.1711694-1-g... to even start talking about this issue. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:29> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: (none) Type: defect | Status: open Priority: important | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Changes (by Sergey): * priority: normal => important Comment: Dear Balling, LGTM patch was applied, please help solve this problem! thank you -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:30> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: (none) Type: defect | Status: open Priority: important | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by cdickey): I recently stumbled into this issue while building a service to stream to youtube. The command used in the original post is even very very close to what I'm using. However anytime the service attempts to stream using an m3u8 with an EXT-X-DISCONTINUITY tag in, ffmpeg continues on as though nothing is wrong but the Youtube stream health log shows it stops receiving data from that point. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:31> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: (none) Type: defect | Status: open Priority: important | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by adamvaul): I also am working on this issue and would be very grateful for any help in getting ffmpeg to recognize and properly output from .m3u8 with EXT-X-DISCONTINUITY tags into rtmp. We are currently using this command to output to youtube stream: ffmpeg -re -protocol_whitelist file,http,https,tcp,tls,crypto -live_start_index -99999 -i out.m3u8 -acodec copy -vcodec copy -f flv "rtmp://a.rtmp.youtube.com/live2/..." -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:32> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: (none) Type: defect | Status: open Priority: important | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by Elliot Lee): There are some relevant comments in https://github.com/jellyfin/jellyfin- ffmpeg/issues/57 In particular: (a) "One of the major issues is that RFC-8216 is not fully supported in FFMPEG https://datatracker.ietf.org/doc/html/rfc8216 #EXT-X-DISCONTINUITY is just one of the things from RFC-8216 that isn't supported properly in FFMPEG. #EXT-X-DISCONTINUITY-SEQUENCE is also not supported properly either. Just look through the RFC and you still see things missing from FFMPEG." (github user Protektor-Desura) (b) "Now, when it comes to supporting certain TV providers like Pluto, simply supporting discontinuity streams is not enough. This is because streams from providers like Pluto often break the HLS RFC spec in various ways, and a spec-compliant HLS demuxer would reject these streams as well. To illustrate, proper support for the #EXT-X-DISCONTINUITY tag requires the HLS stream to have an EXT-X-DISCONTINUITY-SEQUENCE header to mark which discontinuity sequence the current playlist is in. However, PlutoTV manifests may have inconsistent numbers between updates, with values jumping from 2 to 0 or 1. According to the RFC, a decreasing number is not allowed." (github user gnattu) So it seems there is more to untangling this whole ball of yarn than just applying the old patch. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:33> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: (none) Type: defect | Status: open Priority: important | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by carinobra): As far as I understood, by reading the RFC spec (https://datatracker.ietf.org/doc/html/rfc8216#section-4.3.3.3), the EXT-X -DISCONTINUITY-SEQUENCE tag is not mandatory when having a EXT-X-DISCONTINUITY tag: ''If the Media Playlist does not contain an EXT-X-DISCONTINUITY-SEQUENCE tag, then the Discontinuity Sequence Number of the first Media Segment in the Playlist SHALL be considered to be 0.'' The issue is that ffmpeg should support EXT-X-DISCONTINUITY to play the segments under this tag in the sequence they appear and continue to play the upcoming “non-discontinuity” segments normally. I believe this is urgent, as not only PlutoTV, but Samsung TVP and others are using this tag. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:34> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
#5419: HLS EXT-X-DISCONTINUITY tag is not supported ------------------------------------+------------------------------------ Reporter: xyq204101 | Owner: (none) Type: defect | Status: open Priority: important | Component: avformat Version: git-master | Resolution: Keywords: hls | Blocked By: Blocking: | Reproduced by developer: 1 Analyzed by developer: 1 | ------------------------------------+------------------------------------ Comment (by Aleš Hrubý): Adding robust support for EXT-X-DISCONTINUITY would greatly improve FFmpeg’s usability for live and segmented streaming workflows. -- Ticket URL: <https://trac.ffmpeg.org/ticket/5419#comment:35> FFmpeg <https://ffmpeg.org> FFmpeg issue tracker
participants (1)
-
FFmpeg