diff --git a/index b/index index f78bf08cc5d..07516e1190d 100644 --- a/index +++ b/index @@ -20918,30 +20918,36 @@ interface CueRangeCallback {
HAVE_CURRENT_DATA
(numeric value 2)HAVE_METADATA
state. For
- example, in video this corresponds to the user agent having data
- from the current frame, but not the next frame.HAVE_METADATA
state, or
+ there is no more data to obtain in the direction of
+ playback. For example, in video this corresponds to the user
+ agent having data from the current frame, but not the next frame;
+ and to when playback has
+ ended.
HAVE_FUTURE_DATA
(numeric value 3)HAVE_METADATA
state. For
- example, In video this corresponds to the user agent having data
- for at least the current frame and the next frame.HAVE_METADATA
+ state. For example, in video this corresponds to the user agent
+ having data for at least the current frame and the next frame. The
+ user agent cannot be in this state if playback has ended, as the current playback
+ position can never advanced in this case.
HAVE_ENOUGH_DATA
(numeric value 4)HAVE_METADATA
state, and,
- in addition, the user agent estimates that data is being fetched at
- a rate where the current playback position, if it were
- to advance at the rate given by the defaultPlaybackRate
+ HAVE_FUTURE_DATA
state
+ are met, and, in addition, the user agent estimates that data is
+ being fetched at a rate where the current playback
+ position, if it were to advance at the rate given by the
+ defaultPlaybackRate
attribute, would not overtake the available data before playback
reaches the end of the media resource.A media element is said to have ended
playback when the element's readyState
attribute is HAVE_METADATA
or greater, and
- the current playback position is the end of the
- media resource, and the media element does
+ either the current playback position is the end of the
+ media resource and the direction of
+ playback is forwards and the media element does
not have a loop
attribute
- specified.
The ended
attribute must return true if the media element has
- ended playback, and false otherwise.
A media element is said to have stopped due to
errors when the element's readyState
attribute is HAVE_METADATA
or greater, and
@@ -21288,8 +21298,9 @@ interface CueRangeCallback {
the element.
When the current playback position reaches the end - of the media resource, then the user agent must follow - these steps:
+ of the media resource when the direction of + playback is forwards, then the user agent must follow these + steps:If the media element has a loop
attribute specified, then seek to the earliest possible
position of the media resource and abort these
@@ -21310,6 +21321,16 @@ interface CueRangeCallback {
a simple event called ended
at the element.
When the current playback position reaches the + earliest possible position of the media + resource when the direction of playback is + backwards, then the user agent must follow these steps:
+ +Stop playback.
The user agent must queue a task to fire
+ a simple event called timeupdate
at the element.
The defaultPlaybackRate
attribute gives the desired speed at which the media
resource is to play, as a multiple of its intrinsic
@@ -21328,6 +21349,10 @@ interface CueRangeCallback {
value, and the playback must change speed (if the element is
potentially playing).
If the playbackRate
+ is positive or zero, then the direction of playback is
+ forwards. Otherwise, it is backwards.
The "play" function in a user agent's interface must set the
playbackRate
attribute
to the value of the defaultPlaybackRate
diff --git a/source b/source
index bd62cc80b74..e373efb5ebe 100644
--- a/source
+++ b/source
@@ -22672,33 +22672,38 @@ interface CueRangeCallback {
HAVE_CURRENT_DATA
(numeric value 2)HAVE_METADATA
state. For
- example, in video this corresponds to the user agent having data
- from the current frame, but not the next frame.HAVE_METADATA
state, or
+ there is no more data to obtain in the direction of
+ playback. For example, in video this corresponds to the user
+ agent having data from the current frame, but not the next frame;
+ and to when playback has
+ ended.
HAVE_FUTURE_DATA
(numeric value 3)HAVE_METADATA
state. For
- example, In video this corresponds to the user agent having data
- for at least the current frame and the next frame.HAVE_METADATA
+ state. For example, in video this corresponds to the user agent
+ having data for at least the current frame and the next frame. The
+ user agent cannot be in this state if playback has ended, as the current playback
+ position can never advanced in this case.
HAVE_ENOUGH_DATA
(numeric value 4)HAVE_METADATA
state, and,
- in addition, the user agent estimates that data is being fetched at
- a rate where the current playback position, if it were
- to advance at the rate given by the All the conditions described for the HAVE_FUTURE_DATA
state
+ are met, and, in addition, the user agent estimates that data is
+ being fetched at a rate where the current playback
+ position, if it were to advance at the rate given by the
+ defaultPlaybackRate
attribute, would not overtake the available data before playback
reaches the end of the media resource.
readyState
attribute is HAVE_METADATA
or greater, and
- the current playback position is the end of the
- media resource, and the media element does
+ either the current playback position is the end of the
+ media resource and the direction of
+ playback is forwards and the media element does
not have a loop
attribute
- specified.
+ specified, or the current playback position is the
+ earliest possible position and the direction of
+ playback is backwards.
The ended
attribute must return true if the media element has
- ended playback, and false otherwise.
A media element is said to have stopped due to
errors when the element's CueRangeCallback {
the element.
When the current playback position reaches the end - of the media resource, then the user agent must follow - these steps:
+ of the media resource when the direction of + playback is forwards, then the user agent must follow these + steps:When the current playback position reaches the + earliest possible position of the media + resource when the direction of playback is + backwards, then the user agent must follow these steps:
+ +Stop playback.
The user agent must queue a task to fire
+ a simple event called timeupdate
at the element.
The defaultPlaybackRate
attribute gives the desired speed at which the media
@@ -23168,6 +23193,10 @@ interface CueRangeCallback {
value, and the playback must change speed (if the element is
potentially playing).
If the playbackRate
+ is positive or zero, then the direction of playback is
+ forwards. Otherwise, it is backwards.
The "play" function in a user agent's interface must set the
playbackRate
attribute
to the value of the