Skip to content
Permalink
Browse files

[giow] (0) Captions - Stage 5 mark II: let's make timed tracks only d…

…elay initial load, not delay subsequent playback if loaded later.

git-svn-id: http://svn.whatwg.org/webapps@5075 340c8d12-0b0e-0410-8428-c7bf67bfef74
  • Loading branch information...
Hixie committed May 5, 2010
1 parent 6550124 commit 9ea8a7f10e0a8df8b092e13619f2f4df7f128abb
Showing with 38 additions and 44 deletions.
  1. +13 −15 complete.html
  2. +13 −15 index
  3. +12 −14 source

<header class=head id=head><p><a class=logo href=http://www.whatwg.org/ rel=home><img alt=WHATWG src=/images/logo></a></p>
<hgroup><h1>Web Applications 1.0</h1>
<h2 class="no-num no-toc">Draft Standard &mdash; 4 May 2010</h2>
<h2 class="no-num no-toc">Draft Standard &mdash; 5 May 2010</h2>
</hgroup><p>You can take part in this work. <a href=http://www.whatwg.org/mailing-list>Join the working group's discussion list.</a></p>
<p><strong>Web designers!</strong> We have a <a href=http://blog.whatwg.org/faq/>FAQ</a>, a <a href=http://forums.whatwg.org/>forum</a>, and a <a href=http://www.whatwg.org/mailing-list#help>help mailing list</a> for you!</p>
<!--<p class="impl"><strong>Implementors!</strong> We have a <a href="http://www.whatwg.org/mailing-list#implementors">mailing list</a> for you too!</p>-->
<p>This indicates that the resource is usable. The user agent
must follow these substeps:</p>

<p class=XXX>this needs to wait until all active timed tracks have loaded also</p>

<ol><li><p>Set the <a href=#current-playback-position>current playback position</a> to the
<a href=#earliest-possible-position>earliest possible position</a>.</li>

element, the dimensions of the video are also available. The API
will no longer raise an exception when seeking. No <a href=#media-data>media
data</a> is available for the immediate <a href=#current-playback-position>current playback
position</a>.</dd>
position</a>.

<!-- XXX any timed tracks that were active when the media resource was loading will also be loaded before this state is reached the first time -->

</dd>

<dt><dfn id=dom-media-have_current_data title=dom-media-HAVE_CURRENT_DATA><code>HAVE_CURRENT_DATA</code></dfn> (numeric value 2)</dt>

agent may also set the <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> attribute to false,
<a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a>
named <code title=event-media-play><a href=#event-media-play>play</a></code>, and <a href=#queue-a-task>queue
a task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-playing><a href=#event-media-playing>playing</a></code>.

<span class=XXX>need to handle timed tracks loading</span>

</p>
a task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-playing><a href=#event-media-playing>playing</a></code>.</p>

<p class=note>User agents are not required to autoplay, and it
is suggested that user agents honor user preferences on the
<code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code> or
<code title=dom-media-HAVE_ENOUGH_DATA><a href=#dom-media-have_enough_data>HAVE_ENOUGH_DATA</a></code>,
the element has not <a href=#ended-playback>ended playback</a>, playback has not
<a href=#stopped-due-to-errors>stopped due to errors</a>, the element has not <a href=#paused-for-user-interaction>paused
for user interaction</a>, and <span class=XXX>there are no
timed tracks loading</span>.</p>
<a href=#stopped-due-to-errors>stopped due to errors</a>, and the element has not <a href=#paused-for-user-interaction>paused
for user interaction</a>.</p>

<p>A <a href=#media-element>media element</a> is said to have <dfn id=ended-playback>ended
playback</dfn> when the element's <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute is <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code> or greater, and
named <code title=event-media-playing><a href=#event-media-playing>playing</a></code> at the
element.</p>

<span class=XXX> handle a timed track loading in this step </span>

</ol></li>

</ol><li><p>Set the <a href=#media-element>media element</a>'s <a href=#autoplaying-flag>autoplaying

</dl><h6 id=timed-track-processing-model><span class=secno>4.8.10.10.2 </span>Timed track processing model</h6>

<p class=XXX>...fetching timed tracks; effect on 'waiting' and 'playing' events
<p class=XXX>...fetching timed tracks


<h6 id=sourcing-in-band-timed-tracks><span class=secno>4.8.10.10.3 </span>Sourcing in-band timed tracks</h6>
<tbody><tr><td><dfn id=event-media-loadedmetadata title=event-media-loadedmetadata><code>loadedmetadata</code></dfn>
<td><code><a href=#event>Event</a></code>
<td>The user agent has just determined the duration and dimensions of the <a href=#media-resource>media resource</a>.
<!-- XXX timed tracks that were active when the media resource was selected are also available -->
<td><code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> is newly equal to <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code> or greater for the first time.
<tr><td><dfn id=event-media-loadeddata title=event-media-loadeddata><code>loadeddata</code></dfn>
<td><code><a href=#event>Event</a></code>
<td><code><a href=#event>Event</a></code>
<td>Playback has stopped because the next frame is not available, but the user agent expects that frame to become available in due course.
<td><code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> is newly equal to or less than <code title=dom-media-HAVE_CURRENT_DATA><a href=#dom-media-have_current_data>HAVE_CURRENT_DATA</a></code>, and <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> is false. Either <code title=dom-media-seeking><a href=#dom-media-seeking>seeking</a></code> is true, or the <a href=#current-playback-position>current playback position</a> is not contained in any of the ranges in <code title=dom-media-buffered><a href=#dom-media-buffered>buffered</a></code>. It is possible for playback to stop for two other reasons without <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> being false, but those two reasons do not fire this event: maybe <a href=#ended-playback title="ended playback">playback ended</a>, or playback <a href=#stopped-due-to-errors>stopped due to errors</a>.
<span class=XXX> add to the reasons for this event and the preconditions for this event the case of a timed track loading </span>
<tr><td><dfn id=event-media-playing title=event-media-playing><code>playing</code></dfn>
<td><code><a href=#event>Event</a></code>
<td>Playback has started.
<td><code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> is newly equal to or greater than <code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code>, <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> is false, <code title=dom-media-seeking><a href=#dom-media-seeking>seeking</a></code> is false, or the <a href=#current-playback-position>current playback position</a> is contained in one of the ranges in <code title=dom-media-buffered><a href=#dom-media-buffered>buffered</a></code>.
<span class=XXX> add to the preconditions for this event that no timed tracks are loading </span>
<tr><td><dfn id=event-media-canplay title=event-media-canplay><code>canplay</code></dfn>
<td><code><a href=#event>Event</a></code>
<td>The user agent can resume playback of the <a href=#media-data>media data</a>, but estimates that if playback were to be started now, the <a href=#media-resource>media resource</a> could not be rendered at the current playback rate up to its end without having to stop for further buffering of content.
28 index
@@ -190,7 +190,7 @@

<header class=head id=head><p><a class=logo href=http://www.whatwg.org/ rel=home><img alt=WHATWG src=/images/logo></a></p>
<hgroup><h1>HTML5 (including next generation additions still in development)</h1>
<h2 class="no-num no-toc">Draft Standard &mdash; 4 May 2010</h2>
<h2 class="no-num no-toc">Draft Standard &mdash; 5 May 2010</h2>
</hgroup><p>You can take part in this work. <a href=http://www.whatwg.org/mailing-list>Join the working group's discussion list.</a></p>
<p><strong>Web designers!</strong> We have a <a href=http://blog.whatwg.org/faq/>FAQ</a>, a <a href=http://forums.whatwg.org/>forum</a>, and a <a href=http://www.whatwg.org/mailing-list#help>help mailing list</a> for you!</p>
<!--<p class="impl"><strong>Implementors!</strong> We have a <a href="http://www.whatwg.org/mailing-list#implementors">mailing list</a> for you too!</p>-->
<p>This indicates that the resource is usable. The user agent
must follow these substeps:</p>

<p class=XXX>this needs to wait until all active timed tracks have loaded also</p>

<ol><li><p>Set the <a href=#current-playback-position>current playback position</a> to the
<a href=#earliest-possible-position>earliest possible position</a>.</li>

element, the dimensions of the video are also available. The API
will no longer raise an exception when seeking. No <a href=#media-data>media
data</a> is available for the immediate <a href=#current-playback-position>current playback
position</a>.</dd>
position</a>.

<!-- XXX any timed tracks that were active when the media resource was loading will also be loaded before this state is reached the first time -->

</dd>

<dt><dfn id=dom-media-have_current_data title=dom-media-HAVE_CURRENT_DATA><code>HAVE_CURRENT_DATA</code></dfn> (numeric value 2)</dt>

agent may also set the <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> attribute to false,
<a href=#queue-a-task>queue a task</a> to <a href=#fire-a-simple-event>fire a simple event</a>
named <code title=event-media-play><a href=#event-media-play>play</a></code>, and <a href=#queue-a-task>queue
a task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-playing><a href=#event-media-playing>playing</a></code>.

<span class=XXX>need to handle timed tracks loading</span>

</p>
a task</a> to <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-media-playing><a href=#event-media-playing>playing</a></code>.</p>

<p class=note>User agents are not required to autoplay, and it
is suggested that user agents honor user preferences on the
<code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code> or
<code title=dom-media-HAVE_ENOUGH_DATA><a href=#dom-media-have_enough_data>HAVE_ENOUGH_DATA</a></code>,
the element has not <a href=#ended-playback>ended playback</a>, playback has not
<a href=#stopped-due-to-errors>stopped due to errors</a>, the element has not <a href=#paused-for-user-interaction>paused
for user interaction</a>, and <span class=XXX>there are no
timed tracks loading</span>.</p>
<a href=#stopped-due-to-errors>stopped due to errors</a>, and the element has not <a href=#paused-for-user-interaction>paused
for user interaction</a>.</p>

<p>A <a href=#media-element>media element</a> is said to have <dfn id=ended-playback>ended
playback</dfn> when the element's <code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> attribute is <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code> or greater, and
named <code title=event-media-playing><a href=#event-media-playing>playing</a></code> at the
element.</p>

<span class=XXX> handle a timed track loading in this step </span>

</ol></li>

</ol><li><p>Set the <a href=#media-element>media element</a>'s <a href=#autoplaying-flag>autoplaying

</dl><h6 id=timed-track-processing-model><span class=secno>4.8.10.10.2 </span>Timed track processing model</h6>

<p class=XXX>...fetching timed tracks; effect on 'waiting' and 'playing' events
<p class=XXX>...fetching timed tracks


<h6 id=sourcing-in-band-timed-tracks><span class=secno>4.8.10.10.3 </span>Sourcing in-band timed tracks</h6>
<tbody><tr><td><dfn id=event-media-loadedmetadata title=event-media-loadedmetadata><code>loadedmetadata</code></dfn>
<td><code><a href=#event>Event</a></code>
<td>The user agent has just determined the duration and dimensions of the <a href=#media-resource>media resource</a>.
<!-- XXX timed tracks that were active when the media resource was selected are also available -->
<td><code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> is newly equal to <code title=dom-media-HAVE_METADATA><a href=#dom-media-have_metadata>HAVE_METADATA</a></code> or greater for the first time.
<tr><td><dfn id=event-media-loadeddata title=event-media-loadeddata><code>loadeddata</code></dfn>
<td><code><a href=#event>Event</a></code>
<td><code><a href=#event>Event</a></code>
<td>Playback has stopped because the next frame is not available, but the user agent expects that frame to become available in due course.
<td><code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> is newly equal to or less than <code title=dom-media-HAVE_CURRENT_DATA><a href=#dom-media-have_current_data>HAVE_CURRENT_DATA</a></code>, and <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> is false. Either <code title=dom-media-seeking><a href=#dom-media-seeking>seeking</a></code> is true, or the <a href=#current-playback-position>current playback position</a> is not contained in any of the ranges in <code title=dom-media-buffered><a href=#dom-media-buffered>buffered</a></code>. It is possible for playback to stop for two other reasons without <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> being false, but those two reasons do not fire this event: maybe <a href=#ended-playback title="ended playback">playback ended</a>, or playback <a href=#stopped-due-to-errors>stopped due to errors</a>.
<span class=XXX> add to the reasons for this event and the preconditions for this event the case of a timed track loading </span>
<tr><td><dfn id=event-media-playing title=event-media-playing><code>playing</code></dfn>
<td><code><a href=#event>Event</a></code>
<td>Playback has started.
<td><code title=dom-media-readyState><a href=#dom-media-readystate>readyState</a></code> is newly equal to or greater than <code title=dom-media-HAVE_FUTURE_DATA><a href=#dom-media-have_future_data>HAVE_FUTURE_DATA</a></code>, <code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> is false, <code title=dom-media-seeking><a href=#dom-media-seeking>seeking</a></code> is false, or the <a href=#current-playback-position>current playback position</a> is contained in one of the ranges in <code title=dom-media-buffered><a href=#dom-media-buffered>buffered</a></code>.
<span class=XXX> add to the preconditions for this event that no timed tracks are loading </span>
<tr><td><dfn id=event-media-canplay title=event-media-canplay><code>canplay</code></dfn>
<td><code><a href=#event>Event</a></code>
<td>The user agent can resume playback of the <a href=#media-data>media data</a>, but estimates that if playback were to be started now, the <a href=#media-resource>media resource</a> could not be rendered at the current playback rate up to its end without having to stop for further buffering of content.

0 comments on commit 9ea8a7f

Please sign in to comment.
You can’t perform that action at this time.