Skip to content
Permalink
Browse files

[giow] (0) Captions - Stage 11.1: More work on sourcing out-of-band t…

…racks

git-svn-id: http://svn.whatwg.org/webapps@5097 340c8d12-0b0e-0410-8428-c7bf67bfef74
  • Loading branch information...
Hixie committed May 18, 2010
1 parent 1798358 commit 0affcd41a7f179c64ccd95147aa55e88a10ea3e6
Showing with 298 additions and 82 deletions.
  1. +95 −27 complete.html
  2. +94 −26 index
  3. +109 −29 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; 12 May 2010</h2>
<h2 class="no-num no-toc">Draft Standard &mdash; 18 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>-->
the attribute was set, could be successfully <a href=#resolve-a-url title="resolve a
url">resolved</a> relative to the element, then the element's
<dfn id=track-url>track URL</dfn> is the resulting <a href=#absolute-url>absolute
URL</a>. Otherwise, the element has no <a href=#track-url>track
URL</a>.</p>
URL</a>. Otherwise, the element's <a href=#track-url>track URL</a> is the
empty string.</p>

</div>

cue</a> is associated with a particular <a href=#timed-track>timed track</a>,
the association is permanent.</p>

<p class=XXX><dfn id=the-timed-tracks-are-ready>the timed tracks are ready</dfn></p>
<p>The <a href=#timed-track title="timed track">timed tracks</a> of a
<a href=#media-element>media element</a> are <dfn id=the-timed-tracks-are-ready title="the timed tracks are
ready">ready</dfn> if all the <a href=#timed-track title="timed track">timed
tracks</a> whose <a href=#timed-track-mode title="timed track mode">mode</a> was
not in the <a href=#timed-track-disabled title="timed track disabled">disabled</a> state
when the element's <a href=#concept-media-load-algorithm title=concept-media-load-algorithm>resource selection
algorithm</a> last started now have a <a href=#timed-track-readiness-state>timed track readiness
state</a> of <a href=#timed-track-loaded title="timed track loaded">loaded</a> or
<a href=#timed-track-failed-to-load title="timed track failed to load">failed to load</a>.</p>


<h6 id=sourcing-in-band-timed-tracks><span class=secno>4.8.10.10.2 </span>Sourcing in-band timed tracks</h6>
element</a>'s <a href=#list-of-timed-tracks>list of timed tracks</a>, <span class=XXX>update the mode appropriately</span>.</p>

<p>When a <a href=#timed-track>timed track</a> corresponding to a
<code><a href=#the-track-element>track</a></code> element is created or changes its <a href=#timed-track-mode>timed
track mode</a>, the user agent must immediately and synchronously
run the appropriate steps from the following list:</p>
<code><a href=#the-track-element>track</a></code> element is created with <a href=#timed-track-mode>timed track
mode</a> set to <a href=#timed-track-hidden title="timed track hidden">hidden</a> or
<a href=#timed-track-showing title="timed track showing">showing</a>, and when a
<a href=#timed-track>timed track</a> corresponding to a <code><a href=#the-track-element>track</a></code>
element is created with <a href=#timed-track-mode>timed track mode</a> set to <a href=#timed-track-disabled title="timed track disabled">disabled</a> and subsequently
changes its <a href=#timed-track-mode>timed track mode</a> to <a href=#timed-track-hidden title="timed
track hidden">hidden</a> or <a href=#timed-track-showing title="timed track
showing">showing</a> for the first time, the user agent must
immediately and synchronously run the
following steps:</p>

<!-- XXX manage the <span>timed track readiness state</span> and the
<span>timed track mode</span>; <span>fetch</span> the file as
necessary -->
<ol><li><p>Set the <a href=#timed-track-readiness-state>timed track readiness state</a> to <a href=#timed-track-loading title="timed track loading">loading</a>.</li>

<dl class=switch><dt>If the <a href=#timed-track-readiness-state>timed track readiness state</a> is <a href=#timed-track-not-loaded title="timed track not loaded">not loaded</a> and the
<a href=#timed-track-mode>timed track mode</a> is <a href=#timed-track-hidden title="timed track
hidden">hidden</a> or <a href=#timed-track-showing title="timed track
showing">showing</a></dt>
<li><p>Let <var title="">URL</var> be the <a href=#track-url>track URL</a> of
the <code><a href=#the-track-element>track</a></code> element.</li>

<dd>
<li><p>Asynchronously run the remaining steps, while continuing
with whatever task was responsible for creating the <a href=#timed-track>timed
track</a> or changing the <a href=#timed-track-mode>timed track
mode</a>.</li>

<ol><li><p>Set the <a href=#timed-track-readiness-state>timed track readiness state</a> to <a href=#timed-track-loading title="timed track loading">loading</a>.</li>
<li>

<li><p>Asynchronously run the remaining steps, while continuing
with whatever task was responsible for creating the <a href=#timed-track>timed
track</a> or changing the <a href=#timed-track-mode>timed track
mode</a>.</li>
<p><i>Download</i>: <a href=#fetch>Fetch</a> <var title="">URL</var>, if
it isn't the empty string.</p><!-- http-origin privacy sensitive
-->

<li><p class=XXX>...</li>
<p>The <a href=#concept-task title=concept-task>tasks</a> <a href=#queue-a-task title="queue
a task">queued</a> by the <a href=#fetch title=fetch>fetching
algorithm</a> on the <a href=#networking-task-source>networking task source</a> to
process the data as it is being fetched must <span class=XXX>...this is where cross-origin checks go</span>.</p>

<p>If the <a href=#fetch title=fetch>fetching algorithm</a> fails for
any reason (network error, the server returns an error code, the
cross-origin checks mentioned above fail, etc), or if <var title="">URL</var> is the empty string, then <a href=#queue-a-task>queue a
task</a> to first change the <a href=#timed-track-readiness-state>timed track readiness state</a>
to <a href=#timed-track-failed-to-load title="timed track failed to load">failed to load</a>
and then <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-error>error</code> at the <code><a href=#the-track-element>track</a></code>
element; and then, once that <a href=#concept-task title=concept-task>task</a> is <a href=#queue-a-task title="queue a
task">queued</a>, move on to the step below labeled
<i>monitoring</i>.</p>

<p>If the <a href=#fetch title=fetch>fetching algorithm</a> does not
fail, then, when it completes, <a href=#queue-a-task>queue a task</a> to first
change the <a href=#timed-track-readiness-state>timed track readiness state</a> to <a href=#timed-track-loaded title="timed track loaded">loaded</a> and then <a href=#fire-a-simple-event>fire a
simple event</a> named <code title=event-load>load</code> at
the <code><a href=#the-track-element>track</a></code> element; and then, once that <a href=#concept-task title=concept-task>task</a> is <a href=#queue-a-task title="queue a
task">queued</a>, move on to the step below labeled
<i>monitoring</i>.</p>

<p>If, while the <a href=#fetch title=fetch>fetching algorithm</a> is
active, either:</p>

<ul><li>the <a href=#track-url>track URL</a> changes so that it is no longer
equal to <var title="">URL</var>, while the <a href=#timed-track-mode>timed track
mode</a> is set to <a href=#timed-track-hidden title="timed track
hidden">hidden</a> or <a href=#timed-track-showing title="timed track
showing">showing</a>; or</li>

<li>the <a href=#timed-track-mode>timed track mode</a> changes to <a href=#timed-track-hidden title="timed track hidden">hidden</a> or <a href=#timed-track-showing title="timed
track showing">showing</a>, while the <a href=#track-url>track URL</a> is
not equal to <var title="">URL</var></li>

</ul><p>...then the user agent must run the following steps:</p>

<ol><li><p>Abort the <a href=#fetch title=fetch>fetching
algorithm</a>.</li>

</ol><p class=XXX>Handle the <a href=#track-url>track URL</a> and changes
thereto</p>
<li><p><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-abort>abort</code> at
the <code><a href=#the-track-element>track</a></code> element.</li>

</dd>
<li><p>Let <var title="">URL</var> be the new <a href=#track-url>track
URL</a>.</li>

</dl></div>
<li><p>Jump back to the top of the step labeled
<i>download</i>.</li>

</ol></li>

<li><p><i>Monitoring</i>: Wait until the <a href=#track-url>track URL</a> is
no longer equal to <var title="">URL</var>, at the same time as the
<a href=#timed-track-mode>timed track mode</a> is set to <a href=#timed-track-hidden title="timed track
hidden">hidden</a> or <a href=#timed-track-showing title="timed track
showing">showing</a>.</li>

<li><p>Jump to the step labeled <i>download</i>.</li>

</ol></div>


<div class=impl>

<h6 id=guidelines-for-exposing-cues-in-various-formats-as-timed-track-cues><span class=secno>4.8.10.10.4 </span><dfn>Guidelines for exposing cues</dfn> in various formats as
<a href=#timed-track-cue title="timed track cue">timed track cues</a></h6>

<p class=XXX>...</p>
<p class=XXX>...also, how to handle discarding cues that are
before startTime, for cues that are in-band</p>

</div>


<h3 id=network><span class=secno>10.3 </span><dfn>Web sockets</dfn></h3>

<div data-component="Web Sockets (editor: Ian Hickson)">
<div data-component="WebSocket API (editor: Ian Hickson)">



0 comments on commit 0affcd4

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