Open cconcolato opened 5 years ago
The Timed Text Working Group just discussed Support for Karaoke tt-reqs#9
, and agreed to the following:
RESOLUTION: We will take these requirements forward for our 2019 work.
Have you seen Microsoft's proposed Highlight API? It seems relevant.
https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/master/highlight/explainer.md
Please add the tag "accessibility" (if there is such a tag). This can help hearing impaired people.
@lborgman please describe what you mean by an "accessibility" "tag"? there are already many accessibility features in TTML, so please indicate what you are asking for that is not already supported in TTML
Karaoke is a well-known timed text application: song lyrics are displayed on top of a corresponding video clip, with timed emphasis on the words or characters to indicate to the viewer which words/characters have been sung, are being sung or will be sung.
The emphasis can be of different types: using a different text color or placing a (bouncing) dot or image on the current word being sung. The emphasis can be constant or be continuous with transitions within a word or from word to word. The emphasis behavior and style is constant within a document.
Additional transitions can be applied before/after/between timed text events.
Examples of Karaoke can be found on YouTube where the text is burned in the video: Moana, or Frozen.
We propose two types of requirements:
These requirements are applicable to TTML and IMSC.
R1: It shall be possible to associate time values with words/spans of characters of a timed text event without affecting their visibility (as would be done with a begin attribute on a ‘p’ or ‘span’ element). Such time values are hereafter called inner-event time values.
R2: It shall be possible to indicate the beginning and end of a karaoke section within a timed text document that also conveys non-karaoke content before and/or after the karaoke content.
R3: It shall be possible to indicate transitions between timed text events.
R4: It shall be possible, at the document header level, to associate karaoke style changes with inner-event time values.
R5: It shall be possible to let the presentation processor apply its own style and behavior (including transitions) across multiple karaoke documents (e.g. for consistency of the user experience across documents).
R6: It should be possible to associate transition styles at the beginning/end or between certain events.
All “possible solutions” proposed in here are initial ideas towards a solution and not full-fledged solutions. It is expected that they will be changed by the TTWG.
3.1. Without animation elements
Defining timing could be done for example with a new element (in the same or different namespace, or using ttm:item or else):
A simple case for single timed text event could be as follows (space added for readability):
A more complex case (karaoke within non-karaoke content and with event transitions) could be:
The association of a presentation-processor-specific behavior to the markers for karaoke could be simply done based on the
type
attribute, which sayskaraoke
in this case.The association of document-specific styles to the markers could also be done via the style element:
where
karaoke-emphasis
would be based on text-emphasis and extended with the ability to:3.2. using (for discrete animations)
Defining timing could be done as follows:
The same style definitions as in the previous case could be used. Transitions would have to be added.