我已经创建了一个自定义的CAF接收器来播放MPEG-破折号的内容,这是加密使用的宽葡萄酒。我的内容还在清单中嵌入了TTML字幕,可以动态更改。
播放我的加密内容就像一种魅力--甚至比在V2接收器上的效果还要好。我甚至可以选择不同的字幕。
然而,字幕的定位却是遥不可及。他们不是集中在他们的球员,有时他们被切断在一个提示(见我的附图)。
我可以看出,CAF接收者使用shaka-player,据我所知,该播放器处理字幕本身- https://github.com/google/shaka-player/tree/master/lib/text本身的解析。
据我所知,从CAF接收器文档中,没有办法操纵字幕在接收器上的位置。它们不会添加到DOM或任何东西中,所以您不能用css来破解它。您唯一能做的就是在TextTrackStyle上设置一个TextTracksManager,它只允许设置颜色等等。您没有选择执行textAlign或类似的操作。
我的问题:
任何帮助都是非常感谢的!
示例1

ttml示例:
<tt xmlns="http://www.w3.org/ns/ttml"
xmlns:tt="http://www.w3.org/ns/ttml"
xmlns:ttm="http://www.w3.org/ns/ttml#metadata"
xmlns:tts="http://www.w3.org/ns/ttml#styling"
xmlns:ttp="http://www.w3.org/ns/ttml#parameter"
xmlns:ebutts="urn:ebu:tt:style" xmlns:ebuttm="urn:ebu:tt:metadata"
xml:lang="" ttp:timeBase="media">
<head>
<metadata>
<ebuttm:documentMetadata>
<ebuttm:conformsToStandard>urn:ebu:tt:distribution:2014-01</ebuttm:conformsToStandard>
</ebuttm:documentMetadata>
</metadata>
<styling>
<style xml:id="Style0_0" tts:fontFamily="proportionalSansSerif" tts:backgroundColor="#00000099" tts:color="#FFFF00" tts:fontSize="100%" tts:lineHeight="normal" ebutts:linePadding="0.5c" />
<style xml:id="textAlignment_0" tts:textAlign="center" />
</styling>
<layout>
<region xml:id="Region" tts:origin="10% 10%" tts:extent="80% 80%" tts:displayAlign="after" />
</layout>
</head>
<body>
<div>
<p region="Region" style="textAlignment_0" begin="114:24:22.120" end="114:24:24.120" xml:id="sub_0">
<span style="Style0_0">Das hat sich im Grunde</span>
<br />
<span style="Style0_0">aus dem Spiel des Seins so ergeben.</span>
</p>
</div>
</body>
</tt>发布于 2018-01-12 12:52:38
事实证明,这是一个与VTTRegion在Chrome上的shaka-player中的使用有关的错误,这个问题已经在v2.2.9和v2.3.0中得到了修复。CAF接收器当前加载v2.2.1。
https://github.com/google/shaka-player/issues/1188
在Google更新CAF接收器以使用较新版本的播放器之前,您要么不得不忍受错误的字幕,要么进行黑客操作来覆盖接收器上加载的播放器版本。
https://stackoverflow.com/questions/48210076
复制相似问题