首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从m3u8 URL显示HLS视频流的封闭标题格式

如何从m3u8 URL显示HLS视频流的封闭标题格式
EN

Stack Overflow用户
提问于 2016-12-05 20:07:00
回答 1查看 4.2K关注 0票数 3

我正在开发一个Roku和TVOS应用程序,它将播放HLS视频(视频点播和直播)以及MP4。根据罗库博士,环境影响评估-608在两者上都是支持的,并且也应该在TVOS上工作。

我的问题是,给定m3u8的URL,我如何才能知道在每个流中使用什么样的封闭字幕格式(EIA-608,WebVTT等)?

m3u8的内容(注1流表示没有CC,但它确实有):

代码语言:javascript
复制
#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=380000,RESOLUTION=400x228,CODECS="avc1.66.30, mp4a.40.2",CLOSED-CAPTIONS=NONE
http://d.com/i/video/2426832/2426832_,350,640,1000,2000,.mp4.csmil/index_0_av.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=750000,RESOLUTION=640x360,CODECS="avc1.77.30, mp4a.40.2",CLOSED-CAPTIONS=NONE
http://d.com/i/video/2426832/2426832_,350,640,1000,2000,.mp4.csmil/index_1_av.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1044000,RESOLUTION=1280x720,CODECS="avc1.64001f, mp4a.40.2",CLOSED-CAPTIONS=NONE
http://d.com/i/video/2426832/2426832_,350,640,1000,2000,.mp4.csmil/index_2_av.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2127000,RESOLUTION=1280x720,CODECS="avc1.64001f, mp4a.40.2",CLOSED-CAPTIONS=NONE
http://d.com/i/video/2426832/2426832_,350,640,1000,2000,.mp4.csmil/index_3_av.m3u8

第一流的m3u8内容

代码语言:javascript
复制
#EXTM3U
#EXT-X-TARGETDURATION:4
#EXT-X-ALLOW-CACHE:YES
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:1
#EXTINF:4.000,
http://d.com/i/video/2426832/2426832_,350,640,1000,2000,.mp4.csmil/segment1_0_av.ts
...

我可以使用ffprobe -hide_banner显示第一个程序的流已经关闭标题。例如:

代码语言:javascript
复制
Duration: 00:02:36.76, start: 0.100511, bitrate: 0 kb/s
  Program 0
    Metadata:
      variant_bitrate : 380000
    Stream #0:0: Video: h264 (Constrained Baseline) ([27][0][0][0] / 0x001B), yuv420p, 400x228 [SAR 1:1 DAR 100:57], Closed Captions, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
    Metadata:
      variant_bitrate : 380000
    Stream #0:1: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, mono, fltp, 48 kb/s
    Metadata:
      variant_bitrate : 380000

但是,正如您所看到的,Program0>Stream0只是说它有Closed captions -它没有列出所使用的封闭字幕技术的类型/规范。

如何显示Closed Captions的格式

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-05 23:48:00

WebVTT是所谓的“侧车”,或“带外”格式。这意味着标题位于单独的文件中,您必须下载该文件。您可以在m3u8中看到此文件的URL。在这里,标题是视频流本身的一部分。这种情况下唯一受支持的格式是EIA-608。对608的ffmpeg支持相当有限。我所知道的处理608的最好工具是[化]字幕 (完全公开,我写的)。我最近添加了一个ts2srt示例程序。公平的警告仍然有点过分。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40982432

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档