- From: Ian Hickson via cvs-syncmail <cvsmail@w3.org>
- Date: Tue, 08 May 2012 17:22:10 +0000
- To: public-html-commits@w3.org
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