We're having an issue playing Live videos with SMPTE-TT (TTML) subtitles. Our player is configured to stream the video in DASH with PlayReady DRM. The video includes a single track of very basic TTML subtitles without any of the fancier SMPTE-TT features.
Yet the video does not play at all even if subtitles are not enabled on the user’s device. Interestingly, while playback fails for Live videos, it works fine for VOD (not Live) videos that include these same TTML subtitles. And comparatively, it works fine for CEA608/708 subtitles (not TTML) on both Live and VOD videos. We've tried quite a few things to debug this but have had no success.
The Roku documentation seems to indicate that TTML subtitles are supposed to be supported for Live video. Somebody please confirm if this is or isn't the case.
When this adaptationSet is in the manifest for the subtitles:
<AdaptationSet contentType="text" mimeType="application/ttml+xml" segmentAlignment="true" lang="en" startWithSAP="1">
<Role schemeIdUri="urn:mpeg:dash:role:2011" value="subtitle"/>
<Representation id="sub_en" bandwidth="1000">
<SegmentTemplate timescale="1" duration="4" media="subtitles/en/filesequence$Number$.ttml" startNumber="0"/>
</Representation>
</AdaptationSet>
We consistently get the following error when attempting playback on Roku:
Error on stream playback. Error info, if any:
Error Code: -5
Error Msg: no valid bitrates
Error Info :
<Component: roAssociativeArray> =
{
category: "mediaerror"
clipid: 68
dbgmsg: "buffer:search:demux:Errors seen on all bitrates:extra:etype:buffer:is_init:1:lasterror:970:retry:0"
drmerrcode: 0
errcode: 9
ignored: false
source: "buffer:search:demux"
}
Here's a sample of our TTML excerpt:
<tt xml:lang="en" xmlns="http://www.w3.org/ns/ttml" xmlns:tts="http://www.w3.org/ns/ttml#styling">
<head>
<layout>
<region xml:id="rBottom" tts:origin="10% 77%" tts:extent="80% 20%">
<style tts:textAlign="center"/>
<style tts:fontSize="0.7c"/>
</region>
</layout>
</head>
<body>
<div>
<p region="rBottom" begin="466574:14:04.000" end="466574:14:05.423">
this is a subtitle
</p>
</div>
</body>
</tt>
We have a Live event coming up soon on April 1 that requires this format to be supported, so any assistance or ideas would be appreciated. If someone can provide more insight on this error, reveal known limitations, or offer code samples on how how to correctly configure the player for handling TTML subtitles on live streams, it would be very helpful.