首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有平滑流和PlayReady的PlayReady TTML闭路字幕

具有平滑流和PlayReady的PlayReady TTML闭路字幕
EN

Stack Overflow用户
提问于 2014-03-06 10:15:12
回答 2查看 1.5K关注 0票数 0

喂!

我想要创建一个应用程序,它支持TTML类型的封闭标题。

我的ism/清单文件包含基于TTML的封闭标题,我想问如何使用它?

我找到了这个网站,https://developers.google.com/cast/docs/player,他们在这里描述了以下内容:

分段TTML & WebVTT

将分段的TTML用于平滑流,使用WebVTT - Web视频文本轨道进行HLS。

使:

protocol_.enableStream(streamIndex,真);player_.enableCaptions(真);

但我找不到一个例子来解释我的问题。在接收端创建我的主机之后,我必须启用这个功能吗?这有什么样的应用程序吗?

更新#1

这是我的密码:

代码语言:javascript
复制
  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
  }


  }

它不起作用。所以我决定去找溪流:

代码语言:javascript
复制
  var streamCount = protocol.getStreamCount();

streamCount包含0。清单包含封闭的标题,我应该使用其他的东西,而不是getStreamCount()吗?

非常感谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-06 17:52:05

正确的方法是侦听元数据事件。一旦该事件被触发,您就可以获得流计数,但在触发该事件之前不要这样做。然后,您可以为您想要的索引启用流(对于您想要的语言,以防有多个),然后启用标题。如果要更改语言,首先需要禁用标题,然后选择不同的流索引,然后再次启用。

票数 1
EN

Stack Overflow用户

发布于 2014-03-06 12:17:41

还没有样品。

是的-你应该启用后,创建主机,并开始播放。

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

https://stackoverflow.com/questions/22221346

复制
相关文章

相似问题

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