Change Proposal for ISSUE-147

Change Proposal for ISSUE-147
playbackrate: undefined behavior when the user agent can't play back at the requested rate

The specification should describe what to do if the user agent is unable to play media at the requested rate. This change proposal requests that the spec be changed so that if the user agent cannot support the requested playbackRate then this should be ignored and the value of playbackRate remain unchanged. See 

Implementations in browsers vary when an unsupported playback rate is requested. Since different implementations will have different capabilities it is important that the media element responds in a reliable way so that script can detect the issue.
There are a number of reasons why a user agent may not be able to play a resource at the requested speed. For example:
. On low power devices playback is sometimes off-loaded to hardware that is optimised for forward playback that does not efficiently support reverse playback.
. Some media formats are not designed to be efficiently played in reverse.
. Setting playbackRate larger than 1.0 for live video will not work.

In section add the italicized text.
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 potentially playing). If the user agent is unable to play at the requested speed the set should be ignored and the attribute remain at the previous value. 

Positive Effects 
. Script can reliably detect when an unsupported playbackRate has been requested.
Negative Effects 
. None.

Conformance Classes Changes 
Web browsers and other interactive user agents.
None. Browsers already vary in this respect.

Received on Saturday, 5 February 2011 03:23:53 UTC