问题标签 [ttml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
229 浏览

youtube - 在 Youtube 的 TTML 字幕中定位

有人可以解释并提供一个示例,说明定位如何在 TTML 格式的字幕中作为字幕上传到 Youtube 中?

该链接表明确实如此,但我似乎无法弄清楚如何使其在 youtube 中工作。 https://support.google.com/youtube/answer/2734698

0 投票
1 回答
235 浏览

c# - 如何将 TTML(定时文本标记语言)刻度转换为秒

有谁知道如何将 TTML-tick 转换为秒?例如,如何将“1281697500”转换为 ~2min7sec?

0 投票
1 回答
2526 浏览

video - 使用 ffmpeg 向 mp4 添加某种字幕

我有一个字幕(看起来确实很像),但我不知道如何将它添加到我正在创建的 MP4 中。首先是字幕的十六进制转储:

老实说,我以前从未见过这样的事情......

所以我现在运行的命令是这样的:

ffmpeg -y -i 'audionld#24000.mp4' -i 'audionld#48000.mp4' -i 'textnld.mp4' -i 'video.mp4' -map 0:a -map 1:a -map 2:d -map 3:v -metadata:s:a:0 language=nld -metadata:s:a:1 language=nld -acodec copy -bsf:a aac_adtstoasc -vcodec copy -c:d copy -movflags faststart "test.mp4 " 2>&1

这导致此输出:

这给出了错误:在流#2 中找不到编解码器无标记,容器中当前不支持编解码器无法为输出文件#0 写入标头(编解码器参数不正确?):参数无效

所以我试着像这样玩地图:

-map 2:s ==> 给我:Stream map '2:s' 不匹配任何流。要忽略这一点,请添加尾随“?” 到地图。

-地图2:s?==> 没有给我错误,但字幕流没有添加到最终文件中。

也许我首先必须将字幕转换为 srt 等,但为此我在谷歌上找不到这是什么类型的文件。

任何帮助将不胜感激!

谢谢

- -编辑 - -

特此我用来在 PHP 中转换它的代码:

0 投票
2 回答
51 浏览

w3c - TTML timeExpression 的 W3C 语法表示中的“+”是什么意思?

我想了解 TTML 中 timeExpressions 的有效格式。 规范的这一部分描述了语法。这是一个摘录:

我对文档的命名在一定程度上是熟悉的,例如我理解:

  • |表示或
  • (...)团体
  • ?表示可选

但这是什么+意思?


我会假设它意味着“一个或多个”,就像它在正则表达式中所做的那样,但是,如果是这样的话,为什么规范会这样写:

而不是简单地:

0 投票
1 回答
83 浏览

c# - 从 ttml 文件 C# 中删除 xml 节点

由于我无法找到上一个问题的答案: Xmlstarlet ed encoding and powershell inside Process C# 我想尝试另一条路径。

我只需要能够从 ttml 文件中删除节点(这是一种用于字幕的 xml)。使用 xmlstarlet 我可以这样做:

但我无法在不丢失 Windows Powershell 上的 utf-8 编码的情况下做到这一点(我能够在 linux bash 上做到这一点)。

如果我想在 C# 上做同样的事情,我该怎么做?我当然知道如何打开/读取/写入文本文件,但我不知道是否有办法创建具有特定命名空间的 xml,以及如何删除不包含 xml:lang languageToKeep 的每个节点。

编辑。像这样的东西:

但我认为我需要命名空间......我不知道怎么做。

0 投票
1 回答
975 浏览

chromecast - CAF Receiver:字幕定位

我创建了一个自定义 CAF 接收器,用于播放使用 Widewine 加密的 MPEG-DASH 内容。我的内容还嵌入了可以动态更改的清单中的 TTML 字幕。

播放我的加密内容就像一种魅力——甚至比在 V2 接收器上更好。我什至可以在不同的字幕之间进行选择。

但是,字幕的定位很差。它们不在播放器的中心,有时它们在球杆中间被切断(参见我的附图)。

我可以看出 CAF 接收器使用 shaka-player,据我所知,它可以处理字幕本身的解析 - https://github.com/google/shaka-player/tree/master/lib/text

据我从 CAF 接收器文档中得知,无法操纵接收器上的字幕位置。它们没有添加到 DOM 或任何东西中,所以你不能用 css 破解它。您唯一能做的就是在TextTrackStyle上设置 a TextTracksManager,它只允许设置颜色等。您没有其他选择textAlign或类似的选择。

我的问题:

  • 这是 CAF 接收器/shaka 播放器中的已知错误吗?
  • 有没有其他人有类似的问题?如果是这样,您是否设法修复它?

任何帮助是极大的赞赏!

示例 1

切断字幕

ttml 示例:

0 投票
0 回答
607 浏览

chromecast - CAF:即使在 shaka-player 更新后字幕定位问题

我们创建了一个自定义 CAF v3 接收器。我们遇到了与此处描述的问题相同的问题(屏幕左上角的字幕)CAF 接收器:字幕定位。看起来谷歌设法在 shaka-player v2.2.10 中解决了这个问题。https://issuetracker.google.com/issues/71890891。但是,即使在Google 将其 caf 库引用更新为 shaka-player.js v2.2.10 之后,我们仍然遇到字幕定位问题。这是一个ttml的例子。

ttml:

我不确定,但我怀疑这里的“扬声器”区域中的tts:origin可能是原因。即使在谷歌的参考更新之后,还有人遇到同样的问题吗?为了自定义字幕定位,有没有其他选择?

0 投票
0 回答
131 浏览

string - 如何将文档转换为 .str 和 .ttml 文件

我在记事本中保存了一个文档,但由于某种原因,在保存后,它出现在 .str.txt 和 .ttml.txt 的属性中,而不仅仅是 .str 或 .ttml,这正是我想要的。

我认为我已经厌倦了这一切,遵循教程,我很高兴知道我做错了什么,或者只是 - 没有做?

0 投票
0 回答
207 浏览

mpeg-dash - 如何在 mac 中设置 MPEG-DASH?

我想用 ttml 进行 MPEG-DASH 设置(任何音频和视频都可以)。

但是想放我自己的TTML内容。

它在任何链接中可用吗?我有 mac 和 ubunthu

0 投票
2 回答
140 浏览

javascript - 如何通过 TTML 浏览并将所有时间\标题放入 JSON 文件

我有一个包含视频字幕的 ttml 文件,我想通过所有对 time\caption 获取并将它们放入 JSON 文件中,我尝试过https://www.npmjs.com/package/ttml?activeTab=readme但是它没有用这个。有任何想法吗 ?谢谢