spec/Overview.html 1.1665 2494 Clarify that playbackRate, and allow it

Clarify that playbackRate, and allow it to be 0.0. (whatwg r2494)

playbackRate
http://people.w3.org/mike/diffs/html5/spec/Overview.1.1665.html#dom-media-playbackrate
When a media element is potentially playing and its Document is an active document, its current playback position must increase monotonically at playbackRate units of media time per unit time of wall clock time.
http://people.w3.org/mike/diffs/html5/spec/Overview.1.1665.html#media-playback
When the defaultPlaybackRate or playbackRate attributes change value (either by being set by script or by being changed directly by the user agent, e.g. in response to user control) the user agent must queue a task to fire a simple event called ratechange at the media element.
http://people.w3.org/mike/diffs/html5/spec/Overview.1.1665.html#rateUpdate
defaultPlaybackRate
http://people.w3.org/mike/diffs/html5/spec/Overview.1.1665.html#dom-media-defaultplaybackrate

http://people.w3.org/mike/diffs/html5/spec/Overview.diff.html
http://dev.w3.org/cvsweb/html5/spec/Overview.html?r1=1.1664&r2=1.1665&f=h
http://html5.org/tools/web-apps-tracker?from=2493&to=2494

===================================================================
RCS file: /sources/public/html5/spec/Overview.html,v
retrieving revision 1.1664
retrieving revision 1.1665
diff -u -d -r1.1664 -r1.1665
--- Overview.html 1 Dec 2008 10:15:19 -0000 1.1664
+++ Overview.html 1 Dec 2008 10:44:00 -0000 1.1665
@@ -14727,20 +14727,24 @@
   </ol><p>The <dfn id=dom-media-defaultplaybackrate title=dom-media-defaultPlaybackRate><code>defaultPlaybackRate</code></dfn>
   attribute gives the desired speed at which the <a href=#media-resource>media
   resource</a> is to play, as a multiple of its intrinsic
-  speed. The attribute is mutable, but on setting, if the new value is
-  0.0, a <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception must be raised
-  instead of the value being changed. It must initially have the value
-  1.0.<p>The <dfn id=dom-media-playbackrate title=dom-media-playbackRate><code>playbackRate</code></dfn>
+  speed. The attribute is mutable: on getting it must return the last
+  value it was set to, or 1.0 if it hasn't yet been set; on setting
+  the attribute must be set to the new value.<p>The <dfn id=dom-media-playbackrate title=dom-media-playbackRate><code>playbackRate</code></dfn>
   attribute gives the speed at which the <a href=#media-resource>media resource</a>
   plays, as a multiple of its intrinsic speed. If it is not equal to
   the <code title=dom-media-defaultPlaybackRate><a href=#dom-media-defaultplaybackrate>defaultPlaybackRate</a></code>,
   then the implication is that the user is using a feature such as
-  fast forward or slow motion playback. The attribute is mutable, but
-  on setting, if the new value is 0.0, a
-  <code><a href=#not_supported_err>NOT_SUPPORTED_ERR</a></code> exception must be raised instead of
-  the value being changed. Otherwise, the playback must change speed
-  (if the element is <a href=#potentially-playing>potentially playing</a>). It must initially
-  have the value 1.0.<p id=rateUpdate>When the <code title=dom-media-defaultPlaybackRate><a href=#dom-media-defaultplaybackrate>defaultPlaybackRate</a></code> or
+  fast forward or slow motion playback. The attribute is mutable: on
+  getting it must return the last value it was set to, or 1.0 if it
+  hasn't yet been set; on setting the attribute must be set to the new
+  value, and the playback must change speed (if the element is
+  <a href=#potentially-playing>potentially playing</a>).<p>The "play" function in a user agent's interface must set the
+  <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code> attribute
+  to the value of the <code title=dom-media-defaultPlaybackRate><a href=#dom-media-defaultplaybackrate>defaultPlaybackRate</a></code>
+  attribute before invoking the <code title=dom-media-play><a href=#dom-media-play>play()</a></code> method's steps. Features such
+  as fast-forward or rewind must be implemented by only changing the
+  <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code>
+  attribute.<p id=rateUpdate>When the <code title=dom-media-defaultPlaybackRate><a href=#dom-media-defaultplaybackrate>defaultPlaybackRate</a></code> or
   <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code> attributes
   change value (either by being set by script or by being changed
   directly by the user agent, e.g. in response to user control) the
@@ -14824,16 +14828,19 @@
   high that the user agent cannot play audio usefully, the
   corresponding audio must also be muted. If the <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code> is not 1.0, the
   user agent may apply pitch adjustments to the audio as necessary to
-  render it faithfully.<p><a href=#media-element title="media element">Media elements</a> that are
+  render it faithfully.<p>The <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code> can
+  be 0.0, in which case the <a href=#current-playback-position>current playback position</a>
+  doesn't move, despite playback not being paused (<code title=dom-media-paused><a href=#dom-media-paused>paused</a></code> doesn't become true, and the
+  <code title=event-pause><a href=#event-pause>pause</a></code> event doesn't fire).<p><a href=#media-element title="media element">Media elements</a> that are
   <a href=#potentially-playing>potentially playing</a> while not <span>in a
   <code>Document</code></span><!-- XXX xref --> must not play any
   video, but should play any audio component. Media elements must not
   stop playing just because all references to them have been removed;
   only once a media element to which no references exist has reached a
   point where no further audio remains to be played for that element
-  (e.g. because the element is paused or because the end of the clip
-  has been reached) may the element be <span>garbage
-  collected</span><!-- XXX xref -->.</p><hr><p>When the <a href=#current-playback-position>current playback position</a> of a <a href=#media-element>media
+  (e.g. because the element is paused, or because the end of the clip
+  has been reached, or because its <code title=dom-media-playbackRate><a href=#dom-media-playbackrate>playbackRate</a></code> is 0.0) may the
+  element be <span>garbage collected</span><!-- XXX xref -->.</p><hr><p>When the <a href=#current-playback-position>current playback position</a> of a <a href=#media-element>media
   element</a> changes (e.g. due to playback or seeking), the user
   agent must run the following steps. If the <a href=#current-playback-position>current playback
   position</a> changes while the steps are running, then the user

Received on Monday, 1 December 2008 10:47:26 UTC