0

嗨!

我有一个带有 Smooth Streaming 和 PlayReady 的 ism 文件。这个ism包含分段ttml格式的标题。

但是这个 ttml 有一个换行符,例如: p8:br 我如何解析它并将这些字符替换为 /n (或 Google ChromeCast 可以处理的任何内容)?

所以我可以看到两行而不是一行的字幕。

我知道我可以使用 protocol.getStreamInfo(index) 获取流信息,但是之后我能做什么?

更新#1

我们为其他平台做一个应用程序,方法如下。ttml 变量包含电影的标题。

  ttml = ttml.Replace("<p7:br />", "\n");
  ttml = ttml.Replace("<p8:br />", "\n");
  ttml = ttml.Replace("<p7:br/>", "\n");
  ttml = ttml.Replace("<p8:br/>", "\n");
  ttml = ttml.Replace("<br />", "\n");
  ttml = ttml.Replace("<br/>", "\n");

在换行符替换为“\n”后,应用程序开始显示当前文本取决于时间(例如,电影底部有一个标签。)

更新#2

以下是 dfxp 的示例:

   <p p7:region="speaker" p7:begin="00:04:31:21" p7:end="00:04:37:22"  xmlns:p7="http://www.w3.org/2006/10/ttaf1">Talán mert nem vagy olyan okos?<p7:br />Mert lassú a felfogásod?</p>
   <p p7:region="speaker" p7:begin="00:04:38:23" p7:end="00:04:42:11" xmlns:p7="http://www.w3.org/2006/10/ttaf1">Eressz, különben<p7:br />nem állok jót magamért.</p>  
   <p p7:region="speaker" p7:begin="00:04:52:17" p7:end="00:04:55:10" xmlns:p7="http://www.w3.org/2006/10/ttaf1">Mesélj a nagypapáról.</p>
   <p p7:region="speaker" p7:begin="00:05:08:18" p7:end="00:05:14:12"   xmlns:p7="http://www.w3.org/2006/10/ttaf1">A cukornádföldön voltam.<p7:br />Akkor kapott el, mikor egyedül voltam.</p>

在示例的最后一行,设备无法识别字符并以下列方式显示字幕:

A cukornádföldön voltam.Akkor kapott el, mikor egyedül voltam。

代替

一个 cukornádföldön 伏特姆。

Akkor kapott el, mikor egyedül voltam。

所以我想在 ChromeCast API 的帮助下做一些类似的操作。但这只是简单地更改字符会更容易,因为 ChromeCast 可以完美地处理时间。

非常感谢!

4

2 回答 2

0

媒体播放器库中有一个错误将很快修复;这应该解决这个命名空间问题。发布修复程序后,我将更新此帖子。

于 2014-03-14T16:29:56.320 回答
0

我对此进行了工程检查,媒体播放器库正在将 br 转换为换行符,我们忽略了命名空间。

如果您有一些有问题的样品,请发送给我们。

于 2014-03-12T23:22:44.493 回答