diff --git a/source b/source index a5fec4d0a94..d6c008da26a 100644 --- a/source +++ b/source @@ -32296,6 +32296,7 @@ interface HTMLMediaElement : HTMLElement { readonly attribute boolean paused; attribute double defaultPlaybackRate; attribute double playbackRate; + attribute boolean preservesPitch; readonly attribute TimeRanges played; readonly attribute TimeRanges seekable; readonly attribute boolean ended; @@ -32354,10 +32355,6 @@ interface HTMLMediaElement : HTMLElement { so that the author's controls can get away of the UA's --> - -
Media elements are used to present audio data, or video and audio data, to the user. This is referred to as media data in this section, since this section applies equally to media elements for audio or for @@ -34594,6 +34591,19 @@ interface MediaError { +
preservesPitch
Returns true if pitch-preserving algorithms are used when the playbackRate
is not 1.0. The default value is true.
Can be set to false to have the media resource's audio pitch change up or down
+ correspondingly to the playbackRate
. This is useful
+ for aesthetic and performance reasons.
played
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
- an event named ratechange
at the media
- element.
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 an
+ event named ratechange
at the media
+ element. The user agent must process attribute changes smoothly and must not introduce any
+ perceivable gaps or muting of playback in response.
The preservesPitch
attribute, on
+ getting, must return true if a pitch-preserving algorithm is in effect during playback. On
+ setting, the user agent must correspondingly switch the pitch-preserving algorithm on or off
+ without any perceivable gaps or muting of playback.
playbackRate
is not 1.0, the user agent may apply pitch
- adjustments to the audio as necessary to render it faithfully.
+ data-x="dom-media-playbackRate">playbackRate is not 1.0 and preservesPitch
is true, the user agent must apply pitch
+ adjustment to preserve the original pitch of the audio. Otherwise, the user agent must speed up
+ or slow down the audio without any pitch adjustment.
When a media element is potentially playing, its audio data played must be synchronized with the current playback position, at the element's @@ -120807,6 +120826,7 @@ INSERT INTERFACES HERE Ashley Gullen, Ashley Sheridan, Atsushi Takayama, + Attila Haraszti, Aurelien Levy, Ave Wrigley, Avi Drissman,