Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add subtitle->audio track linking #471

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion ebml_matroska.xml
Original file line number Diff line number Diff line change
Expand Up @@ -448,12 +448,18 @@ see [@!I-D.ietf-cellar-codec] for more info.</documentation>
<extension type="webmproject.org" webm="0"/>
</element>
<element name="TrackOverlay" path="\Segment\Tracks\TrackEntry\TrackOverlay" id="0x6FAB" type="uinteger">
<documentation lang="en" purpose="definition">Specify that this track is an overlay track for the Track specified (in the u-integer).
<documentation lang="en" purpose="definition">Specify that this track is an overlay track for the Track UID specified (in the u-integer).
That means when this track has a gap, see (#silenttracks-element) on SilentTracks,
the overlay track **SHOULD** be used instead. The order of multiple TrackOverlay matters, the first one is the one that **SHOULD** be used.
If not found it **SHOULD** be the second, etc.</documentation>
<extension type="webmproject.org" webm="0"/>
</element>
<element name="TrackLink" path="\Segment\Tracks\TrackEntry\TrackLink" id="0x6FAC" type="uinteger">
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should have a minver="5" as it won't be in Matroska v4.

<documentation lang="en" purpose="definition">Specify that subtitle track is suitable for use with the audio Track UID specified (in the u-integer).
Multiple subtitle tracks may link to the same audio track, and the same subtitle track may link to multiple audio tracks by providing multiple TrackLink elements.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should mention that the TrackEntry it belongs to **MUST** be a subtitle track, in a normative way.

</documentation>
<extension type="webmproject.org" webm="0"/>
</element>
<element name="CodecDelay" path="\Segment\Tracks\TrackEntry\CodecDelay" id="0x56AA" type="uinteger" minver="4" default="0" maxOccurs="1">
<documentation lang="en" purpose="definition">CodecDelay is The codec-built-in delay in nanoseconds.
This value **MUST** be subtracted from each block timestamp in order to get the actual timestamp.
Expand Down
21 changes: 21 additions & 0 deletions notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -327,6 +327,27 @@ Overlay tracks **SHOULD** be rendered in the same channel as the track its linke
When content is found in such a track, it **SHOULD** be played on the rendering channel
instead of the original track.

## Track Links

A track link indicates that a given subtitle track is suitable for use with a given audio track,
and that it **SHOULD** be eligible for autoselection when that audio track is selected.

For instance:
- A subtitle track containing a translation of an audio track in another language should be
linked to that track, but should not be linked to another audio track featuring a dub
into the same language with a different translation.
A subtitle track containing a transcription of the dub, if present, should be linked to the dub audio track.
- A forced subtitle track containing onscreen text consistent with the dialogue in an audio track
of the same language should be linked to that track, but should not be linked to another audio track
featuring a different translation into the same language.
- A subtitle track containing a transcription of an audio commentary track should be linked to
that audio commentary track, but not to other tracks featuring separate commentary recordings.

Track links are only necessary when the set of tracks available creates ambiguity about which
subtitles are appropriate for which audio, and function as a hint to the player to improve
its automatic track selection behavior. In cases where there is no such ambiguity, there is
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There should be a link to the (#default-track-selection) section here. And probably augment the "Subtitle selection" section on how to use the TrackLink to solve such ambiguity.

no need to explicitly specify track links.

## Multi-planar and 3D videos

There are two different ways to compress 3D videos: have each eye track in a separate track
Expand Down