html5/spec Overview.html,1.5654,1.5655

Update of /sources/public/html5/spec
In directory hutz:/tmp/cvs-serv3257

Modified Files:
	Overview.html 
Log Message:
support "removetrack" events to handle long-running <video> elements on streams with multiple TV shows having different audio and video streams. (whatwg r7098)

Index: Overview.html
===================================================================
RCS file: /sources/public/html5/spec/Overview.html,v
retrieving revision 1.5654
retrieving revision 1.5655
diff -u -d -r1.5654 -r1.5655
--- Overview.html	8 May 2012 00:36:29 -0000	1.5654
+++ Overview.html	8 May 2012 17:22:05 -0000	1.5655
@@ -27909,6 +27909,25 @@
   known</a>, the <a href="#current-playback-position">current playback position</a> can never be
   less than the <a href="#earliest-possible-position">earliest possible position</a>.</p>
 
+  
+  
+  <p>If at any time the user agent learns that an audio or video track
+  has ended and all <a href="#media-data">media data</a> relating to that track
+  corresponds to parts of the <a href="#media-timeline">media timeline</a> that are
+  <em>before</em> the <a href="#earliest-possible-position">earliest possible position</a>, the
+  user agent may <a href="#queue-a-task">queue a task</a> to remove the track from
+  the <code title="dom-media-audioTracks"><a href="#dom-media-audiotracks">audioTracks</a></code>
+  attribute's <code><a href="#audiotracklist">AudioTrackList</a></code> object or the <code title="dom-media-videoTracks"><a href="#dom-media-videotracks">videoTracks</a></code> attribute's
+  <code><a href="#videotracklist">VideoTrackList</a></code> object as appropriate and then fire an
+  event with the name <code title="event-removetrack">removetrack</code>, that does not bubble
+  and is not cancelable, and that uses the <code><a href="#trackevent">TrackEvent</a></code>
+  interface, with the <code title="dom-TrackEvent-track"><a href="#dom-trackevent-track">track</a></code>
+  attribute initialized to the <code><a href="#audiotrack">AudioTrack</a></code> or
+  <code><a href="#videotrack">VideoTrack</a></code> object representing the track, at the
+  <a href="#media-element">media element</a>'s aforementioned
+  <code><a href="#audiotracklist">AudioTrackList</a></code> or <code><a href="#videotracklist">VideoTrackList</a></code>
+  object.</p>
+
   <p>The <dfn id="dom-media-duration" title="dom-media-duration"><code>duration</code></dfn>
   attribute must return the time of the end of the <a href="#media-resource">media
   resource</a>, in seconds, on the <a href="#media-timeline">media timeline</a>. If
@@ -29169,6 +29188,7 @@
 
   [TreatNonCallableAsNull] attribute <a href="#function">Function</a>? <a href="#handler-tracklist-onchange" title="handler-TrackList-onchange">onchange</a>;
   [TreatNonCallableAsNull] attribute <a href="#function">Function</a>? <a href="#handler-tracklist-onaddtrack" title="handler-TrackList-onaddtrack">onaddtrack</a>;
+  [TreatNonCallableAsNull] attribute <a href="#function">Function</a>? <a href="#handler-tracklist-onremovetrack" title="handler-TrackList-onremovetrack">onremovetrack</a>;
 };
 
 interface <dfn id="audiotrack">AudioTrack</dfn> {
@@ -29187,6 +29207,7 @@
 
   [TreatNonCallableAsNull] attribute <a href="#function">Function</a>? <a href="#handler-tracklist-onchange" title="handler-TrackList-onchange">onchange</a>;
   [TreatNonCallableAsNull] attribute <a href="#function">Function</a>? <a href="#handler-tracklist-onaddtrack" title="handler-TrackList-onaddtrack">onaddtrack</a>;
+  [TreatNonCallableAsNull] attribute <a href="#function">Function</a>? <a href="#handler-tracklist-onremovetrack" title="handler-TrackList-onremovetrack">onremovetrack</a>;
 };
 
 interface <dfn id="videotrack">VideoTrack</dfn> {
@@ -29512,6 +29533,7 @@
   <table><thead><tr><th><a href="#event-handlers" title="event handlers">Event handler</a> <th><a href="#event-handler-event-type">Event handler event type</a>
    <tbody><tr><td><dfn id="handler-tracklist-onchange" title="handler-TrackList-onchange"><code>onchange</code></dfn> <td> <code title="event-change">change</code>
     <tr><td><dfn id="handler-tracklist-onaddtrack" title="handler-TrackList-onaddtrack"><code>onaddtrack</code></dfn> <td> <code title="event-addtrack">addtrack</code>
+    <tr><td><dfn id="handler-tracklist-onremovetrack" title="handler-TrackList-onremovetrack"><code>onremovetrack</code></dfn> <td> <code title="event-removetrack">removetrack</code>
   </table><hr><p>The <a href="#task-source">task source</a> for the <a href="#concept-task" title="concept-task">tasks</a> listed in this section is the
   <a href="#dom-manipulation-task-source">DOM manipulation task source</a>.</p>
 
@@ -30875,7 +30897,14 @@
   the old parent was a <a href="#media-element">media element</a>, then the user agent
   must remove the <code><a href="#the-track-element">track</a></code> element's corresponding
   <a href="#text-track">text track</a> from the <a href="#media-element">media element</a>'s
-  <a href="#list-of-text-tracks">list of text tracks</a>.</p> 
+  <a href="#list-of-text-tracks">list of text tracks</a>, and then <a href="#queue-a-task">queue a task</a>
+  to fire an event with the name <code title="event-removetrack">removetrack</code>, that does not bubble
+  and is not cancelable, and that uses the <code><a href="#trackevent">TrackEvent</a></code>
+  interface, with the <code title="dom-TrackEvent-track"><a href="#dom-trackevent-track">track</a></code>
+  attribute initialized to the <a href="#text-track">text track</a>'s
+  <code><a href="#texttrack">TextTrack</a></code> object, at the <a href="#media-element">media element</a>'s
+  <code title="dom-media-textTracks"><a href="#dom-media-texttracks">textTracks</a></code> attribute's
+  <code><a href="#texttracklist">TextTrackList</a></code> object.</p> 
 
   <p>When a <a href="#text-track">text track</a> corresponding to a
   <code><a href="#the-track-element">track</a></code> element is added to a <a href="#media-element">media
@@ -31180,6 +31209,7 @@
   getter <a href="#texttrack">TextTrack</a> (unsigned long index);
 
   [TreatNonCallableAsNull] attribute <a href="#function">Function</a>? <a href="#handler-texttracklist-onaddtrack" title="handler-TextTrackList-onaddtrack">onaddtrack</a>;
+  [TreatNonCallableAsNull] attribute <a href="#function">Function</a>? <a href="#handler-texttracklist-onremovetrack" title="handler-TextTrackList-onremovetrack">onremovetrack</a>;
 };</pre>
 
   <dl class="domintro"><dt><var title="">media</var> . <code title="dom-media-textTracks"><a href="#dom-media-texttracks">textTracks</a></code> . <code title="">length</code></dt>
@@ -32068,6 +32098,7 @@
 
   <table><thead><tr><th><a href="#event-handlers" title="event handlers">Event handler</a> <th><a href="#event-handler-event-type">Event handler event type</a>
    <tbody><tr><td><dfn id="handler-texttracklist-onaddtrack" title="handler-TextTrackList-onaddtrack"><code>onaddtrack</code></dfn> <td> <code title="event-addtrack">addtrack</code>
+    <tr><td><dfn id="handler-texttracklist-onremovetrack" title="handler-TextTrackList-onremovetrack"><code>onremovetrack</code></dfn> <td> <code title="event-removetrack">removetrack</code>
   </table><p>The following are the <a href="#event-handlers">event handlers</a> that (and their
   corresponding <a href="#event-handler-event-type" title="event handler event type">event handler
   event types</a>) must be supported, as IDL attributes, by all

Received on Tuesday, 8 May 2012 17:22:15 UTC