ChromeCast 是否支持在 WebVTT 字幕流中格式化字幕文本?

Does ChromeCast support formatting subtitle text in WebVTT subtitle streams?

我正在将带字幕的视频发送到 Chromecast 设备。字幕位于单独的 WebVTT 流中。 WebVTT 数据是通过转录 .srt 文件创建的。我将 SRT 字幕格式部分翻译为 VTT 格式。 (其他格式也转录,但我们还是用SRT吧)

问题:我正在使用 <i>...</i> 来格式化 WebVTT 字幕中的斜体文本,正如我阅读 WebVTT 规范一样,这是格式化斜体文本的正确方法。但是 ChromeCast 似乎没有解析标签。 <i></i> 出现在屏幕的字幕文本中。这似乎表明 ChromeCast 甚至不支持字幕文本的基本格式。

在某些情况下 ChromeCast 应该遵守格式代码? VTT 文件中是否需要 CSS 样式表?或 class 代码(例如,对应 css)?

如果有一种方法可以在字幕中设置文本格式,我愿意付出更多努力。但这是很多工作,而且删除所有格式并不是那么可怕。 :-/ 请告诉我可以做到(并给我一个提示),我会做到的。

应用程序是一个 Android 应用程序,使用 Android chromecast SDK。我已经成功推送WebVTT字幕

示例:

WEBVTT

1
00:00:05.000 --> 00:00:11.000
<i>In the previous episode...</i>

根据这个 SO post,它说 WebVTT 是 Chromecast 支持的字幕格式之一。 Chrome 上的 Chrome 浏览器随后将呈现与视频流同步的隐藏式字幕文本。还可以使用 CSS 动态控制隐藏式字幕文本的格式。发件人有两条自定义消息,它们将增加和重置隐藏式字幕文本大小。

在 Chromecast 上了解有关各种受支持媒体的更多信息:https://developers.google.com/cast/docs/media

WebVTT 支持是部分的。

支持:

  • <i></i>,以及<b></b>

  • 定位和对齐属性,例如 00:06.790 --> 00:07.830 position:10%,line-left align:left size:35%(可能是一个子集)

  • &lt;&gt;&amp; 个实体

不支持:

  • CSS 任何一种。
  • <c></c> 任何变体(例如不是 <c.red>
    • <ruby
  • <v>

而且可能不是章节,因为我无法想象如果实现了它们会用来做什么。

第一行存在字节顺序标记会导致整个文件被拒绝。 (这可能没有错。但这对 Windows 开发人员来说是危险的)。

所有换行符和“\n”都是硬换行符。