[html5] r8673 - [giow] (2) Make sure that we say that enabling audio tracks and selecting video [...]
whatwg at whatwg.org
whatwg at whatwg.org
Wed Jun 11 15:25:37 PDT 2014
Author: ianh
Date: 2014-06-11 15:25:33 -0700 (Wed, 11 Jun 2014)
New Revision: 8673
Modified:
complete.html
index
source
Log:
[giow] (2) Make sure that we say that enabling audio tracks and selecting video tracks is all synchronised with the event loop
Fixing https://www.w3.org/Bugs/Public/show_bug.cgi?id=25574
Affected topics: HTML, Video and Audio
Modified: complete.html
===================================================================
--- complete.html 2014-06-11 19:38:22 UTC (rev 8672)
+++ complete.html 2014-06-11 22:25:33 UTC (rev 8673)
@@ -24770,7 +24770,10 @@
frame corresponding to the <a href=#current-playback-position>current playback position</a> in the video, the new frame
must be rendered.</dd>
- </dl><p class=note>Which frame in a video stream corresponds to a particular playback position is
+ </dl><p>Frames of video must be obtained from the video track that was <a href=#dom-videotrack-selected title=dom-VideoTrack-selected>selected</a> when the <a href=#event-loop>event loop</a> last reached
+ step 1.</p>
+
+ <p class=note>Which frame in a video stream corresponds to a particular playback position is
defined by the video stream's format.</p>
<p>The <code><a href=#the-video-element>video</a></code> element also <a href=#represents>represents</a> any <a href=#text-track-cue title="text track
@@ -24778,9 +24781,11 @@
<a href=#text-track>text track</a> is in the <a href=#text-track-showing title="text track showing">showing</a> mode, and any
audio from the <a href=#media-resource>media resource</a>, at the <a href=#current-playback-position>current playback position</a>.</p>
+<!--CLEANUP-->
<p>Any audio associated with the <a href=#media-resource>media resource</a> must, if played, be played
synchronised with the <a href=#current-playback-position>current playback position</a>, at the element's <a href=#effective-media-volume>effective
- media volume</a>.</p>
+ media volume</a>. The user agent must play the audio from audio tracks that were <a href=#dom-audiotrack-enabled title=dom-AudioTrack-enabled>enabled</a> when
+ the <a href=#event-loop>event loop</a> last reached step 1.</p>
<p>In addition to the above, the user agent may provide messages to the user (such as "buffering",
"no video loaded", "error", or more detailed information) by overlaying text or icons on the video
@@ -25017,7 +25022,8 @@
<p>When an <code><a href=#the-audio-element>audio</a></code> element is <a href=#potentially-playing>potentially playing</a>, it must have its audio
data played synchronised with the <a href=#current-playback-position>current playback position</a>, at the element's
- <a href=#effective-media-volume>effective media volume</a>.</p>
+ <a href=#effective-media-volume>effective media volume</a>. The user agent must play the audio from audio tracks that
+ were enabled when the <a href=#event-loop>event loop</a> last reached step 1.</p>
<p>When an <code><a href=#the-audio-element>audio</a></code> element is not <a href=#potentially-playing>potentially playing</a>, audio must not play
for the element.</p>
@@ -25574,11 +25580,12 @@
</p>
+<!--CLEANUP-->
<p>A <a href=#media-resource>media resource</a> can have multiple audio and video tracks. For the purposes of a
<a href=#media-element>media element</a>, the video data of the <a href=#media-resource>media resource</a> is only that of the
- currently selected track (if any) given by the element's <code title=dom-media-videoTracks><a href=#dom-media-videotracks>videoTracks</a></code> attribute, and the audio data of the <a href=#media-resource>media
+ currently selected track (if any) as given by the element's <code title=dom-media-videoTracks><a href=#dom-media-videotracks>videoTracks</a></code> attribute when the <a href=#event-loop>event loop</a> last reached step 1, and the audio data of the <a href=#media-resource>media
resource</a> is the result of mixing all the currently enabled tracks (if any) given by the
- element's <code title=dom-media-audioTracks><a href=#dom-media-audiotracks>audioTracks</a></code> attribute.</p>
+ element's <code title=dom-media-audioTracks><a href=#dom-media-audiotracks>audioTracks</a></code> attribute when the the <a href=#event-loop>event loop</a> last reached step 1.</p>
<p class=note>Both <code><a href=#the-audio-element>audio</a></code> and <code><a href=#the-video-element>video</a></code> elements can be used for both audio
and video. The main difference between the two is simply that the <code><a href=#the-audio-element>audio</a></code> element has
@@ -26356,8 +26363,9 @@
</li>
+<!--CLEANUP-->
<li><p>If <var title="">enable</var> is still <i>unknown</i>, then, if the <a href=#media-element>media
- element</a> does not yet have a selected audio track, then set <var title="">enable</var>
+ element</a> does not yet have an <a href=#dom-audiotrack-enabled title=dom-AudioTrack-enabled>enabled</a> audio track, then set <var title="">enable</var>
to <i>true</i>, otherwise, set <var title="">enable</var> to <i>false</i>.</li>
<li><p>If <var title="">enable</var> is <i>true</i>, then enable this audio track,
@@ -26396,8 +26404,9 @@
</li>
+<!--CLEANUP-->
<li><p>If <var title="">enable</var> is still <i>unknown</i>, then, if the <a href=#media-element>media
- element</a> does not yet have a selected video track, then set <var title="">enable</var>
+ element</a> does not yet have a <a href=#dom-videotrack-selected title=dom-VideoTrack-selected>selected</a> video track, then set <var title="">enable</var>
to <i>true</i>, otherwise, set <var title="">enable</var> to <i>false</i>.</li>
<li><p>If <var title="">enable</var> is <i>true</i>, then select this track and unselect any
@@ -26493,10 +26502,12 @@
</li>
- <li><p>If there is no enabled audio track, then enable an audio track. This <a href=#toggle-audio-track>will cause a <code title=event-media-change>change</code> event
+<!--CLEANUP-->
+ <li><p>If there is no <a href=#dom-audiotrack-enabled title=dom-AudioTrack-enabled>enabled</a> audio track, then enable an audio track. This <a href=#toggle-audio-track>will cause a <code title=event-media-change>change</code> event
to be fired</a>.</li>
- <li><p>If there is no selected video track, then select a video track. This <a href=#toggle-video-track>will cause a <code title=event-media-change>change</code> event
+<!--CLEANUP-->
+ <li><p>If there is no <a href=#dom-videotrack-selected title=dom-VideoTrack-selected>selected</a> video track, then select a video track. This <a href=#toggle-video-track>will cause a <code title=event-media-change>change</code> event
to be fired</a>.</li>
<li><p>If the <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media controller</a>, then:
@@ -28389,6 +28400,7 @@
being selected or unselected has no effect beyond changing the value of the attribute on the
<code><a href=#videotrack>VideoTrack</a></code> object.)</p>
+<!--CLEANUP-->
<p id=toggle-video-track>Whenever a track in a <code><a href=#videotracklist>VideoTrackList</a></code> that was previously not selected is selected,
the user agent must <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-change><a href=#event-media-change>change</a></code> at the <code><a href=#videotracklist>VideoTrackList</a></code> object. This <a href=#concept-task title=concept-task>task</a> must be <a href=#queue-a-task title="queue a task">queued</a> before the
<a href=#concept-task title=concept-task>task</a> that fires the <code title=event-media-resize><a href=#event-media-resize>resize</a></code> event, if any.</p>
Modified: index
===================================================================
--- index 2014-06-11 19:38:22 UTC (rev 8672)
+++ index 2014-06-11 22:25:33 UTC (rev 8673)
@@ -24770,7 +24770,10 @@
frame corresponding to the <a href=#current-playback-position>current playback position</a> in the video, the new frame
must be rendered.</dd>
- </dl><p class=note>Which frame in a video stream corresponds to a particular playback position is
+ </dl><p>Frames of video must be obtained from the video track that was <a href=#dom-videotrack-selected title=dom-VideoTrack-selected>selected</a> when the <a href=#event-loop>event loop</a> last reached
+ step 1.</p>
+
+ <p class=note>Which frame in a video stream corresponds to a particular playback position is
defined by the video stream's format.</p>
<p>The <code><a href=#the-video-element>video</a></code> element also <a href=#represents>represents</a> any <a href=#text-track-cue title="text track
@@ -24778,9 +24781,11 @@
<a href=#text-track>text track</a> is in the <a href=#text-track-showing title="text track showing">showing</a> mode, and any
audio from the <a href=#media-resource>media resource</a>, at the <a href=#current-playback-position>current playback position</a>.</p>
+<!--CLEANUP-->
<p>Any audio associated with the <a href=#media-resource>media resource</a> must, if played, be played
synchronised with the <a href=#current-playback-position>current playback position</a>, at the element's <a href=#effective-media-volume>effective
- media volume</a>.</p>
+ media volume</a>. The user agent must play the audio from audio tracks that were <a href=#dom-audiotrack-enabled title=dom-AudioTrack-enabled>enabled</a> when
+ the <a href=#event-loop>event loop</a> last reached step 1.</p>
<p>In addition to the above, the user agent may provide messages to the user (such as "buffering",
"no video loaded", "error", or more detailed information) by overlaying text or icons on the video
@@ -25017,7 +25022,8 @@
<p>When an <code><a href=#the-audio-element>audio</a></code> element is <a href=#potentially-playing>potentially playing</a>, it must have its audio
data played synchronised with the <a href=#current-playback-position>current playback position</a>, at the element's
- <a href=#effective-media-volume>effective media volume</a>.</p>
+ <a href=#effective-media-volume>effective media volume</a>. The user agent must play the audio from audio tracks that
+ were enabled when the <a href=#event-loop>event loop</a> last reached step 1.</p>
<p>When an <code><a href=#the-audio-element>audio</a></code> element is not <a href=#potentially-playing>potentially playing</a>, audio must not play
for the element.</p>
@@ -25574,11 +25580,12 @@
</p>
+<!--CLEANUP-->
<p>A <a href=#media-resource>media resource</a> can have multiple audio and video tracks. For the purposes of a
<a href=#media-element>media element</a>, the video data of the <a href=#media-resource>media resource</a> is only that of the
- currently selected track (if any) given by the element's <code title=dom-media-videoTracks><a href=#dom-media-videotracks>videoTracks</a></code> attribute, and the audio data of the <a href=#media-resource>media
+ currently selected track (if any) as given by the element's <code title=dom-media-videoTracks><a href=#dom-media-videotracks>videoTracks</a></code> attribute when the <a href=#event-loop>event loop</a> last reached step 1, and the audio data of the <a href=#media-resource>media
resource</a> is the result of mixing all the currently enabled tracks (if any) given by the
- element's <code title=dom-media-audioTracks><a href=#dom-media-audiotracks>audioTracks</a></code> attribute.</p>
+ element's <code title=dom-media-audioTracks><a href=#dom-media-audiotracks>audioTracks</a></code> attribute when the the <a href=#event-loop>event loop</a> last reached step 1.</p>
<p class=note>Both <code><a href=#the-audio-element>audio</a></code> and <code><a href=#the-video-element>video</a></code> elements can be used for both audio
and video. The main difference between the two is simply that the <code><a href=#the-audio-element>audio</a></code> element has
@@ -26356,8 +26363,9 @@
</li>
+<!--CLEANUP-->
<li><p>If <var title="">enable</var> is still <i>unknown</i>, then, if the <a href=#media-element>media
- element</a> does not yet have a selected audio track, then set <var title="">enable</var>
+ element</a> does not yet have an <a href=#dom-audiotrack-enabled title=dom-AudioTrack-enabled>enabled</a> audio track, then set <var title="">enable</var>
to <i>true</i>, otherwise, set <var title="">enable</var> to <i>false</i>.</li>
<li><p>If <var title="">enable</var> is <i>true</i>, then enable this audio track,
@@ -26396,8 +26404,9 @@
</li>
+<!--CLEANUP-->
<li><p>If <var title="">enable</var> is still <i>unknown</i>, then, if the <a href=#media-element>media
- element</a> does not yet have a selected video track, then set <var title="">enable</var>
+ element</a> does not yet have a <a href=#dom-videotrack-selected title=dom-VideoTrack-selected>selected</a> video track, then set <var title="">enable</var>
to <i>true</i>, otherwise, set <var title="">enable</var> to <i>false</i>.</li>
<li><p>If <var title="">enable</var> is <i>true</i>, then select this track and unselect any
@@ -26493,10 +26502,12 @@
</li>
- <li><p>If there is no enabled audio track, then enable an audio track. This <a href=#toggle-audio-track>will cause a <code title=event-media-change>change</code> event
+<!--CLEANUP-->
+ <li><p>If there is no <a href=#dom-audiotrack-enabled title=dom-AudioTrack-enabled>enabled</a> audio track, then enable an audio track. This <a href=#toggle-audio-track>will cause a <code title=event-media-change>change</code> event
to be fired</a>.</li>
- <li><p>If there is no selected video track, then select a video track. This <a href=#toggle-video-track>will cause a <code title=event-media-change>change</code> event
+<!--CLEANUP-->
+ <li><p>If there is no <a href=#dom-videotrack-selected title=dom-VideoTrack-selected>selected</a> video track, then select a video track. This <a href=#toggle-video-track>will cause a <code title=event-media-change>change</code> event
to be fired</a>.</li>
<li><p>If the <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media controller</a>, then:
@@ -28389,6 +28400,7 @@
being selected or unselected has no effect beyond changing the value of the attribute on the
<code><a href=#videotrack>VideoTrack</a></code> object.)</p>
+<!--CLEANUP-->
<p id=toggle-video-track>Whenever a track in a <code><a href=#videotracklist>VideoTrackList</a></code> that was previously not selected is selected,
the user agent must <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-change><a href=#event-media-change>change</a></code> at the <code><a href=#videotracklist>VideoTrackList</a></code> object. This <a href=#concept-task title=concept-task>task</a> must be <a href=#queue-a-task title="queue a task">queued</a> before the
<a href=#concept-task title=concept-task>task</a> that fires the <code title=event-media-resize><a href=#event-media-resize>resize</a></code> event, if any.</p>
Modified: source
===================================================================
--- source 2014-06-11 19:38:22 UTC (rev 8672)
+++ source 2014-06-11 22:25:33 UTC (rev 8673)
@@ -24947,6 +24947,10 @@
</dl>
+ <p>Frames of video must be obtained from the video track that was <span
+ data-x="dom-VideoTrack-selected">selected</span> when the <span>event loop</span> last reached
+ step 1.</p>
+
<p class="note">Which frame in a video stream corresponds to a particular playback position is
defined by the video stream's format.</p>
@@ -24955,9 +24959,11 @@
<span>text track</span> is in the <span data-x="text track showing">showing</span> mode, and any
audio from the <span>media resource</span>, at the <span>current playback position</span>.</p>
+<!--CLEANUP-->
<p>Any audio associated with the <span>media resource</span> must, if played, be played
synchronised with the <span>current playback position</span>, at the element's <span>effective
- media volume</span>.</p>
+ media volume</span>. The user agent must play the audio from audio tracks that were <span data-x="dom-AudioTrack-enabled">enabled</span> when
+ the <span>event loop</span> last reached step 1.</p>
<p>In addition to the above, the user agent may provide messages to the user (such as "buffering",
"no video loaded", "error", or more detailed information) by overlaying text or icons on the video
@@ -25215,7 +25221,8 @@
<p>When an <code>audio</code> element is <span>potentially playing</span>, it must have its audio
data played synchronised with the <span>current playback position</span>, at the element's
- <span>effective media volume</span>.</p>
+ <span>effective media volume</span>. The user agent must play the audio from audio tracks that
+ were enabled when the <span>event loop</span> last reached step 1.</p>
<p>When an <code>audio</code> element is not <span>potentially playing</span>, audio must not play
for the element.</p>
@@ -25839,12 +25846,13 @@
</p>
+<!--CLEANUP-->
<p>A <span>media resource</span> can have multiple audio and video tracks. For the purposes of a
<span>media element</span>, the video data of the <span>media resource</span> is only that of the
- currently selected track (if any) given by the element's <code
- data-x="dom-media-videoTracks">videoTracks</code> attribute, and the audio data of the <span>media
+ currently selected track (if any) as given by the element's <code
+ data-x="dom-media-videoTracks">videoTracks</code> attribute when the <span>event loop</span> last reached step 1, and the audio data of the <span>media
resource</span> is the result of mixing all the currently enabled tracks (if any) given by the
- element's <code data-x="dom-media-audioTracks">audioTracks</code> attribute.</p>
+ element's <code data-x="dom-media-audioTracks">audioTracks</code> attribute when the the <span>event loop</span> last reached step 1.</p>
<p class="note">Both <code>audio</code> and <code>video</code> elements can be used for both audio
and video. The main difference between the two is simply that the <code>audio</code> element has
@@ -26764,8 +26772,9 @@
</li>
+<!--CLEANUP-->
<li><p>If <var data-x="">enable</var> is still <i>unknown</i>, then, if the <span>media
- element</span> does not yet have a selected audio track, then set <var data-x="">enable</var>
+ element</span> does not yet have an <span data-x="dom-AudioTrack-enabled">enabled</span> audio track, then set <var data-x="">enable</var>
to <i>true</i>, otherwise, set <var data-x="">enable</var> to <i>false</i>.</p></li>
<li><p>If <var data-x="">enable</var> is <i>true</i>, then enable this audio track,
@@ -26812,8 +26821,9 @@
</li>
+<!--CLEANUP-->
<li><p>If <var data-x="">enable</var> is still <i>unknown</i>, then, if the <span>media
- element</span> does not yet have a selected video track, then set <var data-x="">enable</var>
+ element</span> does not yet have a <span data-x="dom-VideoTrack-selected">selected</span> video track, then set <var data-x="">enable</var>
to <i>true</i>, otherwise, set <var data-x="">enable</var> to <i>false</i>.</p></li>
<li><p>If <var data-x="">enable</var> is <i>true</i>, then select this track and unselect any
@@ -26925,11 +26935,13 @@
</li>
- <li><p>If there is no enabled audio track, then enable an audio track. This <a
+<!--CLEANUP-->
+ <li><p>If there is no <span data-x="dom-AudioTrack-enabled">enabled</span> audio track, then enable an audio track. This <a
href="#toggle-audio-track">will cause a <code data-x="event-media-change">change</code> event
to be fired</a>.</p></li>
- <li><p>If there is no selected video track, then select a video track. This <a
+<!--CLEANUP-->
+ <li><p>If there is no <span data-x="dom-VideoTrack-selected">selected</span> video track, then select a video track. This <a
href="#toggle-video-track">will cause a <code data-x="event-media-change">change</code> event
to be fired</a>.</p></li>
@@ -29161,6 +29173,7 @@
being selected or unselected has no effect beyond changing the value of the attribute on the
<code>VideoTrack</code> object.)</p>
+<!--CLEANUP-->
<p id="toggle-video-track">Whenever a track in a <code>VideoTrackList</code> that was previously not selected is selected,
the user agent must <span>queue a task</span> to <span>fire a simple event</span> named <code
data-x="event-media-change">change</code> at the <code>VideoTrackList</code> object. This <span
More information about the Commit-Watchers
mailing list