嗨!
我想创建一个支持 TTML 类型隐藏字幕的应用程序。
我的 ism/manifest 文件包含基于 TTML 的隐藏式字幕,请问我该如何使用它?
我找到了这个网站, https://developers.google.com/cast/docs/player ,他们在其中描述了以下内容:
分段 TTML 和 WebVTT
使用分段 TTML 进行平滑流式处理和 WebVTT - HLS 的 Web 视频文本轨道。
启用:
protocol_.enableStream(streamIndex, true); player_.enableCaptions(true);
但我找不到我的问题的例子。在接收方创建主机后是否必须启用此功能?是否有任何示例应用程序?
更新#1
这是我的代码:
window.onload = function() {
var mediaElement = document.getElementById('video'); //video is a html video tag
var mediamanager = new cast.receiver.MediaManager(mediaElement);
var url = "http://playready.directtaps.net/smoothstreaming/SSWSS720H264/SuperSpeedway_720.ism/Manifest"; //Just a sample URL
var host = new cast.player.api.Host({ 'mediaElement': mediaElement, 'url': url });
window.player = new cast.player.api.Player(host);
protocol = cast.player.api.CreateSmoothStreamingProtocol(host);
var initStart = 0;
window.player.load(protocol, initStart);
mediamanager.loadedmetadata = function(loadinfo) {
//onMetadataLoaded fired, set the caption
}
}
它不起作用。所以我决定获取流:
var streamCount = protocol.getStreamCount();
streamCount 包含 0。清单包含隐藏式字幕,我应该使用其他东西,而不是 getStreamCount()?
非常感谢!