- From: CVS User ihickson <cvsmail@w3.org>
- Date: Mon, 11 Mar 2013 23:43:39 +0000
- To: public-html-commits@w3.org
Update of /sources/public/html5/webvtt
In directory roscoe:/tmp/cvs-serv2917
Modified Files:
Overview.html
Log Message:
Split more WebVTT-specific things into the WebVTT spec. This also makes some normative changes to HTML for handling non-WebVTT cue types, but that shouldn't affect any existing implementations. (whatwg r7748)
--- /sources/public/html5/webvtt/Overview.html 2013/01/24 01:38:53 1.61
+++ /sources/public/html5/webvtt/Overview.html 2013/03/11 23:43:39 1.62
@@ -1,6 +1,6 @@
<!DOCTYPE html><html lang=en-US-x-hixie><meta charset=ascii><title>WebVTT Standard</title><script>
var loadTimer = new Date();
- var current_revision = "r" + "$Revision: 1.61 $".substr(11);
+ var current_revision = "r" + "$Revision: 1.62 $".substr(11);
current_revision = current_revision.substr(0, current_revision.length - 2);
var last_known_revision = current_revision;
function getCookie(name) {
@@ -122,7 +122,7 @@
<header class=head id=head><!-- the following line added by request of Ian Jacobs --><p class=logo><a href=http://www.w3.org/><img alt=W3C height=48 src=http://www.w3.org/Icons/w3c_home width=72></a></p>
<hgroup><h1 class="no-num no-toc">WebVTT</h1>
- <h2 class="no-num no-toc">Living Standard — Last Updated 24 January 2013</h2>
+ <h2 class="no-num no-toc">Living Standard — Last Updated 11 March 2013</h2>
</hgroup><dl><dt>Latest version:</dt>
<dd><a href=http://dev.w3.org/html5/webvtt/>http://dev.w3.org/html5/webvtt/</a></dd>
<dt>Participate:</dt>
@@ -157,22 +157,28 @@
<li><a href=#conformance><span class=secno>2 </span>Conformance</a>
<ol>
<li><a href=#dependencies><span class=secno>2.1 </span>Dependencies</a></ol></li>
- <li><a href=#the-webvtt-file-format><span class=secno>3 </span>The WebVTT file format</a>
+ <li><a href=#data-model><span class=secno>3 </span>Data model</a></li>
+ <li><a href=#the-webvtt-file-format><span class=secno>4 </span>The WebVTT file format</a>
<ol>
- <li><a href=#syntax><span class=secno>3.1 </span>Syntax</a></li>
- <li><a href=#parsing><span class=secno>3.2 </span>Parsing</a></li>
- <li><a href=#webvtt-cue-text-parsing-rules><span class=secno>3.3 </span>WebVTT cue text parsing rules</a></li>
- <li><a href=#webvtt-cue-text-dom-construction-rules><span class=secno>3.4 </span>WebVTT cue text DOM construction rules</a></li>
- <li><a href=#webvtt-cue-text-rendering-rules><span class=secno>3.5 </span>WebVTT cue text rendering rules</a>
+ <li><a href=#syntax><span class=secno>4.1 </span>Syntax</a></li>
+ <li><a href=#parsing><span class=secno>4.2 </span>Parsing</a></li>
+ <li><a href=#webvtt-cue-text-parsing-rules><span class=secno>4.3 </span>WebVTT cue text parsing rules</a></li>
+ <li><a href=#webvtt-cue-text-dom-construction-rules><span class=secno>4.4 </span>WebVTT cue text DOM construction rules</a></ol></li>
+ <li><a href=#rendering><span class=secno>5 </span>Rendering</a>
+ <ol>
+ <li><a href=#cues-in-isolation><span class=secno>5.1 </span>Cues in isolation</a></li>
+ <li><a href=#cues-with-video><span class=secno>5.2 </span>Cues with video</a>
<ol>
- <li><a href=#applying-css-properties-to-webvtt-node-objects><span class=secno>3.5.1 </span>Applying CSS properties to WebVTT Node Objects</a></li>
- <li><a href=#css-extensions><span class=secno>3.5.2 </span>CSS extensions</a>
+ <li><a href=#processing-model><span class=secno>5.2.1 </span>Processing model</a></li>
+ <li><a href=#applying-css-properties-to-webvtt-node-objects><span class=secno>5.2.2 </span>Applying CSS properties to WebVTT Node Objects</a></li>
+ <li><a href=#css-extensions><span class=secno>5.2.3 </span>CSS extensions</a>
<ol>
- <li><a href="#the-'::cue'-pseudo-element"><span class=secno>3.5.2.1 </span>The '::cue' pseudo-element</a></li>
- <li><a href="#the-':past'-and-':future'-pseudo-classes"><span class=secno>3.5.2.2 </span>The ':past' and ':future' pseudo-classes</a></ol></ol></ol></li>
- <li><a href=#iana><span class=secno>4 </span>IANA considerations</a>
+ <li><a href="#the-'::cue'-pseudo-element"><span class=secno>5.2.3.1 </span>The '::cue' pseudo-element</a></li>
+ <li><a href="#the-':past'-and-':future'-pseudo-classes"><span class=secno>5.2.3.2 </span>The ':past' and ':future' pseudo-classes</a></ol></ol></ol></li>
+ <li><a href=#webvtt-api><span class=secno>6 </span>WebVTT API</a></li>
+ <li><a href=#iana-considerations><span class=secno>7 </span>IANA considerations</a>
<ol>
- <li><a href=#text/vtt><span class=secno>4.1 </span><code>text/vtt</code></a></ol></li>
+ <li><a href=#text/vtt><span class=secno>7.1 </span><code>text/vtt</code></a></ol></li>
<li><a class=no-num href=#references>References</a></li>
<li><a class=no-num href=#acknowledgements>Acknowledgements</a></ol>
<!--end-toc-->
@@ -426,7 +432,6 @@
</div>
-
<h2 id=conformance><span class=secno>2 </span>Conformance</h2>
<p class=XXX>This section remains to be written. In the meantime, please see the HTML standard. <a href=#refsHTML>[HTML]</a></p>
@@ -459,31 +464,161 @@
<li><dfn id=text-track-cue-identifier>Text track cue identifier</dfn>
<li><dfn id=text-track-cue-start-time>Text track cue start time</dfn>
<li><dfn id=text-track-cue-end-time>Text track cue end time</dfn>
- <li><dfn id=text-track-cue-alignment>Text track cue alignment</dfn>
- <li><dfn id=text-track-cue-start-alignment>Text track cue start alignment</dfn>
- <li><dfn id=text-track-cue-middle-alignment>Text track cue middle alignment</dfn>
- <li><dfn id=text-track-cue-end-alignment>Text track cue end alignment</dfn>
- <li><dfn id=text-track-cue-left-alignment>Text track cue left alignment</dfn>
- <li><dfn id=text-track-cue-right-alignment>Text track cue right alignment</dfn>
- <li><dfn id=text-track-cue-line-position>Text track cue line position</dfn>
- <li><dfn id=text-track-cue-automatic-line-position>Text track cue automatic line position</dfn>
- <li><dfn id=text-track-cue-computed-line-position>Text track cue computed line position</dfn>
<li><dfn id=text-track-cue-pause-on-exit-flag>Text track cue pause-on-exit flag</dfn>
- <li><dfn id=text-track-cue-size>Text track cue size</dfn>
- <li><dfn id=text-track-cue-snap-to-lines-flag>Text track cue snap-to-lines flag</dfn>
- <li><dfn id=text-track-cue-text-position>Text track cue text position</dfn>
- <li><dfn id=text-track-cue-writing-direction>Text track cue writing direction</dfn>
- <li><dfn id=text-track-cue-horizontal-writing-direction>Text track cue horizontal writing direction</dfn>
- <li><dfn id=text-track-cue-vertical-growing-right-writing-direction>Text track cue vertical growing right writing direction</dfn>
- <li><dfn id=text-track-cue-vertical-growing-left-writing-direction>Text track cue vertical growing left writing direction</dfn>
<li><dfn id=text-track-cue-text>Text track cue text</dfn>
<li><dfn id=text-track-cue-active-flag>Text track cue active flag</dfn>
<li><dfn id=text-track-cue-display-state>Text track cue display state</dfn>
<li><dfn id=rules-for-updating-the-text-track-rendering>Rules for updating the text track rendering</dfn>
- </ul><h2 id=the-webvtt-file-format><span class=secno>3 </span>The WebVTT file format</h2>
+ <li><dfn id=rules-for-rendering-the-cue-in-isolation>Rules for rendering the cue in isolation</dfn>
+ <li><dfn id=texttrackcue><code>TextTrackCue</code></dfn> interface
+ </ul><h2 id=data-model><span class=secno>3 </span>Data model</h2>
+
+ <p>WebVTT cues are HTML <a href=#text-track-cue title="text track cue">text track cues</a> that additionally
+ consist of the following: <a href=#refsHTML>[HTML]</a></p>
+
+ <dl><dt><dfn id=text-track-cue-writing-direction title="text track cue writing direction">A writing direction</dfn>
+ <dd>
+ <p>A writing direction, either <dfn id=text-track-cue-horizontal-writing-direction title="text track cue horizontal writing
+ direction">horizontal</dfn> (a line extends horizontally and is positioned vertically, with
+ consecutive lines displayed below each other), <dfn id=text-track-cue-vertical-growing-left-writing-direction title="text track cue vertical growing left
+ writing direction">vertical growing left</dfn> (a line extends vertically and is positioned
+ horizontally, with consecutive lines displayed to the left of each other<!-- used for east
+ asian-->), or <dfn id=text-track-cue-vertical-growing-right-writing-direction title="text track cue vertical growing right writing direction">vertical
+ growing right</dfn> (a line extends vertically and is positioned horizontally, with consecutive
+ lines displayed to the right of each other<!-- used for mongolian -->).</p>
+
+ <p>If the <a href=#text-track-cue-writing-direction title="text track cue writing direction">writing direction</a> is <a href=#text-track-cue-horizontal-writing-direction title="text track cue horizontal writing direction">horizontal</a>, then <a href=#text-track-cue-line-position title="text
+ track cue line position">line position</a> percentages are relative to the height of the
+ video, and <a href=#text-track-cue-text-position title="text track cue text position">text position</a> and <a href=#text-track-cue-size title="text
+ track cue size">size</a> percentages are relative to the width of the video.</p>
+
+ <p>Otherwise, <a href=#text-track-cue-line-position title="text track cue line position">line position</a> percentages are
+ relative to the width of the video, and <a href=#text-track-cue-text-position title="text track cue text position">text
+ position</a> and <a href=#text-track-cue-size title="text track cue size">size</a> percentages are relative to
+ the height of the video.</p>
+ </dd>
+
+ <dt><dfn id=text-track-cue-snap-to-lines-flag title="text track cue snap-to-lines flag">A snap-to-lines flag</dfn>
+ <dd>
+
+ <p>A boolean indicating whether the <a href=#text-track-cue-line-position title="text track cue line position">line's
+ position</a> is a line position (positioned to a multiple of the line dimensions of the first
+ line of the cue), or whether it is a percentage of the dimension of the video.</p>
+
+ <p>Cues whose <a href=#text-track-cue-snap-to-lines-flag>text track cue snap-to-lines flag</a> is set will be placed within the
+ title-safe area on user agents that use overscan. Cues with the flag unset will be positioned as
+ requested (modulo overlap avoidance if multiple cues are in the same place).</p>
+
+ </dd>
+
+ <dt><dfn id=text-track-cue-line-position title="text track cue line position">A line position</dfn>
+ <dd>
+ <p>Either a number giving the position of the lines of the cue, to be interpreted as defined by
+ the <a href=#text-track-cue-writing-direction title="text track cue writing direction">writing direction</a> and <a href=#text-track-cue-snap-to-lines-flag title="text track cue snap-to-lines flag">snap-to-lines flag</a> of the cue, or the special
+ value <dfn id=text-track-cue-automatic-line-position title="text track cue automatic line position">auto</dfn>, which means the position
+ is to depend on the other active tracks.</p>
+
+ <p>A <a href=#text-track-cue>text track cue</a> has a <dfn id=text-track-cue-computed-line-position>text track cue computed line position</dfn> whose
+ value is that returned by the following algorithm, which is defined in terms of the other
+ aspects of the cue:</p>
+
+ <ol><li><p>If the <a href=#text-track-cue-line-position>text track cue line position</a> is numeric, the <a href=#text-track-cue-snap-to-lines-flag>text track cue
+ snap-to-lines flag</a> of the <a href=#text-track-cue>text track cue</a> is not set, and the <a href=#text-track-cue-line-position>text
+ track cue line position</a> is negative or greater than 100, then return 100 and abort these
+ steps.</li>
+
+ <li><p>If the <a href=#text-track-cue-line-position>text track cue line position</a> is numeric, return the value of the
+ <a href=#text-track-cue-line-position>text track cue line position</a> and abort these steps. (Either the <a href=#text-track-cue-snap-to-lines-flag>text track
+ cue snap-to-lines flag</a> is set, so any value, not just those in the range 0..100, is
+ valid, or the value is in the range 0..100 and is thus valid regardless of the value of that
+ flag.)</li>
+
+ <li><p>If the <a href=#text-track-cue-snap-to-lines-flag>text track cue snap-to-lines flag</a> of the <a href=#text-track-cue>text track cue</a>
+ is not set, return the value 100 and abort these steps. (The <a href=#text-track-cue-line-position>text track cue line
+ position</a> is the special value <a href=#text-track-cue-automatic-line-position title="text track cue automatic line
+ position">auto</a>.)</li>
+
+ <li><p>Let <var title="">cue</var> be the <a href=#text-track-cue>text track cue</a>.</li>
+
+ <li><p>If <var title="">cue</var> is not in a <a href=#text-track-list-of-cues title="text track list of cues">list of
+ cues</a> of a <a href=#text-track>text track</a>, or if that <a href=#text-track>text track</a> is not in the
+ <a href=#list-of-text-tracks>list of text tracks</a> of a <a href=#media-element>media element</a>, return −1 and abort
+ these steps.</li>
+
+ <li><p>Let <var title="">track</var> be the <a href=#text-track>text track</a> whose <a href=#text-track-list-of-cues title="text
+ track list of cues">list of cues</a> the <var title="">cue</var> is in.</li>
+
+ <li><p>Let <var title="">n</var> be the number of <a href=#text-track title="text track">text tracks</a>
+ whose <a href=#text-track-mode>text track mode</a> is <a href=#text-track-showing title="text track showing">showing</a> and that
+ are in the <a href=#media-element>media element</a>'s <a href=#list-of-text-tracks>list of text tracks</a> before <var title="">track</var>.</li>
+
+ <li><p>Increment <var title="">n</var> by one.</li>
+
+ <li><p>Negate <var title="">n</var>.</li>
+
+ <li><p>Return <var title="">n</var>.</li>
+
+ </ol></dd>
+
+ <dt><dfn id=text-track-cue-text-position title="text track cue text position">A text position</dfn>
+ <dd>
+ <p>A number giving the position of the text of the cue within each line, to be interpreted as a
+ percentage of the video, as defined by the <a href=#text-track-cue-writing-direction title="text track cue writing
+ direction">writing direction</a>.</p>
+ </dd>
+
+ <dt><dfn id=text-track-cue-size title="text track cue size">A size</dfn>
+ <dd>
+ <p>A number giving the size of the box within which the text of each line of the cue is to be
+ aligned, to be interpreted as a percentage of the video, as defined by the <a href=#text-track-cue-writing-direction title="text
+ track cue writing direction">writing direction</a>.</p>
+ </dd>
+
+ <dt><dfn id=text-track-cue-alignment title="text track cue alignment">An alignment</dfn>
+ <dd>
+ <p>An alignment for the text of each line of the cue, one of:</p>
- <h3 id=syntax><span class=secno>3.1 </span>Syntax</h3>
+ <dl><dt><dfn id=text-track-cue-start-alignment title="text track cue start alignment">Start alignment</dfn></dt>
+ <dd>The text is aligned towards its start side.</dd>
+
+ <dt><dfn id=text-track-cue-middle-alignment title="text track cue middle alignment">Middle alignment</dfn></dt>
+ <dd>The text is aligned centered between its start and end sides.</dd>
+
+ <dt><dfn id=text-track-cue-end-alignment title="text track cue end alignment">End alignment</dfn></dt>
+ <dd>The text is aligned towards its end side.</dd>
+
+ <dt><dfn id=text-track-cue-left-alignment title="text track cue left alignment">Left alignment</dfn></dt>
+ <dd>The text is aligned to the left.</dd>
+
+ <dt><dfn id=text-track-cue-right-alignment title="text track cue right alignment">Right alignment</dfn></dt>
+ <dd>The text is aligned to the right.</dd>
+
+ </dl><p>Which sides are the start and end sides depends on the Unicode bidirectional algorithm and
+ the <a href=#text-track-cue-writing-direction title="text track cue writing direction">writing direction</a>. <a href=#refsBIDI>[BIDI]</a></p>
+
+ </dd>
+
+ </dl><p>The associated <a href=#rules-for-updating-the-text-track-rendering>rules for updating the text track rendering</a> of WebVTT <a href=#text-track-cue title="text track cue">text track cues</a> are the <a href=#rules-for-updating-the-display-of-webvtt-text-tracks>rules for updating the display of
+ WebVTT text tracks</a>.</p>
+
+ <div class=impl>
+
+ <p>When a WebVTT <a href=#text-track-cue>text track cue</a> whose <a href=#text-track-cue-active-flag title="text track cue active flag">active
+ flag</a> is set has its <a href=#text-track-cue-writing-direction title="text track cue writing direction">writing
+ direction</a>, <a href=#text-track-cue-snap-to-lines-flag title="text track cue snap-to-lines flag">snap-to-lines flag</a>, <a href=#text-track-cue-line-position title="text track cue line position">line position</a>, <a href=#text-track-cue-text-position title="text track cue text
+ position">text position</a>, <a href=#text-track-cue-size title="text track cue size">size</a>, <a href=#text-track-cue-alignment title="text
+ track cue alignment">alignment</a>, or <a href=#text-track-cue-text title="text track cue text">text</a> change
+ value, then the user agent must empty the <a href=#text-track-cue-display-state>text track cue display state</a>, and then
+ immediately run the <a href=#text-track>text track</a>'s <a href=#rules-for-updating-the-display-of-webvtt-text-tracks>rules for updating the display of WebVTT text
+ tracks</a>.</p>
+
+ </div>
+
+
+ <h2 id=the-webvtt-file-format><span class=secno>4 </span>The WebVTT file format</h2>
+
+ <h3 id=syntax><span class=secno>4.1 </span>Syntax</h3>
<p>A <dfn id=webvtt-file>WebVTT file</dfn> must consist of a <a href=#webvtt-file-body>WebVTT file
body</a> encoded as UTF-8 and labeled with the <a href=#mime-type>MIME
@@ -737,7 +872,7 @@
</ol><p class=note>A <a href=#webvtt-vertical-text-cue-setting>WebVTT vertical text cue setting</a>
configures the cue to use vertical text layout rather than
horizontal text layout. Vertical text layout is sometimes used in
- Japanese, for example. The default is horiontal layout.</p>
+ Japanese, for example. The default is horizontal layout.</p>
<p>A <dfn id=webvtt-line-position-cue-setting>WebVTT line position cue setting</dfn> consists of the
following components, in the order given:</p>
@@ -1010,7 +1145,7 @@
<div class=impl>
- <h3 id=parsing><span class=secno>3.2 </span>Parsing</h3>
+ <h3 id=parsing><span class=secno>4.2 </span>Parsing</h3>
<p>A <dfn id=webvtt-parser>WebVTT parser</dfn>, given an input byte stream and a
<a href=#text-track-list-of-cues>text track list of cues</a> <var title="">output</var>,
@@ -1229,12 +1364,8 @@
<li><p>Return to the step labeled <i>cue text loop</i>.</li>
- <li><p><i>Cue text processing</i>: Let the <a href=#text-track-cue-text>text track cue
- text</a> of <var title="">cue</var> be <var title="">cue
- text</var>, and let the rules for its interpretation be the
- <a href=#webvtt-cue-text-parsing-rules>WebVTT cue text parsing rules</a>, the <a href=#webvtt-cue-text-rendering-rules>WebVTT cue
- text rendering rules</a>, and the <a href=#webvtt-cue-text-dom-construction-rules>WebVTT cue text DOM
- construction rules</a>.</li>
+ <li><p><i>Cue text processing</i>: Let the <a href=#text-track-cue-text>text track cue text</a> of <var title="">cue</var> be <var title="">cue text</var>, and let the <a href=#rules-for-rendering-the-cue-in-isolation>rules for rendering the cue
+ in isolation</a> be the <a href=#rules-for-interpreting-webvtt-cue-text>rules for interpreting WebVTT cue text</a>.</li>
<li><p>Add <var title="">cue</var> to the <a href=#text-track-list-of-cues>text track list of
cues</a> <var title="">output</var>.</li>
@@ -1607,7 +1738,7 @@
<li><p>Return <var title="">result</var>.</li>
- </ol><h3 id=webvtt-cue-text-parsing-rules><span class=secno>3.3 </span><dfn>WebVTT cue text parsing rules</dfn></h3>
+ </ol><h3 id=webvtt-cue-text-parsing-rules><span class=secno>4.3 </span><dfn>WebVTT cue text parsing rules</dfn></h3>
<p>A <dfn id=webvtt-node-object>WebVTT Node Object</dfn> is a conceptual construct used to
represent components of <a href=#webvtt-cue-text>WebVTT cue text</a> so that its
@@ -2321,7 +2452,7 @@
<li><p>Jump to the step labeled <i>loop</i>.</li>
- </ol><h3 id=webvtt-cue-text-dom-construction-rules><span class=secno>3.4 </span><dfn>WebVTT cue text DOM construction rules</dfn></h3>
+ </ol><h3 id=webvtt-cue-text-dom-construction-rules><span class=secno>4.4 </span><dfn>WebVTT cue text DOM construction rules</dfn></h3>
<p>To convert a <a href=#list-of-webvtt-node-objects>List of WebVTT Node Objects</a> to a DOM
tree for <code>Document</code> <var title="">owner</var>, user
@@ -2371,7 +2502,22 @@
</div>
- <h3 id=webvtt-cue-text-rendering-rules><span class=secno>3.5 </span><dfn>WebVTT cue text rendering rules</dfn></h3>
+ <h2 id=rendering><span class=secno>5 </span>Rendering</h2>
+
+ <h3 id=cues-in-isolation><span class=secno>5.1 </span>Cues in isolation</h3>
+
+ <p>The <dfn id=rules-for-interpreting-webvtt-cue-text>rules for interpreting WebVTT cue text</dfn> (e.g. for use as chapter titles) are as
+ follows:</p>
+
+ <ol><li><p>Let <var title="">nodes</var> be the <a href=#list-of-webvtt-node-objects>list of WebVTT Node Objects</a> obtained by
+ applying the <a href=#webvtt-cue-text-parsing-rules>WebVTT cue text parsing rules</a> to the <var title="">cue</var>'s
+ <a href=#text-track-cue-text>text track cue text</a>.</p>
+
+ <li><p class=XXX>... <!-- flatten nodes and return a single string somehow -->
+
+ </ol><h3 id=cues-with-video><span class=secno>5.2 </span>Cues with video</h3>
+
+ <h4 id=processing-model><span class=secno>5.2.1 </span>Processing model</h4>
<p>The <dfn id=rules-for-updating-the-display-of-webvtt-text-tracks>rules for updating the display of WebVTT text
tracks</dfn> render the <a href=#text-track title="text track">text
@@ -3087,7 +3233,7 @@
entirely.</p>
- <h4 id=applying-css-properties-to-webvtt-node-objects><span class=secno>3.5.1 </span>Applying CSS properties to <a href=#webvtt-node-object title="WebVTT Node Object">WebVTT Node Objects</a></h4>
+ <h4 id=applying-css-properties-to-webvtt-node-objects><span class=secno>5.2.2 </span>Applying CSS properties to <a href=#webvtt-node-object title="WebVTT Node Object">WebVTT Node Objects</a></h4>
<p>When following the <a href=#rules-for-updating-the-display-of-webvtt-text-tracks>rules for updating the display of WebVTT
text tracks</a>, user agents must set properties of <a href=#webvtt-node-object title="WebVTT Node Object">WebVTT Node Objects</a> at the CSS
@@ -3166,24 +3312,20 @@
interpreted as defined in the next section.</p>
- <h4 id=css-extensions><span class=secno>3.5.2 </span>CSS extensions</h4>
+ <h4 id=css-extensions><span class=secno>5.2.3 </span>CSS extensions</h4>
- <p>When a user agent is rendering one or more <a href=#text-track-cue title="text
- track cue">text track cues</a> according to the <a href=#webvtt-cue-text-rendering-rules>WebVTT cue
- text rendering rules</a>, <a href=#webvtt-node-object title="WebVTT Node Object">WebVTT
- Node Objects</a> in the <a href=#list-of-webvtt-node-objects>list of WebVTT Node Objects</a>
- used in the rendering can be matched by certain pseudo-selectors as
- defined below. These selectors can begin or stop matching individual
- <a href=#webvtt-node-object title="WebVTT Node Object">WebVTT Node Objects</a> while a
- <a href=#text-track-cue title="text track cue">cue</a> is being rendered, even in
- between applications of the <a href=#webvtt-cue-text-rendering-rules>WebVTT cue text rendering
- rules</a> (which are only run when the set of active cues
- changes). User agents that support the pseudo-element described
- below must dynamically update renderings accordingly.
- When either 'white-space' or one of the properties corresponding to the 'font' shorthand
- (including 'line-height') changes value, then the <a href=#text-track-cue>text track cue</a>'s <a href=#text-track-cue-display-state>text track
- cue display state</a> must be emptied and the <a href=#text-track>text track</a>'s <a href=#rules-for-updating-the-text-track-rendering>rules for
- updating the text track rendering</a> must be immediately rerun.</p>
+ <p>When a user agent is rendering one or more <a href=#text-track-cue title="text track cue">text track cues</a>
+ according to the <a href=#rules-for-updating-the-display-of-webvtt-text-tracks>rules for updating the display of WebVTT text tracks</a>, <a href=#webvtt-node-object title="WebVTT Node Object">WebVTT Node Objects</a> in the <a href=#list-of-webvtt-node-objects>list of WebVTT Node
+ Objects</a> used in the rendering can be matched by certain pseudo-selectors as defined below.
+ These selectors can begin or stop matching individual <a href=#webvtt-node-object title="WebVTT Node Object">WebVTT Node
+ Objects</a> while a <a href=#text-track-cue title="text track cue">cue</a> is being rendered, even in between
+ applications of the <a href=#rules-for-updating-the-display-of-webvtt-text-tracks>rules for updating the display of WebVTT text tracks</a> (which are
+ only run when the set of active cues changes). User agents that support the pseudo-element
+ described below must dynamically update renderings accordingly. When either 'white-space' or one
+ of the properties corresponding to the 'font' shorthand (including 'line-height') changes value,
+ then the <a href=#text-track-cue>text track cue</a>'s <a href=#text-track-cue-display-state>text track cue display state</a> must be emptied
+ and the <a href=#text-track>text track</a>'s <a href=#rules-for-updating-the-text-track-rendering>rules for updating the text track rendering</a> must be
+ immediately rerun.</p>
<p>Pseudo-elements apply to elements that are matched by
selectors. For the purpose of this section, that element is the
@@ -3201,7 +3343,7 @@
'::cue(<var title="">selector</var>)' pseudo-elements, and the <a href=#past-pseudo-class title=past-pseudo-class>':past'</a> and <a href=#future-pseudo-class title=future-pseudo-class>':future'</a> pseudo-classes.</p>
- <h5 id="the-'::cue'-pseudo-element"><span class=secno>3.5.2.1 </span>The '::cue' pseudo-element</h5>
+ <h5 id="the-'::cue'-pseudo-element"><span class=secno>5.2.3.1 </span>The '::cue' pseudo-element</h5>
<p>The '<dfn id=pseudo-cue title=pseudo-cue>::cue</dfn>' pseudo-element (with no
argument) matches any <a href=#list-of-webvtt-node-objects>List of WebVTT Node Objects</a>
@@ -3356,7 +3498,7 @@
the <a href=#webvtt-cue-background-box>WebVTT cue background box</a>.</p>
- <h5 id="the-':past'-and-':future'-pseudo-classes"><span class=secno>3.5.2.2 </span>The ':past' and ':future' pseudo-classes</h5>
+ <h5 id="the-':past'-and-':future'-pseudo-classes"><span class=secno>5.2.3.2 </span>The ':past' and ':future' pseudo-classes</h5>
<p>The <a href=#past-pseudo-class title=past-pseudo-class>':past'</a> and <a href=#future-pseudo-class title=future-pseudo-class>':future'</a> pseudo-classes
sometimes match <a href=#webvtt-node-object title="WebVTT Node Object">WebVTT Node
@@ -3388,12 +3530,229 @@
Object</a> <var title="">c</var>.</p>
- <h2 id=iana><span class=secno>4 </span>IANA considerations</h2>
+
+ <h2 id=webvtt-api><span class=secno>6 </span>WebVTT API</h2>
+
+ <p>The following interface is used to expose WebVTT cues in the DOM API:</p>
+
+ <pre class=idl>enum <dfn id=autokeyword>AutoKeyword</dfn> { "auto" };
+[<a href=#dom-texttrackcue title=dom-TextTrackCue>Constructor</a>(double startTime, double endTime, DOMString text)]
[229 lines skipped]
Received on Monday, 11 March 2013 23:43:42 UTC