[html5] r8803 - [e] (0) Turn the 'initial playback position' into just a variable. Fixing https: [...]
whatwg at whatwg.org
whatwg at whatwg.org
Fri Sep 19 16:39:58 PDT 2014
Author: ianh
Date: 2014-09-19 16:39:54 -0700 (Fri, 19 Sep 2014)
New Revision: 8803
Modified:
complete.html
index
source
Log:
[e] (0) Turn the 'initial playback position' into just a variable.
Fixing https://www.w3.org/Bugs/Public/show_bug.cgi?id=26771
Affected topics: Video and Audio
Modified: complete.html
===================================================================
--- complete.html 2014-09-19 23:37:25 UTC (rev 8802)
+++ complete.html 2014-09-19 23:39:54 UTC (rev 8803)
@@ -22365,7 +22365,7 @@
<p>If this changed the <a href=#official-playback-position id=loading-the-media-resource:official-playback-position-2>official playback position</a>, then <a href=#queue-a-task id=loading-the-media-resource:queue-a-task-3>queue a task</a>
to <a href=#fire-a-simple-event id=loading-the-media-resource:fire-a-simple-event-3>fire a simple event</a> named <code id=loading-the-media-resource:event-media-timeupdate><a href=#event-media-timeupdate>timeupdate</a></code> at the <a href=#media-element id=loading-the-media-resource:media-element-9>media element</a>.</p>
- <li><p>Set the <a href=#initial-playback-position id=loading-the-media-resource:initial-playback-position>initial playback position</a> to 0.<li><p>Set the <a href=#timeline-offset id=loading-the-media-resource:timeline-offset>timeline offset</a> to Not-a-Number (NaN).<li>
+ <li><p>Set the <a href=#timeline-offset id=loading-the-media-resource:timeline-offset>timeline offset</a> to Not-a-Number (NaN).<li>
<p>Update the <code id=loading-the-media-resource:dom-media-duration><a href=#dom-media-duration>duration</a></code> attribute to Not-a-Number
(NaN).</p>
@@ -22736,8 +22736,7 @@
<ol><li>
<p><a href=#defineTimeline id=loading-the-media-resource:defineTimeline>Establish the media timeline</a> for the purposes of the <a href=#current-playback-position id=loading-the-media-resource:current-playback-position-2>current playback
- position</a>, the <a href=#earliest-possible-position id=loading-the-media-resource:earliest-possible-position>earliest possible position</a>, and the <a href=#initial-playback-position id=loading-the-media-resource:initial-playback-position-2>initial playback
- position</a>, based on the <a href=#media-data id=loading-the-media-resource:media-data-9>media data</a>.</p>
+ position</a> and the <a href=#earliest-possible-position id=loading-the-media-resource:earliest-possible-position>earliest possible position</a>, based on the <a href=#media-data id=loading-the-media-resource:media-data-9>media data</a>.</p>
<li>
@@ -22776,11 +22775,11 @@
<li><p>Let <var>jumped</var> be false.<li><p>If the <a href=#media-element id=loading-the-media-resource:media-element-36>media element</a>'s <a href=#default-playback-start-position id=loading-the-media-resource:default-playback-start-position>default playback start position</a> is
greater than zero, then <a href=#dom-media-seek id=loading-the-media-resource:dom-media-seek>seek</a> to that time, and let <var>jumped</var> be true.<li><p>Let the <a href=#media-element id=loading-the-media-resource:media-element-37>media element</a>'s <a href=#default-playback-start-position id=loading-the-media-resource:default-playback-start-position-2>default playback
- start position</a> be zero.<li>
+ start position</a> be zero.<li><p>Let the <var>initial playback position</var> be zero.<li>
<p>If either the <a href=#media-resource id=loading-the-media-resource:media-resource-14>media resource</a> or the address of the <var>current
- media resource</var> indicate a particular start time, then set the <a href=#initial-playback-position id=loading-the-media-resource:initial-playback-position-3>initial playback
- position</a> to that time and, if <var>jumped</var> is still false, <a href=#dom-media-seek id=loading-the-media-resource:dom-media-seek-2>seek</a> to that time and let <var>jumped</var> be
+ media resource</var> indicate a particular start time, then set the <var>initial playback
+ position</var> to that time and, if <var>jumped</var> is still false, <a href=#dom-media-seek id=loading-the-media-resource:dom-media-seek-2>seek</a> to that time and let <var>jumped</var> be
true.</p>
<p class=example>For example, with media formats that support the <cite>Media Fragments
@@ -22790,11 +22789,11 @@
<li><p>If there is no <a href=#dom-audiotrack-enabled id=loading-the-media-resource:dom-audiotrack-enabled-2>enabled</a> audio track, then
enable an audio track. This <a href=#toggle-audio-track>will cause a <code>change</code> event to be fired</a>.<li><p>If there is no <a href=#dom-videotrack-selected id=loading-the-media-resource:dom-videotrack-selected-2>selected</a> video track,
then select a video track. This <a href=#toggle-video-track>will cause a <code>change</code> event to be fired</a>.<li><p>If the <a href=#media-element id=loading-the-media-resource:media-element-38>media element</a> has a <a href=#current-media-controller id=loading-the-media-resource:current-media-controller>current media controller</a>, then:
- if <var>jumped</var> is true and the <a href=#initial-playback-position id=loading-the-media-resource:initial-playback-position-4>initial playback position</a>,
+ if <var>jumped</var> is true and the <var>initial playback position</var>,
relative to the <a href=#current-media-controller id=loading-the-media-resource:current-media-controller-2>current media controller</a>'s timeline, is greater than the
<a href=#current-media-controller id=loading-the-media-resource:current-media-controller-3>current media controller</a>'s <a href=#media-controller-position id=loading-the-media-resource:media-controller-position>media controller position</a>, then
- <a href=#seek-the-media-controller id=loading-the-media-resource:seek-the-media-controller>seek the media controller</a> to the <a href=#media-element id=loading-the-media-resource:media-element-39>media element</a>'s <a href=#initial-playback-position id=loading-the-media-resource:initial-playback-position-5>initial
- playback position</a>, relative to the <a href=#current-media-controller id=loading-the-media-resource:current-media-controller-4>current media controller</a>'s timeline;
+ <a href=#seek-the-media-controller id=loading-the-media-resource:seek-the-media-controller>seek the media controller</a> to the <a href=#media-element id=loading-the-media-resource:media-element-39>media element</a>'s <var>initial
+ playback position</var>, relative to the <a href=#current-media-controller id=loading-the-media-resource:current-media-controller-4>current media controller</a>'s timeline;
otherwise, <a href=#dom-media-seek id=loading-the-media-resource:dom-media-seek-3>seek</a> the <a href=#media-element id=loading-the-media-resource:media-element-40>media element</a> to the
<a href=#media-controller-position id=loading-the-media-resource:media-controller-position-2>media controller position</a>, relative to the <a href=#media-element id=loading-the-media-resource:media-element-41>media element</a>'s
timeline.</ol>
@@ -23139,16 +23138,11 @@
set the <a href=#official-playback-position id=offsets-into-the-media-resource:official-playback-position-4>official playback position</a> to the new value and then <a href=#dom-media-seek id=offsets-into-the-media-resource:dom-media-seek>seek</a> to the new value. The new value must be interpreted as being in
seconds.</p>
- <p><a href=#media-element id=offsets-into-the-media-resource:media-element-11>Media elements</a> have an <dfn id=initial-playback-position>initial playback position</dfn>,
- which must initially (i.e. in the absence of <a href=#media-data id=offsets-into-the-media-resource:media-data-3>media data</a>) be zero seconds. The
- <a href=#initial-playback-position id=offsets-into-the-media-resource:initial-playback-position>initial playback position</a> is updated when a <a href=#media-resource id=offsets-into-the-media-resource:media-resource-18>media resource</a> is loaded.
- The <a href=#initial-playback-position id=offsets-into-the-media-resource:initial-playback-position-2>initial playback position</a> is a time on the <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-11>media timeline</a>.</p>
-
- <p>If the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-19>media resource</a> is a streaming resource, then the user agent might be unable
+ <p>If the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-18>media resource</a> is a streaming resource, then the user agent might be unable
to obtain certain parts of the resource after it has expired from its buffer. Similarly, some
- <a href=#media-resource id=offsets-into-the-media-resource:media-resource-20>media resources</a> might have a <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-12>media timeline</a> that
+ <a href=#media-resource id=offsets-into-the-media-resource:media-resource-19>media resources</a> might have a <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-11>media timeline</a> that
doesn't start at zero. The <dfn id=earliest-possible-position>earliest possible position</dfn> is the earliest position in the
- stream or resource that the user agent can ever obtain again. It is also a time on the <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-13>media
+ stream or resource that the user agent can ever obtain again. It is also a time on the <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-12>media
timeline</a>.</p>
<p class=note>The <a href=#earliest-possible-position id=offsets-into-the-media-resource:earliest-possible-position-3>earliest possible position</a> is not explicitly exposed in the API;
@@ -23167,43 +23161,43 @@
- <p>If at any time the user agent learns that an audio or video track has ended and all <a href=#media-data id=offsets-into-the-media-resource:media-data-4>media
- data</a> relating to that track corresponds to parts of the <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-14>media timeline</a> that
+ <p>If at any time the user agent learns that an audio or video track has ended and all <a href=#media-data id=offsets-into-the-media-resource:media-data-3>media
+ data</a> relating to that track corresponds to parts of the <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-13>media timeline</a> that
are <em>before</em> the <a href=#earliest-possible-position id=offsets-into-the-media-resource:earliest-possible-position-8>earliest possible position</a>, the user agent may <a href=#queue-a-task id=offsets-into-the-media-resource:queue-a-task-2>queue a
task</a> to first remove the track from the <code id=offsets-into-the-media-resource:dom-media-audiotracks><a href=#dom-media-audiotracks>audioTracks</a></code>
attribute's <code id=offsets-into-the-media-resource:audiotracklist><a href=#audiotracklist>AudioTrackList</a></code> object or the <code id=offsets-into-the-media-resource:dom-media-videotracks><a href=#dom-media-videotracks>videoTracks</a></code> attribute's <code id=offsets-into-the-media-resource:videotracklist><a href=#videotracklist>VideoTrackList</a></code> object as
appropriate and then <a href=#concept-event-fire id=offsets-into-the-media-resource:concept-event-fire>fire</a> a <a href=#concept-events-trusted id=offsets-into-the-media-resource:concept-events-trusted>trusted</a> event with the name <code id=offsets-into-the-media-resource:event-media-removetrack><a href=#event-media-removetrack>removetrack</a></code>, that does not bubble and is not cancelable, and that
uses the <code id=offsets-into-the-media-resource:trackevent><a href=#trackevent>TrackEvent</a></code> interface, with the <code id=offsets-into-the-media-resource:dom-trackevent-track><a href=#dom-trackevent-track>track</a></code> attribute initialised to the <code id=offsets-into-the-media-resource:audiotrack><a href=#audiotrack>AudioTrack</a></code> or
- <code id=offsets-into-the-media-resource:videotrack><a href=#videotrack>VideoTrack</a></code> object representing the track, at the <a href=#media-element id=offsets-into-the-media-resource:media-element-12>media element</a>'s
+ <code id=offsets-into-the-media-resource:videotrack><a href=#videotrack>VideoTrack</a></code> object representing the track, at the <a href=#media-element id=offsets-into-the-media-resource:media-element-11>media element</a>'s
aforementioned <code id=offsets-into-the-media-resource:audiotracklist-2><a href=#audiotracklist>AudioTrackList</a></code> or <code id=offsets-into-the-media-resource:videotracklist-2><a href=#videotracklist>VideoTrackList</a></code> object.</p>
<p>The <dfn id=dom-media-duration><code>duration</code></dfn> attribute must return the time
- of the end of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-21>media resource</a>, in seconds, on the <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-15>media timeline</a>. If
- no <a href=#media-data id=offsets-into-the-media-resource:media-data-5>media data</a> is available, then the attributes must return the Not-a-Number (NaN)
- value. If the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-22>media resource</a> is not known to be bounded (e.g. streaming radio, or a
+ of the end of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-20>media resource</a>, in seconds, on the <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-14>media timeline</a>. If
+ no <a href=#media-data id=offsets-into-the-media-resource:media-data-4>media data</a> is available, then the attributes must return the Not-a-Number (NaN)
+ value. If the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-21>media resource</a> is not known to be bounded (e.g. streaming radio, or a
live event with no announced end time), then the attribute must return the positive Infinity
value.</p>
- <p>The user agent must determine the duration of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-23>media resource</a> before playing
- any part of the <a href=#media-data id=offsets-into-the-media-resource:media-data-6>media data</a> and before setting <code id=offsets-into-the-media-resource:dom-media-readystate-2><a href=#dom-media-readystate>readyState</a></code> to a value equal to or greater than <code id=offsets-into-the-media-resource:dom-media-have_metadata><a href=#dom-media-have_metadata>HAVE_METADATA</a></code>, even if doing so requires fetching multiple
+ <p>The user agent must determine the duration of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-22>media resource</a> before playing
+ any part of the <a href=#media-data id=offsets-into-the-media-resource:media-data-5>media data</a> and before setting <code id=offsets-into-the-media-resource:dom-media-readystate-2><a href=#dom-media-readystate>readyState</a></code> to a value equal to or greater than <code id=offsets-into-the-media-resource:dom-media-have_metadata><a href=#dom-media-have_metadata>HAVE_METADATA</a></code>, even if doing so requires fetching multiple
parts of the resource.</p>
- <p id=durationChange>When the length of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-24>media resource</a> changes to a known value
+ <p id=durationChange>When the length of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-23>media resource</a> changes to a known value
(e.g. from being unknown to known, or from a previously established length to a new length) the
- user agent must <a href=#queue-a-task id=offsets-into-the-media-resource:queue-a-task-3>queue a task</a> to <a href=#fire-a-simple-event id=offsets-into-the-media-resource:fire-a-simple-event-2>fire a simple event</a> named <code id=offsets-into-the-media-resource:event-media-durationchange><a href=#event-media-durationchange>durationchange</a></code> at the <a href=#media-element id=offsets-into-the-media-resource:media-element-13>media element</a>. (The
+ user agent must <a href=#queue-a-task id=offsets-into-the-media-resource:queue-a-task-3>queue a task</a> to <a href=#fire-a-simple-event id=offsets-into-the-media-resource:fire-a-simple-event-2>fire a simple event</a> named <code id=offsets-into-the-media-resource:event-media-durationchange><a href=#event-media-durationchange>durationchange</a></code> at the <a href=#media-element id=offsets-into-the-media-resource:media-element-12>media element</a>. (The
event is not fired when the duration is reset as part of loading a new media resource.) If the
duration is changed such that the <a href=#current-playback-position id=offsets-into-the-media-resource:current-playback-position-6>current playback position</a> ends up being greater
- than the time of the end of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-25>media resource</a>, then the user agent must also <a href=#dom-media-seek id=offsets-into-the-media-resource:dom-media-seek-3>seek</a> to the time of the end of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-26>media resource</a>.</p>
+ than the time of the end of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-24>media resource</a>, then the user agent must also <a href=#dom-media-seek id=offsets-into-the-media-resource:dom-media-seek-3>seek</a> to the time of the end of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-25>media resource</a>.</p>
<p class=example>If an "infinite" stream ends for some reason, then the duration would change
from positive Infinity to the time of the last frame or sample in the stream, and the <code id=offsets-into-the-media-resource:event-media-durationchange-2><a href=#event-media-durationchange>durationchange</a></code> event would be fired. Similarly, if the
- user agent initially estimated the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-27>media resource</a>'s duration instead of determining
+ user agent initially estimated the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-26>media resource</a>'s duration instead of determining
it precisely, and later revises the estimate based on new information, then the duration would
change and the <code id=offsets-into-the-media-resource:event-media-durationchange-3><a href=#event-media-durationchange>durationchange</a></code> event would be
fired.</p>
<p>Some video files also have an explicit date and time corresponding to the zero time in the
- <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-16>media timeline</a>, known as the <dfn id=timeline-offset>timeline offset</dfn>. Initially, the
+ <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-15>media timeline</a>, known as the <dfn id=timeline-offset>timeline offset</dfn>. Initially, the
<a href=#timeline-offset id=offsets-into-the-media-resource:timeline-offset-2>timeline offset</a> must be set to Not-a-Number (NaN).</p>
<p>The <dfn id=dom-media-getstartdate><code>getStartDate()</code></dfn> method must return <a href=#create-a-date-object id=offsets-into-the-media-resource:create-a-date-object>a new <code>Date</code> object</a> representing the current
@@ -23214,8 +23208,8 @@
<hr>
<p>The <dfn id=attr-media-loop><code>loop</code></dfn> attribute is a <a href=#boolean-attribute id=offsets-into-the-media-resource:boolean-attribute>boolean
- attribute</a> that, if specified, indicates that the <a href=#media-element id=offsets-into-the-media-resource:media-element-14>media element</a> is to seek back
- to the start of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-28>media resource</a> upon reaching the end.</p>
+ attribute</a> that, if specified, indicates that the <a href=#media-element id=offsets-into-the-media-resource:media-element-13>media element</a> is to seek back
+ to the start of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-27>media resource</a> upon reaching the end.</p>
<p>The <code id=offsets-into-the-media-resource:attr-media-loop><a href=#attr-media-loop>loop</a></code> attribute has no effect while the element has a
<a href=#current-media-controller id=offsets-into-the-media-resource:current-media-controller-4>current media controller</a>.</p>
Modified: index
===================================================================
--- index 2014-09-19 23:37:25 UTC (rev 8802)
+++ index 2014-09-19 23:39:54 UTC (rev 8803)
@@ -22365,7 +22365,7 @@
<p>If this changed the <a href=#official-playback-position id=loading-the-media-resource:official-playback-position-2>official playback position</a>, then <a href=#queue-a-task id=loading-the-media-resource:queue-a-task-3>queue a task</a>
to <a href=#fire-a-simple-event id=loading-the-media-resource:fire-a-simple-event-3>fire a simple event</a> named <code id=loading-the-media-resource:event-media-timeupdate><a href=#event-media-timeupdate>timeupdate</a></code> at the <a href=#media-element id=loading-the-media-resource:media-element-9>media element</a>.</p>
- <li><p>Set the <a href=#initial-playback-position id=loading-the-media-resource:initial-playback-position>initial playback position</a> to 0.<li><p>Set the <a href=#timeline-offset id=loading-the-media-resource:timeline-offset>timeline offset</a> to Not-a-Number (NaN).<li>
+ <li><p>Set the <a href=#timeline-offset id=loading-the-media-resource:timeline-offset>timeline offset</a> to Not-a-Number (NaN).<li>
<p>Update the <code id=loading-the-media-resource:dom-media-duration><a href=#dom-media-duration>duration</a></code> attribute to Not-a-Number
(NaN).</p>
@@ -22736,8 +22736,7 @@
<ol><li>
<p><a href=#defineTimeline id=loading-the-media-resource:defineTimeline>Establish the media timeline</a> for the purposes of the <a href=#current-playback-position id=loading-the-media-resource:current-playback-position-2>current playback
- position</a>, the <a href=#earliest-possible-position id=loading-the-media-resource:earliest-possible-position>earliest possible position</a>, and the <a href=#initial-playback-position id=loading-the-media-resource:initial-playback-position-2>initial playback
- position</a>, based on the <a href=#media-data id=loading-the-media-resource:media-data-9>media data</a>.</p>
+ position</a> and the <a href=#earliest-possible-position id=loading-the-media-resource:earliest-possible-position>earliest possible position</a>, based on the <a href=#media-data id=loading-the-media-resource:media-data-9>media data</a>.</p>
<li>
@@ -22776,11 +22775,11 @@
<li><p>Let <var>jumped</var> be false.<li><p>If the <a href=#media-element id=loading-the-media-resource:media-element-36>media element</a>'s <a href=#default-playback-start-position id=loading-the-media-resource:default-playback-start-position>default playback start position</a> is
greater than zero, then <a href=#dom-media-seek id=loading-the-media-resource:dom-media-seek>seek</a> to that time, and let <var>jumped</var> be true.<li><p>Let the <a href=#media-element id=loading-the-media-resource:media-element-37>media element</a>'s <a href=#default-playback-start-position id=loading-the-media-resource:default-playback-start-position-2>default playback
- start position</a> be zero.<li>
+ start position</a> be zero.<li><p>Let the <var>initial playback position</var> be zero.<li>
<p>If either the <a href=#media-resource id=loading-the-media-resource:media-resource-14>media resource</a> or the address of the <var>current
- media resource</var> indicate a particular start time, then set the <a href=#initial-playback-position id=loading-the-media-resource:initial-playback-position-3>initial playback
- position</a> to that time and, if <var>jumped</var> is still false, <a href=#dom-media-seek id=loading-the-media-resource:dom-media-seek-2>seek</a> to that time and let <var>jumped</var> be
+ media resource</var> indicate a particular start time, then set the <var>initial playback
+ position</var> to that time and, if <var>jumped</var> is still false, <a href=#dom-media-seek id=loading-the-media-resource:dom-media-seek-2>seek</a> to that time and let <var>jumped</var> be
true.</p>
<p class=example>For example, with media formats that support the <cite>Media Fragments
@@ -22790,11 +22789,11 @@
<li><p>If there is no <a href=#dom-audiotrack-enabled id=loading-the-media-resource:dom-audiotrack-enabled-2>enabled</a> audio track, then
enable an audio track. This <a href=#toggle-audio-track>will cause a <code>change</code> event to be fired</a>.<li><p>If there is no <a href=#dom-videotrack-selected id=loading-the-media-resource:dom-videotrack-selected-2>selected</a> video track,
then select a video track. This <a href=#toggle-video-track>will cause a <code>change</code> event to be fired</a>.<li><p>If the <a href=#media-element id=loading-the-media-resource:media-element-38>media element</a> has a <a href=#current-media-controller id=loading-the-media-resource:current-media-controller>current media controller</a>, then:
- if <var>jumped</var> is true and the <a href=#initial-playback-position id=loading-the-media-resource:initial-playback-position-4>initial playback position</a>,
+ if <var>jumped</var> is true and the <var>initial playback position</var>,
relative to the <a href=#current-media-controller id=loading-the-media-resource:current-media-controller-2>current media controller</a>'s timeline, is greater than the
<a href=#current-media-controller id=loading-the-media-resource:current-media-controller-3>current media controller</a>'s <a href=#media-controller-position id=loading-the-media-resource:media-controller-position>media controller position</a>, then
- <a href=#seek-the-media-controller id=loading-the-media-resource:seek-the-media-controller>seek the media controller</a> to the <a href=#media-element id=loading-the-media-resource:media-element-39>media element</a>'s <a href=#initial-playback-position id=loading-the-media-resource:initial-playback-position-5>initial
- playback position</a>, relative to the <a href=#current-media-controller id=loading-the-media-resource:current-media-controller-4>current media controller</a>'s timeline;
+ <a href=#seek-the-media-controller id=loading-the-media-resource:seek-the-media-controller>seek the media controller</a> to the <a href=#media-element id=loading-the-media-resource:media-element-39>media element</a>'s <var>initial
+ playback position</var>, relative to the <a href=#current-media-controller id=loading-the-media-resource:current-media-controller-4>current media controller</a>'s timeline;
otherwise, <a href=#dom-media-seek id=loading-the-media-resource:dom-media-seek-3>seek</a> the <a href=#media-element id=loading-the-media-resource:media-element-40>media element</a> to the
<a href=#media-controller-position id=loading-the-media-resource:media-controller-position-2>media controller position</a>, relative to the <a href=#media-element id=loading-the-media-resource:media-element-41>media element</a>'s
timeline.</ol>
@@ -23139,16 +23138,11 @@
set the <a href=#official-playback-position id=offsets-into-the-media-resource:official-playback-position-4>official playback position</a> to the new value and then <a href=#dom-media-seek id=offsets-into-the-media-resource:dom-media-seek>seek</a> to the new value. The new value must be interpreted as being in
seconds.</p>
- <p><a href=#media-element id=offsets-into-the-media-resource:media-element-11>Media elements</a> have an <dfn id=initial-playback-position>initial playback position</dfn>,
- which must initially (i.e. in the absence of <a href=#media-data id=offsets-into-the-media-resource:media-data-3>media data</a>) be zero seconds. The
- <a href=#initial-playback-position id=offsets-into-the-media-resource:initial-playback-position>initial playback position</a> is updated when a <a href=#media-resource id=offsets-into-the-media-resource:media-resource-18>media resource</a> is loaded.
- The <a href=#initial-playback-position id=offsets-into-the-media-resource:initial-playback-position-2>initial playback position</a> is a time on the <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-11>media timeline</a>.</p>
-
- <p>If the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-19>media resource</a> is a streaming resource, then the user agent might be unable
+ <p>If the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-18>media resource</a> is a streaming resource, then the user agent might be unable
to obtain certain parts of the resource after it has expired from its buffer. Similarly, some
- <a href=#media-resource id=offsets-into-the-media-resource:media-resource-20>media resources</a> might have a <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-12>media timeline</a> that
+ <a href=#media-resource id=offsets-into-the-media-resource:media-resource-19>media resources</a> might have a <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-11>media timeline</a> that
doesn't start at zero. The <dfn id=earliest-possible-position>earliest possible position</dfn> is the earliest position in the
- stream or resource that the user agent can ever obtain again. It is also a time on the <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-13>media
+ stream or resource that the user agent can ever obtain again. It is also a time on the <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-12>media
timeline</a>.</p>
<p class=note>The <a href=#earliest-possible-position id=offsets-into-the-media-resource:earliest-possible-position-3>earliest possible position</a> is not explicitly exposed in the API;
@@ -23167,43 +23161,43 @@
- <p>If at any time the user agent learns that an audio or video track has ended and all <a href=#media-data id=offsets-into-the-media-resource:media-data-4>media
- data</a> relating to that track corresponds to parts of the <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-14>media timeline</a> that
+ <p>If at any time the user agent learns that an audio or video track has ended and all <a href=#media-data id=offsets-into-the-media-resource:media-data-3>media
+ data</a> relating to that track corresponds to parts of the <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-13>media timeline</a> that
are <em>before</em> the <a href=#earliest-possible-position id=offsets-into-the-media-resource:earliest-possible-position-8>earliest possible position</a>, the user agent may <a href=#queue-a-task id=offsets-into-the-media-resource:queue-a-task-2>queue a
task</a> to first remove the track from the <code id=offsets-into-the-media-resource:dom-media-audiotracks><a href=#dom-media-audiotracks>audioTracks</a></code>
attribute's <code id=offsets-into-the-media-resource:audiotracklist><a href=#audiotracklist>AudioTrackList</a></code> object or the <code id=offsets-into-the-media-resource:dom-media-videotracks><a href=#dom-media-videotracks>videoTracks</a></code> attribute's <code id=offsets-into-the-media-resource:videotracklist><a href=#videotracklist>VideoTrackList</a></code> object as
appropriate and then <a href=#concept-event-fire id=offsets-into-the-media-resource:concept-event-fire>fire</a> a <a href=#concept-events-trusted id=offsets-into-the-media-resource:concept-events-trusted>trusted</a> event with the name <code id=offsets-into-the-media-resource:event-media-removetrack><a href=#event-media-removetrack>removetrack</a></code>, that does not bubble and is not cancelable, and that
uses the <code id=offsets-into-the-media-resource:trackevent><a href=#trackevent>TrackEvent</a></code> interface, with the <code id=offsets-into-the-media-resource:dom-trackevent-track><a href=#dom-trackevent-track>track</a></code> attribute initialised to the <code id=offsets-into-the-media-resource:audiotrack><a href=#audiotrack>AudioTrack</a></code> or
- <code id=offsets-into-the-media-resource:videotrack><a href=#videotrack>VideoTrack</a></code> object representing the track, at the <a href=#media-element id=offsets-into-the-media-resource:media-element-12>media element</a>'s
+ <code id=offsets-into-the-media-resource:videotrack><a href=#videotrack>VideoTrack</a></code> object representing the track, at the <a href=#media-element id=offsets-into-the-media-resource:media-element-11>media element</a>'s
aforementioned <code id=offsets-into-the-media-resource:audiotracklist-2><a href=#audiotracklist>AudioTrackList</a></code> or <code id=offsets-into-the-media-resource:videotracklist-2><a href=#videotracklist>VideoTrackList</a></code> object.</p>
<p>The <dfn id=dom-media-duration><code>duration</code></dfn> attribute must return the time
- of the end of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-21>media resource</a>, in seconds, on the <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-15>media timeline</a>. If
- no <a href=#media-data id=offsets-into-the-media-resource:media-data-5>media data</a> is available, then the attributes must return the Not-a-Number (NaN)
- value. If the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-22>media resource</a> is not known to be bounded (e.g. streaming radio, or a
+ of the end of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-20>media resource</a>, in seconds, on the <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-14>media timeline</a>. If
+ no <a href=#media-data id=offsets-into-the-media-resource:media-data-4>media data</a> is available, then the attributes must return the Not-a-Number (NaN)
+ value. If the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-21>media resource</a> is not known to be bounded (e.g. streaming radio, or a
live event with no announced end time), then the attribute must return the positive Infinity
value.</p>
- <p>The user agent must determine the duration of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-23>media resource</a> before playing
- any part of the <a href=#media-data id=offsets-into-the-media-resource:media-data-6>media data</a> and before setting <code id=offsets-into-the-media-resource:dom-media-readystate-2><a href=#dom-media-readystate>readyState</a></code> to a value equal to or greater than <code id=offsets-into-the-media-resource:dom-media-have_metadata><a href=#dom-media-have_metadata>HAVE_METADATA</a></code>, even if doing so requires fetching multiple
+ <p>The user agent must determine the duration of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-22>media resource</a> before playing
+ any part of the <a href=#media-data id=offsets-into-the-media-resource:media-data-5>media data</a> and before setting <code id=offsets-into-the-media-resource:dom-media-readystate-2><a href=#dom-media-readystate>readyState</a></code> to a value equal to or greater than <code id=offsets-into-the-media-resource:dom-media-have_metadata><a href=#dom-media-have_metadata>HAVE_METADATA</a></code>, even if doing so requires fetching multiple
parts of the resource.</p>
- <p id=durationChange>When the length of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-24>media resource</a> changes to a known value
+ <p id=durationChange>When the length of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-23>media resource</a> changes to a known value
(e.g. from being unknown to known, or from a previously established length to a new length) the
- user agent must <a href=#queue-a-task id=offsets-into-the-media-resource:queue-a-task-3>queue a task</a> to <a href=#fire-a-simple-event id=offsets-into-the-media-resource:fire-a-simple-event-2>fire a simple event</a> named <code id=offsets-into-the-media-resource:event-media-durationchange><a href=#event-media-durationchange>durationchange</a></code> at the <a href=#media-element id=offsets-into-the-media-resource:media-element-13>media element</a>. (The
+ user agent must <a href=#queue-a-task id=offsets-into-the-media-resource:queue-a-task-3>queue a task</a> to <a href=#fire-a-simple-event id=offsets-into-the-media-resource:fire-a-simple-event-2>fire a simple event</a> named <code id=offsets-into-the-media-resource:event-media-durationchange><a href=#event-media-durationchange>durationchange</a></code> at the <a href=#media-element id=offsets-into-the-media-resource:media-element-12>media element</a>. (The
event is not fired when the duration is reset as part of loading a new media resource.) If the
duration is changed such that the <a href=#current-playback-position id=offsets-into-the-media-resource:current-playback-position-6>current playback position</a> ends up being greater
- than the time of the end of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-25>media resource</a>, then the user agent must also <a href=#dom-media-seek id=offsets-into-the-media-resource:dom-media-seek-3>seek</a> to the time of the end of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-26>media resource</a>.</p>
+ than the time of the end of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-24>media resource</a>, then the user agent must also <a href=#dom-media-seek id=offsets-into-the-media-resource:dom-media-seek-3>seek</a> to the time of the end of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-25>media resource</a>.</p>
<p class=example>If an "infinite" stream ends for some reason, then the duration would change
from positive Infinity to the time of the last frame or sample in the stream, and the <code id=offsets-into-the-media-resource:event-media-durationchange-2><a href=#event-media-durationchange>durationchange</a></code> event would be fired. Similarly, if the
- user agent initially estimated the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-27>media resource</a>'s duration instead of determining
+ user agent initially estimated the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-26>media resource</a>'s duration instead of determining
it precisely, and later revises the estimate based on new information, then the duration would
change and the <code id=offsets-into-the-media-resource:event-media-durationchange-3><a href=#event-media-durationchange>durationchange</a></code> event would be
fired.</p>
<p>Some video files also have an explicit date and time corresponding to the zero time in the
- <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-16>media timeline</a>, known as the <dfn id=timeline-offset>timeline offset</dfn>. Initially, the
+ <a href=#media-timeline id=offsets-into-the-media-resource:media-timeline-15>media timeline</a>, known as the <dfn id=timeline-offset>timeline offset</dfn>. Initially, the
<a href=#timeline-offset id=offsets-into-the-media-resource:timeline-offset-2>timeline offset</a> must be set to Not-a-Number (NaN).</p>
<p>The <dfn id=dom-media-getstartdate><code>getStartDate()</code></dfn> method must return <a href=#create-a-date-object id=offsets-into-the-media-resource:create-a-date-object>a new <code>Date</code> object</a> representing the current
@@ -23214,8 +23208,8 @@
<hr>
<p>The <dfn id=attr-media-loop><code>loop</code></dfn> attribute is a <a href=#boolean-attribute id=offsets-into-the-media-resource:boolean-attribute>boolean
- attribute</a> that, if specified, indicates that the <a href=#media-element id=offsets-into-the-media-resource:media-element-14>media element</a> is to seek back
- to the start of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-28>media resource</a> upon reaching the end.</p>
+ attribute</a> that, if specified, indicates that the <a href=#media-element id=offsets-into-the-media-resource:media-element-13>media element</a> is to seek back
+ to the start of the <a href=#media-resource id=offsets-into-the-media-resource:media-resource-27>media resource</a> upon reaching the end.</p>
<p>The <code id=offsets-into-the-media-resource:attr-media-loop><a href=#attr-media-loop>loop</a></code> attribute has no effect while the element has a
<a href=#current-media-controller id=offsets-into-the-media-resource:current-media-controller-4>current media controller</a>.</p>
Modified: source
===================================================================
--- source 2014-09-19 23:37:25 UTC (rev 8802)
+++ source 2014-09-19 23:39:54 UTC (rev 8803)
@@ -28359,8 +28359,6 @@
</li>
- <li><p>Set the <span>initial playback position</span> to 0.</p></li>
-
<li><p>Set the <span>timeline offset</span> to Not-a-Number (NaN).</p></li>
<li>
@@ -29031,8 +29029,7 @@
<li>
<p><span>Establish the media timeline</span> for the purposes of the <span>current playback
- position</span>, the <span>earliest possible position</span>, and the <span>initial playback
- position</span>, based on the <span>media data</span>.</p>
+ position</span> and the <span>earliest possible position</span>, based on the <span>media data</span>.</p>
</li>
@@ -29095,11 +29092,13 @@
<li><p>Let the <span>media element</span>'s <span>default playback
start position</span> be zero.</p></li>
+ <li><p>Let the <var>initial playback position</var> be zero.</p></li>
+
<li>
<p>If either the <span>media resource</span> or the address of the <var>current
- media resource</var> indicate a particular start time, then set the <span>initial playback
- position</span> to that time and, if <var>jumped</var> is still false, <span
+ media resource</var> indicate a particular start time, then set the <var>initial playback
+ position</var> to that time and, if <var>jumped</var> is still false, <span
data-x="dom-media-seek">seek</span> to that time and let <var>jumped</var> be
true.</p>
@@ -29118,11 +29117,11 @@
data-x="event-media-change">change</code> event to be fired</a>.</p></li>
<li><p>If the <span>media element</span> has a <span>current media controller</span>, then:
- if <var>jumped</var> is true and the <span>initial playback position</span>,
+ if <var>jumped</var> is true and the <var>initial playback position</var>,
relative to the <span>current media controller</span>'s timeline, is greater than the
<span>current media controller</span>'s <span>media controller position</span>, then
- <span>seek the media controller</span> to the <span>media element</span>'s <span>initial
- playback position</span>, relative to the <span>current media controller</span>'s timeline;
+ <span>seek the media controller</span> to the <span>media element</span>'s <var>initial
+ playback position</var>, relative to the <span>current media controller</span>'s timeline;
otherwise, <span data-x="dom-media-seek">seek</span> the <span>media element</span> to the
<span>media controller position</span>, relative to the <span>media element</span>'s
timeline.</p></li> <!-- i.e. "bring the media element up to speed with its new media
@@ -29618,11 +29617,6 @@
data-x="dom-media-seek">seek</span> to the new value. The new value must be interpreted as being in
seconds.</p>
- <p><span data-x="media element">Media elements</span> have an <dfn>initial playback position</dfn>,
- which must initially (i.e. in the absence of <span>media data</span>) be zero seconds. The
- <span>initial playback position</span> is updated when a <span>media resource</span> is loaded.
- The <span>initial playback position</span> is a time on the <span>media timeline</span>.</p>
-
<p>If the <span>media resource</span> is a streaming resource, then the user agent might be unable
to obtain certain parts of the resource after it has expired from its buffer. Similarly, some
<span data-x="media resource">media resources</span> might have a <span>media timeline</span> that
More information about the Commit-Watchers
mailing list