1

我使用 XML 属性 URL 播放视频。我在 Roku 中使用默认媒体播放器。我知道 Roku 默认提供显示字幕的选项。在我在 VLC 媒体播放器中播放的视频中,提供给 CC。但是在 Roku 中显示字幕或 CC 需要任何单独的代码吗?

我尝试过这种方式编辑后的帖子:

m.liveVideo = m.top.findNode("liveVideo") '<Video id = "liveVideo" />
m.videoData = CreateObject("RoSGNode", "ContentNode")
m.videoData.SubtitleConfig = {
        trackName: "eia608/708"
}
m.videoData.ClosedCaptions = "true"
m.liveVideo.content = m.videoData

但是上面的代码不起作用。

4

2 回答 2

1

您缺少该SubtitleTracks属性,并且直播的标准通常是"eia608/1"(请参阅此处)。另外,不要担心ClosedCaptions属性,默认情况下是 true。

以下是您应该如何构建该subtitleTracks字段:

m.liveVideo = m.top.findNode("liveVideo")
m.videoData = CreateObject("roSGNode", "ContentNode")
m.videoData.subtitleTracks = [{language: "EN", description: "EN", trackName: "eia608/1"}]
m.videoData.subtitleConfig = {trackName: "eia608/1"}
m.liveVideo.content = m.videoData
于 2019-08-31T18:47:43.380 回答
0

在 Roku 中,您必须为视频的content-metadata设置“ SubtitleConfig ” 。并确保“ ClosedCaptions ”设置为true。这很容易实现。有关详细信息,请查看以下链接-

https://developer.roku.com/en-gb/docs/developer-program/getting-started/architecture/content-metadata.md

为了解释考虑下面的例子 -

  1. 假设您的“videoPlayer”(xml 文件中的“Video”节点实例)节点实例是“m.videoPlayer”(在 brs 文件中),即

    m.videoPlayer = m.top.findNode("videoPlayer")

  2. 创建内容节点——

    m.videoData = CreateObject("RoSGNode", "ContentNode")

  3. 将此节点的视频的所有元数据(例如 url、Streamformat 等)与 SubtitleConfig 一起设置为--

    m.videoData.SubtitleConfig = { trackName: "eia608/708" }

  4. 将此内容分配给视频内容为--

    m.videoPlayer.content = m.videoData

希望这会有所帮助。

于 2019-08-30T07:04:43.190 回答