Ios 为带有字幕的HTTP实时流媒体编码视频

Ios 为带有字幕的HTTP实时流媒体编码视频,ios,video-streaming,http-live-streaming,Ios,Video Streaming,Http Live Streaming,我一直在遵循苹果的指南,并在我的应用程序中运行良好,但我想在视频中嵌入字幕。这表明Netflix已经做到了 我的源视频使用QuickTime Pro通过.srt文件嵌入了字幕,在QuickTime和我的iOS应用程序中播放视频时可以看到字幕。一旦我使用mediafilesegmenter将视频分割成更小的.ts文件(如HLS所需),字幕就会消失。我正在使用 是否有一种特殊的方式来编码源视频或使用mediafilesegmenter进行字幕翻译 我认为对于浏览器中的HTTP直播,不支持字幕(我可能

我一直在遵循苹果的指南,并在我的应用程序中运行良好,但我想在视频中嵌入字幕。这表明Netflix已经做到了

我的源视频使用QuickTime Pro通过.srt文件嵌入了字幕,在QuickTime和我的iOS应用程序中播放视频时可以看到字幕。一旦我使用mediafilesegmenter将视频分割成更小的.ts文件(如HLS所需),字幕就会消失。我正在使用


是否有一种特殊的方式来编码源视频或使用mediafilesegmenter进行字幕翻译

我认为对于浏览器中的HTTP直播,不支持字幕(我可能错了)

不过,也有类似的多边形填充,允许在iOS上的视频中添加字幕。现在,我知道captionator适用于非HLS视频,但不确定它是否适用于HLS…您需要进行研究/测试



另外,如果您使用的是本机应用程序,那么您正在寻找支持字幕等内容的定时元数据。

ts流中可能有字幕(例如EIA-608或EIA-708)。我不知道有什么好的免费工具可以在ts流中插入这样的字幕,但可能会卖给你一些东西(价格荒谬)

不幸的是,许多HLS播放器会忽略字幕,因为HLS规范没有提到如何处理字幕曲目。在您自己的应用程序中,您可以通过查找已经包含EIA-608/EIA-708文本的ts文件并对其进行分段来测试它

坦率地说,我认为在TS中嵌入字幕是一条死胡同,您会发现编写由TimedMetadata触发的自己的字幕显示器更容易

==更新===


自HLS草案第9版(2012年9月22日)以来,HLS支持WebVTT字幕。我不知道有什么工具可以用它们来准备流。

如果它对某人有帮助,我有一个应用程序可以从Vimeo Pro帐户流式传输HLS内容。Vimeo允许您添加WebVTT字幕,这些字幕在iOS和tvOS设备上处理得非常好


为了生成.vtt文件,我使用了YouTube,如下所示:

这是一个原生应用程序-我使用了TimedMetadata,但希望HTTP直播能够支持字幕。我不明白为什么不可能将字幕拆分并附加到各个媒体段。谢谢你的回答,这几乎就是我得出的结论。我现在主要使用TimedMetadata。我很想看到苹果为HLS添加适当的字幕支持,但现在我认为可以放心地假设这是不可能的。你可以使用苹果压缩机在HLS流中添加闭路字幕,大约50美元。但是是的,webvtt可能更好,有一个开源javascript项目来编辑它们,苹果为它们提供了mediasubtitlesegmenter来将.vtt文件分割成更小的.vtt文件,供HLS使用