[FFmpeg-trac] #7337(undetermined:new): FFmpeg not recognizing WebVTT subtitle stream from HLS playlist
FFmpeg
trac at avcodec.org
Mon Jul 30 21:52:10 EEST 2018
#7337: FFmpeg not recognizing WebVTT subtitle stream from HLS playlist
-------------------------------------+-------------------------------------
Reporter: newsfanatic | Type: defect
Status: new | Priority: normal
Component: | Version: git-
undetermined | master
Keywords: | Blocked By:
WebVTT,HLS,m3u8,playlist,subtitles | Reproduced by developer: 0
Blocking: |
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Summary of the bug:
When trying to ingest an HLS playlist from an m3u8 endpoint online to an
mkv container, the subtitle stream is not being picked up at all. I can
confirm that all other audio and video streams are being recognized,
whilst the subtitle stream is not. I can also confirm that WebVTT is
listed as a supported subtitle codec from ```ffmpeg -codecs```. Specifying
```-map 0``` also fails to pick up the subtitle stream. Am I just
forgetting a flag or option?
How to reproduce:
{{{
% ffmpeg -report -i
https://ajo.prod.reuters.tv/rest/v2/xato/playlist/assets/57630,163881,163829,57447,127691,163890,127676,163830,127649,163855,57635/video.m3u8
-c copy reuters.mkv
ffmpeg version 4.0.2 Copyright (c) 2000-2018 the FFmpeg developers
built with Apple LLVM version 9.0.0 (clang-900.0.39.2)
configuration: --prefix=/usr/local/Cellar/ffmpeg/4.0.2 --enable-shared
--enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-
avresample --cc=clang --host-cflags= --host-ldflags= --enable-gpl
--enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl
--enable-videotoolbox --disable-lzma
libavutil 56. 14.100 / 56. 14.100
libavcodec 58. 18.100 / 58. 18.100
libavformat 58. 12.100 / 58. 12.100
libavdevice 58. 3.100 / 58. 3.100
libavfilter 7. 16.100 / 7. 16.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 1.100 / 5. 1.100
libswresample 3. 1.100 / 3. 1.100
libpostproc 55. 1.100 / 55. 1.100
}}}
Subtitles are specified in the M3U8 manifest with the #EXT-X-MEDIA tag.
M3U8 manifest:
{{{
#EXTM3U
#EXT-X-VERSION:4
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-
ID="subs",NAME="English",DEFAULT=YES,AUTOSELECT=YES,FORCED=NO,URI="https://ajo.prod.reuters.tv/rest/v2/captions/vtt/assets/57630,163881,163829,57447,127691,163890,127676,163830,127649,163855,57635"
#EXT-X-STREAM-
INF:BANDWIDTH=360800,CODECS="mp4a.40.2,avc1.64000D",RESOLUTION=320x180,SUBTITLES="subs"
https://ajo.prod.reuters.tv/rest/v2/playlist/assets/57630,163881,163829,57447,127691,163890,127676,163830,127649,163855,57635/resolution/320x180/codecs/ignored
#EXT-X-STREAM-
INF:BANDWIDTH=499400,CODECS="mp4a.40.2,avc1.640015",RESOLUTION=512x288,SUBTITLES="subs"
https://ajo.prod.reuters.tv/rest/v2/playlist/assets/57630,163881,163829,57447,127691,163890,127676,163830,127649,163855,57635/resolution/512x288/codecs/ignored
#EXT-X-STREAM-
INF:BANDWIDTH=984500,CODECS="mp4a.40.2,avc1.64001E",RESOLUTION=640x360,SUBTITLES="subs"
https://ajo.prod.reuters.tv/rest/v2/playlist/assets/57630,163881,163829,57447,127691,163890,127676,163830,127649,163855,57635/resolution/640x360/codecs/ignored
#EXT-X-STREAM-
INF:BANDWIDTH=1490500,CODECS="mp4a.40.2,avc1.64001F",RESOLUTION=854x480,SUBTITLES="subs"
https://ajo.prod.reuters.tv/rest/v2/playlist/assets/57630,163881,163829,57447,127691,163890,127676,163830,127649,163855,57635/resolution/854x480/codecs/ignored
#EXT-X-STREAM-
INF:BANDWIDTH=2006400,CODECS="mp4a.40.2,avc1.64001F",RESOLUTION=960x540,SUBTITLES="subs"
https://ajo.prod.reuters.tv/rest/v2/playlist/assets/57630,163881,163829,57447,127691,163890,127676,163830,127649,163855,57635/resolution/960x540/codecs/ignored
#EXT-X-STREAM-
INF:BANDWIDTH=3020600,CODECS="mp4a.40.2,avc1.64001F",RESOLUTION=1024x576,SUBTITLES="subs"
https://ajo.prod.reuters.tv/rest/v2/playlist/assets/57630,163881,163829,57447,127691,163890,127676,163830,127649,163855,57635/resolution/1024x576/codecs/ignored
#EXT-X-STREAM-
INF:BANDWIDTH=4021600,CODECS="mp4a.40.2,avc1.64001F",RESOLUTION=1280x720,SUBTITLES="subs"
https://ajo.prod.reuters.tv/rest/v2/playlist/assets/57630,163881,163829,57447,127691,163890,127676,163830,127649,163855,57635/resolution/1280x720/codecs/ignored
#EXT-X-STREAM-
INF:BANDWIDTH=4998400,CODECS="mp4a.40.2,avc1.640028",RESOLUTION=1920x1080,SUBTITLES="subs"
https://ajo.prod.reuters.tv/rest/v2/playlist/assets/57630,163881,163829,57447,127691,163890,127676,163830,127649,163855,57635/resolution/1920x1080/codecs/ignored
#EXT-X-STREAM-INF:BANDWIDTH=113300,CODECS="mp4a.40.2",SUBTITLES="subs"
https://ajo.prod.reuters.tv/rest/v2/playlist/assets/57630,163881,163829,57447,127691,163890,127676,163830,127649,163855,57635/codecs/ignored
}}}
WebVTT asset manifest:
{{{
#EXTM3U
#EXT-X-VERSION:4
#EXT-X-TARGETDURATION:96
#EXTINF:5.5666, no desc
https://ajo.prod.reuters.tv/rest/v2/captions/vtt/asset/57630
#EXT-X-DISCONTINUITY
#EXTINF:4.4, no desc
https://ajo.prod.reuters.tv/rest/v2/captions/vtt/asset/163881
#EXT-X-DISCONTINUITY
#EXTINF:4.9667, no desc
https://ajo.prod.reuters.tv/rest/v2/captions/vtt/asset/163829
#EXT-X-DISCONTINUITY
#EXTINF:4.6333, no desc
https://ajo.prod.reuters.tv/rest/v2/captions/vtt/asset/57447
#EXT-X-DISCONTINUITY
#EXTINF:2.3, no desc
https://ajo.prod.reuters.tv/rest/v2/captions/vtt/asset/127691
#EXT-X-DISCONTINUITY
#EXTINF:2.3, no desc
https://ajo.prod.reuters.tv/rest/v2/captions/vtt/asset/127676
#EXT-X-DISCONTINUITY
#EXTINF:65.2, no desc
https://ajo.prod.reuters.tv/rest/v2/captions/vtt/asset/163830
#EXT-X-DISCONTINUITY
#EXTINF:2.3, no desc
https://ajo.prod.reuters.tv/rest/v2/captions/vtt/asset/127649
#EXT-X-DISCONTINUITY
#EXTINF:95.7, no desc
https://ajo.prod.reuters.tv/rest/v2/captions/vtt/asset/163855
#EXT-X-DISCONTINUITY
#EXTINF:5.0, no desc
https://ajo.prod.reuters.tv/rest/v2/captions/vtt/asset/57635
#EXT-X-ENDLIST
}}}
Sample WebVTT blob:
{{{
WEBVTT
X-TIMESTAMP-MAP=MPEGTS:900000,LOCAL:00:00:00.000
1
00:00:00.370 --> 00:00:01.700 line:-3
You're watching Reuters TV.
2
00:00:02.790 --> 00:00:04.270 line:-3
Here are your top stories.
}}}
FFmpeg input report:
{{{
Input #0, hls,applehttp, from
'https://ajo.prod.reuters.tv/rest/v2/xato/playlist/assets/57630,163881,163829,57447,127691,163890,127676,163830,127649,163855,57635/video.m3u8':
Duration: 00:03:12.37, start: 10.000000, bitrate: N/A
Program 0
Metadata:
variant_bitrate : 360800
Stream #0:0: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz,
stereo, fltp
Metadata:
variant_bitrate : 360800
Stream #0:1: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p,
320x180 [SAR 1:1 DAR 16:9], 30 fps, 30 tbr, 90k tbn, 60 tbc
Metadata:
variant_bitrate : 360800
Program 1
Metadata:
variant_bitrate : 499400
Stream #0:2: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz,
stereo, fltp
Metadata:
variant_bitrate : 499400
Stream #0:3: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p,
512x288 [SAR 1:1 DAR 16:9], 30 fps, 30 tbr, 90k tbn, 60 tbc
Metadata:
variant_bitrate : 499400
Program 2
Metadata:
variant_bitrate : 984500
Stream #0:4: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz,
stereo, fltp
Metadata:
variant_bitrate : 984500
Stream #0:5: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p,
640x360 [SAR 1:1 DAR 16:9], 30 fps, 30 tbr, 90k tbn, 60 tbc
Metadata:
variant_bitrate : 984500
Program 3
Metadata:
variant_bitrate : 1490500
Stream #0:6: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz,
stereo, fltp
Metadata:
variant_bitrate : 1490500
Stream #0:7: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p,
854x480 [SAR 1280:1281 DAR 16:9], 30 fps, 30 tbr, 90k tbn, 60 tbc
Metadata:
variant_bitrate : 1490500
Program 4
Metadata:
variant_bitrate : 2006400
Stream #0:8: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz,
stereo, fltp
Metadata:
variant_bitrate : 2006400
Stream #0:9: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p,
960x540 [SAR 1:1 DAR 16:9], 30 fps, 30 tbr, 90k tbn, 60 tbc
Metadata:
variant_bitrate : 2006400
Program 5
Metadata:
variant_bitrate : 3020600
Stream #0:10: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz,
stereo, fltp
Metadata:
variant_bitrate : 3020600
Stream #0:11: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p,
1024x576 [SAR 1:1 DAR 16:9], 30 fps, 30 tbr, 90k tbn, 60 tbc
Metadata:
variant_bitrate : 3020600
Program 6
Metadata:
variant_bitrate : 4021600
Stream #0:12: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz,
stereo, fltp
Metadata:
variant_bitrate : 4021600
Stream #0:13: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p,
1280x720 [SAR 1:1 DAR 16:9], 30 fps, 30 tbr, 90k tbn, 60 tbc
Metadata:
variant_bitrate : 4021600
Program 7
Metadata:
variant_bitrate : 4998400
Stream #0:14: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz,
stereo, fltp
Metadata:
variant_bitrate : 4998400
Stream #0:15: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p,
1920x1080 [SAR 1:1 DAR 16:9], 30 fps, 30 tbr, 90k tbn, 60 tbc
Metadata:
variant_bitrate : 4998400
Program 8
Metadata:
variant_bitrate : 113300
Stream #0:16: Audio: aac (LC) ([15][0][0][0] / 0x000F), 48000 Hz,
stereo, fltp
Metadata:
variant_bitrate : 113300
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/7337>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list