fix(subtitle): place fragment-relative ISM TTML cues on the track timeline

Smooth Streaming TTML times cues from each fragment's start; a whole track stacked into the first fragment. Also stop rebase_ttml failing on a track with no cues.
This commit is contained in:
imSp4rky
2026-10-30 23:40:46 -06:00
parent 0c45195fe2
commit cbeff379fb
4 changed files with 149 additions and 28 deletions
+2 -1
View File
@@ -37,7 +37,8 @@ shown in track listings. The **Extension** column is the file extension used on
unwrapped into their plain counterparts (`fTTML` becomes TTML and `fVTT` becomes
WebVTT), so you always end up with an editable text subtitle. For a DASH track, the
unwrap also subtracts the manifest's `presentationTimeOffset` from the cue times, so the
subtitles stay in sync with the video. Note that this is a
subtitles stay in sync with the video. For an ISM track whose cues count from the start of
each fragment, the unwrap moves every cue onto the timeline of the track. Note that this is a
one-way, source-only relationship: you can convert *from* these boxed formats, but no
backend can write them as an output target, so they can never be a conversion
destination.