[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