[html5] r7440 - [e] (0) Add recommendations to the user interface section for how to seek now th [...]
whatwg at whatwg.org
whatwg at whatwg.org
Mon Oct 8 12:04:05 PDT 2012
Author: ianh
Date: 2012-10-08 12:04:03 -0700 (Mon, 08 Oct 2012)
New Revision: 7440
Modified:
complete.html
index
source
Log:
[e] (0) Add recommendations to the user interface section for how to seek now that we have approximate seeking.
Fixing https://www.w3.org/Bugs/Public/show_bug.cgi?id=14851
Affected topics: Video and Audio
Modified: complete.html
===================================================================
--- complete.html 2012-10-08 18:52:16 UTC (rev 7439)
+++ complete.html 2012-10-08 19:04:03 UTC (rev 7440)
@@ -35667,110 +35667,85 @@
<!--TOPIC:Video and Audio-->
<h5 id=user-interface><span class=secno>4.8.10.13 </span>User interface</h5>
- <p>The <dfn id=attr-media-controls title=attr-media-controls><code>controls</code></dfn>
- attribute is a <a href=#boolean-attribute>boolean attribute</a>. If present, it
- indicates that the author has not provided a scripted controller and
- would like the user agent to provide its own set of controls.</p>
+ <p>The <dfn id=attr-media-controls title=attr-media-controls><code>controls</code></dfn> attribute is a <a href=#boolean-attribute>boolean
+ attribute</a>. If present, it indicates that the author has not provided a scripted controller
+ and would like the user agent to provide its own set of controls.</p>
<div class=impl>
- <p>If the attribute is present, or if <a href=#concept-n-noscript title=concept-n-noscript>scripting is disabled</a> for the
- <a href=#media-element>media element</a>, then the user agent should <dfn id=expose-a-user-interface-to-the-user>expose a
- user interface to the user</dfn>. This user interface should include
- features to begin playback, pause playback, seek to an arbitrary
- position in the content (if the content supports arbitrary seeking),
- change the volume, change the display of closed captions or embedded
- sign-language tracks, select different audio tracks or turn on audio
- descriptions, and show the media content in manners more suitable to
- the user (e.g. full-screen video or in an independent resizable
- window). Other controls may also be made available.</p>
+ <p>If the attribute is present, or if <a href=#concept-n-noscript title=concept-n-noscript>scripting is
+ disabled</a> for the <a href=#media-element>media element</a>, then the user agent should <dfn id=expose-a-user-interface-to-the-user>expose a user
+ interface to the user</dfn>. This user interface should include features to begin playback, pause
+ playback, seek to an arbitrary position in the content (if the content supports arbitrary
+ seeking), change the volume, change the display of closed captions or embedded sign-language
+ tracks, select different audio tracks or turn on audio descriptions, and show the media content in
+ manners more suitable to the user (e.g. full-screen video or in an independent resizable window).
+ Other controls may also be made available.</p>
- <p>If the <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media
- controller</a>, then the user agent should expose audio tracks
- from all the <a href=#slaved-media-elements>slaved media elements</a> (although avoiding
- duplicates if the same <a href=#media-resource>media resource</a> is being used
- several times). If a <a href=#media-resource>media resource</a>'s audio track
- exposed in this way has no known name, and it is the only audio
- track for a particular <a href=#media-element>media element</a>, the user agent
- should use the element's <code title=attr-title><a href=#attr-title>title</a></code>
- attribute, if any, as the name (or as part of the name) of that
- track.</p>
+ <p>If the <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media controller</a>, then the user
+ agent should expose audio tracks from all the <a href=#slaved-media-elements>slaved media elements</a> (although
+ avoiding duplicates if the same <a href=#media-resource>media resource</a> is being used several times). If a
+ <a href=#media-resource>media resource</a>'s audio track exposed in this way has no known name, and it is the
+ only audio track for a particular <a href=#media-element>media element</a>, the user agent should use the
+ element's <code title=attr-title><a href=#attr-title>title</a></code> attribute, if any, as the name (or as part of the
+ name) of that track.</p>
- <p>Even when the attribute is absent, however, user agents may
- provide controls to affect playback of the media resource
- (e.g. play, pause, seeking, and volume controls), but such features
- should not interfere with the page's normal rendering. For example,
- such features could be exposed in the <a href=#media-element>media element</a>'s
- context menu.</p>
+ <p>Even when the attribute is absent, however, user agents may provide controls to affect playback
+ of the media resource (e.g. play, pause, seeking, and volume controls), but such features should
+ not interfere with the page's normal rendering. For example, such features could be exposed in the
+ <a href=#media-element>media element</a>'s context menu.</p>
- <p>Where possible (specifically, for starting, stopping, pausing,
- and unpausing playback, for seeking, for changing the rate of
- playback, for fast-forwarding or rewinding,
- for listing, enabling, and disabling text tracks,
- and for muting or changing the volume of the audio), user interface
- features exposed by the user agent must be implemented in terms of
- the DOM API described above, so that, e.g., all the same events
- fire.</p>
+ <p>Where possible (specifically, for starting, stopping, pausing, and unpausing playback, for
+ seeking, for changing the rate of playback, for fast-forwarding or rewinding, for listing,
+ enabling, and disabling text tracks, and for muting or changing the volume of the audio), user
+ interface features exposed by the user agent must be implemented in terms of the DOM API described
+ above, so that, e.g., all the same events fire.</p>
- <p>When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media
- controller</a>, the user agent's user interface for pausing and
- unpausing playback, for seeking, for changing the rate of playback,
- for fast-forwarding or rewinding, and for muting or changing the
- volume of audio of the entire group must be implemented in terms of
- the <code><a href=#mediacontroller>MediaController</a></code> API exposed on that <a href=#current-media-controller>current
- media controller</a>. When a <a href=#media-element>media element</a> has a
- <a href=#current-media-controller>current media controller</a>, and all the <a href=#slaved-media-elements>slaved
- media elements</a> of that <code><a href=#mediacontroller>MediaController</a></code> are
- paused, the user agent should also unpause all the <a href=#slaved-media-elements>slaved
- media elements</a> when the user invokes a user agent interface
- control for beginning playback.</p>
+ <p>When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media controller</a>, the user agent's
+ user interface for pausing and unpausing playback, for seeking, for changing the rate of playback,
+ for fast-forwarding or rewinding, and for muting or changing the volume of audio of the entire
+ group must be implemented in terms of the <code><a href=#mediacontroller>MediaController</a></code> API exposed on that
+ <a href=#current-media-controller>current media controller</a>. When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media
+ controller</a>, and all the <a href=#slaved-media-elements>slaved media elements</a> of that
+ <code><a href=#mediacontroller>MediaController</a></code> are paused, the user agent should also unpause all the <a href=#slaved-media-elements>slaved
+ media elements</a> when the user invokes a user agent interface control for beginning
+ playback.</p>
- <p>The "play" function in the user agent's interface must set the
- <code title="">playbackRate</code> attribute to the value of the
- <code title="">defaultPlaybackRate</code> attribute before invoking
- the <code title="">play()</code> method.
- When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media
- controller</a>, the attributes and method with those names on
- that <code><a href=#mediacontroller>MediaController</a></code> object must be used. Otherwise,
- the attributes and method with those names on the <a href=#media-element>media
- element</a> itself must be used.
- </p>
+ <p>The "play" function in the user agent's interface must set the <code title="">playbackRate</code> attribute to the value of the <code title="">defaultPlaybackRate</code> attribute before invoking the <code title="">play()</code>
+ method. When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media controller</a>, the
+ attributes and method with those names on that <code><a href=#mediacontroller>MediaController</a></code> object must be used.
+ Otherwise, the attributes and method with those names on the <a href=#media-element>media element</a> itself
+ must be used. </p>
- <p>Features such as fast-forward or rewind must be implemented by
- only changing the <code title="">playbackRate</code> attribute (and
- not the <code title="">defaultPlaybackRate</code> attribute).
- Again, when a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media
- controller</a>, the attributes with those names on that
- <code><a href=#mediacontroller>MediaController</a></code> object must be used; otherwise, the
- attributes with those names on the <a href=#media-element>media element</a> itself
- must be used.
- </p>
+ <p>Features such as fast-forward or rewind must be implemented by only changing the <code title="">playbackRate</code> attribute (and not the <code title="">defaultPlaybackRate</code>
+ attribute). Again, when a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media controller</a>,
+ the attributes with those names on that <code><a href=#mediacontroller>MediaController</a></code> object must be used;
+ otherwise, the attributes with those names on the <a href=#media-element>media element</a> itself must be used.</p>
- <p>When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media
- controller</a>, seeking must be implemented in terms of the <code title=dom-MediaController-currentTime><a href=#dom-mediacontroller-currenttime>currentTime</a></code> attribute
- on that <code><a href=#mediacontroller>MediaController</a></code> object. Otherwise, the user
- agent must directly <a href=#dom-media-seek title=dom-media-seek>seek</a> to the
- requested position in the <a href=#media-element>media element</a>'s <a href=#media-timeline>media
- timeline</a>.</p>
+ <p>When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media controller</a>, seeking must be
+ implemented in terms of the <code title=dom-MediaController-currentTime><a href=#dom-mediacontroller-currenttime>currentTime</a></code>
+ attribute on that <code><a href=#mediacontroller>MediaController</a></code> object. Otherwise, the user agent must directly
+ <a href=#dom-media-seek title=dom-media-seek>seek</a> to the requested position in the <a href=#media-element>media
+ element</a>'s <a href=#media-timeline>media timeline</a>. For media resources where seeking to an arbitrary
+ position would be slow, user agents are encouraged to use the <i>approximate-for-speed</i> flag
+ when seeking in response to the user manipulating an approximate position interface such as a seek
+ bar.</p>
- <p>When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media
- controller</a>, user agents may additionally provide the user
- with controls that directly manipulate an individual <a href=#media-element>media
- element</a> without affecting the <code><a href=#mediacontroller>MediaController</a></code>,
- but such features are considered relatively advanced and unlikely to
- be useful to most users.
+ <p>When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media controller</a>, user agents may
+ additionally provide the user with controls that directly manipulate an individual <a href=#media-element>media
+ element</a> without affecting the <code><a href=#mediacontroller>MediaController</a></code>, but such features are
+ considered relatively advanced and unlikely to be useful to most users.</p>
- <p>For the purposes of listing chapters in the <a href=#media-resource>media
- resource</a>, only <a href=#text-track title="text track">text tracks</a> in
- the <a href=#media-element>media element</a>'s <a href=#list-of-text-tracks>list of text tracks</a>
- that are <a href=#text-track-showing title="text track showing">showing</a> and whose
- <a href=#text-track-kind>text track kind</a> is <code title=dom-TextTrack-kind-chapters><a href=#dom-texttrack-kind-chapters>chapters</a></code> should be used.
- Such tracks must be interpreted according to the <a href=#rules-for-constructing-the-chapter-tree-from-a-text-track>rules for
- constructing the chapter tree from a text track</a>.</p>
+ <p>For the purposes of listing chapters in the <a href=#media-resource>media resource</a>, only <a href=#text-track title="text
+ track">text tracks</a> in the <a href=#media-element>media element</a>'s <a href=#list-of-text-tracks>list of text tracks</a>
+ that are <a href=#text-track-showing title="text track showing">showing</a> and whose <a href=#text-track-kind>text track kind</a> is
+ <code title=dom-TextTrack-kind-chapters><a href=#dom-texttrack-kind-chapters>chapters</a></code> should be used. Such tracks must be
+ interpreted according to the <a href=#rules-for-constructing-the-chapter-tree-from-a-text-track>rules for constructing the chapter tree from a text
+ track</a>. When seeking in response to a user maniplating a chapter selection interface, user
+ agents should not use the <i>approximate-for-speed</i> flag.</p>
- <p>The <dfn id=dom-media-controls title=dom-media-controls><code>controls</code></dfn>
- IDL attribute must <a href=#reflect>reflect</a> the content attribute of the
- same name.</p>
+ <p>The <dfn id=dom-media-controls title=dom-media-controls><code>controls</code></dfn> IDL attribute must
+ <a href=#reflect>reflect</a> the content attribute of the same name.</p>
<hr></div>
Modified: index
===================================================================
--- index 2012-10-08 18:52:16 UTC (rev 7439)
+++ index 2012-10-08 19:04:03 UTC (rev 7440)
@@ -35667,110 +35667,85 @@
<!--TOPIC:Video and Audio-->
<h5 id=user-interface><span class=secno>4.8.10.13 </span>User interface</h5>
- <p>The <dfn id=attr-media-controls title=attr-media-controls><code>controls</code></dfn>
- attribute is a <a href=#boolean-attribute>boolean attribute</a>. If present, it
- indicates that the author has not provided a scripted controller and
- would like the user agent to provide its own set of controls.</p>
+ <p>The <dfn id=attr-media-controls title=attr-media-controls><code>controls</code></dfn> attribute is a <a href=#boolean-attribute>boolean
+ attribute</a>. If present, it indicates that the author has not provided a scripted controller
+ and would like the user agent to provide its own set of controls.</p>
<div class=impl>
- <p>If the attribute is present, or if <a href=#concept-n-noscript title=concept-n-noscript>scripting is disabled</a> for the
- <a href=#media-element>media element</a>, then the user agent should <dfn id=expose-a-user-interface-to-the-user>expose a
- user interface to the user</dfn>. This user interface should include
- features to begin playback, pause playback, seek to an arbitrary
- position in the content (if the content supports arbitrary seeking),
- change the volume, change the display of closed captions or embedded
- sign-language tracks, select different audio tracks or turn on audio
- descriptions, and show the media content in manners more suitable to
- the user (e.g. full-screen video or in an independent resizable
- window). Other controls may also be made available.</p>
+ <p>If the attribute is present, or if <a href=#concept-n-noscript title=concept-n-noscript>scripting is
+ disabled</a> for the <a href=#media-element>media element</a>, then the user agent should <dfn id=expose-a-user-interface-to-the-user>expose a user
+ interface to the user</dfn>. This user interface should include features to begin playback, pause
+ playback, seek to an arbitrary position in the content (if the content supports arbitrary
+ seeking), change the volume, change the display of closed captions or embedded sign-language
+ tracks, select different audio tracks or turn on audio descriptions, and show the media content in
+ manners more suitable to the user (e.g. full-screen video or in an independent resizable window).
+ Other controls may also be made available.</p>
- <p>If the <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media
- controller</a>, then the user agent should expose audio tracks
- from all the <a href=#slaved-media-elements>slaved media elements</a> (although avoiding
- duplicates if the same <a href=#media-resource>media resource</a> is being used
- several times). If a <a href=#media-resource>media resource</a>'s audio track
- exposed in this way has no known name, and it is the only audio
- track for a particular <a href=#media-element>media element</a>, the user agent
- should use the element's <code title=attr-title><a href=#attr-title>title</a></code>
- attribute, if any, as the name (or as part of the name) of that
- track.</p>
+ <p>If the <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media controller</a>, then the user
+ agent should expose audio tracks from all the <a href=#slaved-media-elements>slaved media elements</a> (although
+ avoiding duplicates if the same <a href=#media-resource>media resource</a> is being used several times). If a
+ <a href=#media-resource>media resource</a>'s audio track exposed in this way has no known name, and it is the
+ only audio track for a particular <a href=#media-element>media element</a>, the user agent should use the
+ element's <code title=attr-title><a href=#attr-title>title</a></code> attribute, if any, as the name (or as part of the
+ name) of that track.</p>
- <p>Even when the attribute is absent, however, user agents may
- provide controls to affect playback of the media resource
- (e.g. play, pause, seeking, and volume controls), but such features
- should not interfere with the page's normal rendering. For example,
- such features could be exposed in the <a href=#media-element>media element</a>'s
- context menu.</p>
+ <p>Even when the attribute is absent, however, user agents may provide controls to affect playback
+ of the media resource (e.g. play, pause, seeking, and volume controls), but such features should
+ not interfere with the page's normal rendering. For example, such features could be exposed in the
+ <a href=#media-element>media element</a>'s context menu.</p>
- <p>Where possible (specifically, for starting, stopping, pausing,
- and unpausing playback, for seeking, for changing the rate of
- playback, for fast-forwarding or rewinding,
- for listing, enabling, and disabling text tracks,
- and for muting or changing the volume of the audio), user interface
- features exposed by the user agent must be implemented in terms of
- the DOM API described above, so that, e.g., all the same events
- fire.</p>
+ <p>Where possible (specifically, for starting, stopping, pausing, and unpausing playback, for
+ seeking, for changing the rate of playback, for fast-forwarding or rewinding, for listing,
+ enabling, and disabling text tracks, and for muting or changing the volume of the audio), user
+ interface features exposed by the user agent must be implemented in terms of the DOM API described
+ above, so that, e.g., all the same events fire.</p>
- <p>When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media
- controller</a>, the user agent's user interface for pausing and
- unpausing playback, for seeking, for changing the rate of playback,
- for fast-forwarding or rewinding, and for muting or changing the
- volume of audio of the entire group must be implemented in terms of
- the <code><a href=#mediacontroller>MediaController</a></code> API exposed on that <a href=#current-media-controller>current
- media controller</a>. When a <a href=#media-element>media element</a> has a
- <a href=#current-media-controller>current media controller</a>, and all the <a href=#slaved-media-elements>slaved
- media elements</a> of that <code><a href=#mediacontroller>MediaController</a></code> are
- paused, the user agent should also unpause all the <a href=#slaved-media-elements>slaved
- media elements</a> when the user invokes a user agent interface
- control for beginning playback.</p>
+ <p>When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media controller</a>, the user agent's
+ user interface for pausing and unpausing playback, for seeking, for changing the rate of playback,
+ for fast-forwarding or rewinding, and for muting or changing the volume of audio of the entire
+ group must be implemented in terms of the <code><a href=#mediacontroller>MediaController</a></code> API exposed on that
+ <a href=#current-media-controller>current media controller</a>. When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media
+ controller</a>, and all the <a href=#slaved-media-elements>slaved media elements</a> of that
+ <code><a href=#mediacontroller>MediaController</a></code> are paused, the user agent should also unpause all the <a href=#slaved-media-elements>slaved
+ media elements</a> when the user invokes a user agent interface control for beginning
+ playback.</p>
- <p>The "play" function in the user agent's interface must set the
- <code title="">playbackRate</code> attribute to the value of the
- <code title="">defaultPlaybackRate</code> attribute before invoking
- the <code title="">play()</code> method.
- When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media
- controller</a>, the attributes and method with those names on
- that <code><a href=#mediacontroller>MediaController</a></code> object must be used. Otherwise,
- the attributes and method with those names on the <a href=#media-element>media
- element</a> itself must be used.
- </p>
+ <p>The "play" function in the user agent's interface must set the <code title="">playbackRate</code> attribute to the value of the <code title="">defaultPlaybackRate</code> attribute before invoking the <code title="">play()</code>
+ method. When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media controller</a>, the
+ attributes and method with those names on that <code><a href=#mediacontroller>MediaController</a></code> object must be used.
+ Otherwise, the attributes and method with those names on the <a href=#media-element>media element</a> itself
+ must be used. </p>
- <p>Features such as fast-forward or rewind must be implemented by
- only changing the <code title="">playbackRate</code> attribute (and
- not the <code title="">defaultPlaybackRate</code> attribute).
- Again, when a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media
- controller</a>, the attributes with those names on that
- <code><a href=#mediacontroller>MediaController</a></code> object must be used; otherwise, the
- attributes with those names on the <a href=#media-element>media element</a> itself
- must be used.
- </p>
+ <p>Features such as fast-forward or rewind must be implemented by only changing the <code title="">playbackRate</code> attribute (and not the <code title="">defaultPlaybackRate</code>
+ attribute). Again, when a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media controller</a>,
+ the attributes with those names on that <code><a href=#mediacontroller>MediaController</a></code> object must be used;
+ otherwise, the attributes with those names on the <a href=#media-element>media element</a> itself must be used.</p>
- <p>When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media
- controller</a>, seeking must be implemented in terms of the <code title=dom-MediaController-currentTime><a href=#dom-mediacontroller-currenttime>currentTime</a></code> attribute
- on that <code><a href=#mediacontroller>MediaController</a></code> object. Otherwise, the user
- agent must directly <a href=#dom-media-seek title=dom-media-seek>seek</a> to the
- requested position in the <a href=#media-element>media element</a>'s <a href=#media-timeline>media
- timeline</a>.</p>
+ <p>When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media controller</a>, seeking must be
+ implemented in terms of the <code title=dom-MediaController-currentTime><a href=#dom-mediacontroller-currenttime>currentTime</a></code>
+ attribute on that <code><a href=#mediacontroller>MediaController</a></code> object. Otherwise, the user agent must directly
+ <a href=#dom-media-seek title=dom-media-seek>seek</a> to the requested position in the <a href=#media-element>media
+ element</a>'s <a href=#media-timeline>media timeline</a>. For media resources where seeking to an arbitrary
+ position would be slow, user agents are encouraged to use the <i>approximate-for-speed</i> flag
+ when seeking in response to the user manipulating an approximate position interface such as a seek
+ bar.</p>
- <p>When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media
- controller</a>, user agents may additionally provide the user
- with controls that directly manipulate an individual <a href=#media-element>media
- element</a> without affecting the <code><a href=#mediacontroller>MediaController</a></code>,
- but such features are considered relatively advanced and unlikely to
- be useful to most users.
+ <p>When a <a href=#media-element>media element</a> has a <a href=#current-media-controller>current media controller</a>, user agents may
+ additionally provide the user with controls that directly manipulate an individual <a href=#media-element>media
+ element</a> without affecting the <code><a href=#mediacontroller>MediaController</a></code>, but such features are
+ considered relatively advanced and unlikely to be useful to most users.</p>
- <p>For the purposes of listing chapters in the <a href=#media-resource>media
- resource</a>, only <a href=#text-track title="text track">text tracks</a> in
- the <a href=#media-element>media element</a>'s <a href=#list-of-text-tracks>list of text tracks</a>
- that are <a href=#text-track-showing title="text track showing">showing</a> and whose
- <a href=#text-track-kind>text track kind</a> is <code title=dom-TextTrack-kind-chapters><a href=#dom-texttrack-kind-chapters>chapters</a></code> should be used.
- Such tracks must be interpreted according to the <a href=#rules-for-constructing-the-chapter-tree-from-a-text-track>rules for
- constructing the chapter tree from a text track</a>.</p>
+ <p>For the purposes of listing chapters in the <a href=#media-resource>media resource</a>, only <a href=#text-track title="text
+ track">text tracks</a> in the <a href=#media-element>media element</a>'s <a href=#list-of-text-tracks>list of text tracks</a>
+ that are <a href=#text-track-showing title="text track showing">showing</a> and whose <a href=#text-track-kind>text track kind</a> is
+ <code title=dom-TextTrack-kind-chapters><a href=#dom-texttrack-kind-chapters>chapters</a></code> should be used. Such tracks must be
+ interpreted according to the <a href=#rules-for-constructing-the-chapter-tree-from-a-text-track>rules for constructing the chapter tree from a text
+ track</a>. When seeking in response to a user maniplating a chapter selection interface, user
+ agents should not use the <i>approximate-for-speed</i> flag.</p>
- <p>The <dfn id=dom-media-controls title=dom-media-controls><code>controls</code></dfn>
- IDL attribute must <a href=#reflect>reflect</a> the content attribute of the
- same name.</p>
+ <p>The <dfn id=dom-media-controls title=dom-media-controls><code>controls</code></dfn> IDL attribute must
+ <a href=#reflect>reflect</a> the content attribute of the same name.</p>
<hr></div>
Modified: source
===================================================================
--- source 2012-10-08 18:52:16 UTC (rev 7439)
+++ source 2012-10-08 19:04:03 UTC (rev 7440)
@@ -41558,113 +41558,88 @@
<!--TOPIC:Video and Audio-->
<h5>User interface</h5>
- <p>The <dfn title="attr-media-controls"><code>controls</code></dfn>
- attribute is a <span>boolean attribute</span>. If present, it
- indicates that the author has not provided a scripted controller and
- would like the user agent to provide its own set of controls.</p>
+ <p>The <dfn title="attr-media-controls"><code>controls</code></dfn> attribute is a <span>boolean
+ attribute</span>. If present, it indicates that the author has not provided a scripted controller
+ and would like the user agent to provide its own set of controls.</p>
<div class="impl">
- <p>If the attribute is present, or if <span
- title="concept-n-noscript">scripting is disabled</span> for the
- <span>media element</span>, then the user agent should <dfn>expose a
- user interface to the user</dfn>. This user interface should include
- features to begin playback, pause playback, seek to an arbitrary
- position in the content (if the content supports arbitrary seeking),
- change the volume, change the display of closed captions or embedded
- sign-language tracks, select different audio tracks or turn on audio
- descriptions, and show the media content in manners more suitable to
- the user (e.g. full-screen video or in an independent resizable
- window). Other controls may also be made available.</p>
+ <p>If the attribute is present, or if <span title="concept-n-noscript">scripting is
+ disabled</span> for the <span>media element</span>, then the user agent should <dfn>expose a user
+ interface to the user</dfn>. This user interface should include features to begin playback, pause
+ playback, seek to an arbitrary position in the content (if the content supports arbitrary
+ seeking), change the volume, change the display of closed captions or embedded sign-language
+ tracks, select different audio tracks or turn on audio descriptions, and show the media content in
+ manners more suitable to the user (e.g. full-screen video or in an independent resizable window).
+ Other controls may also be made available.</p>
- <p>If the <span>media element</span> has a <span>current media
- controller</span>, then the user agent should expose audio tracks
- from all the <span>slaved media elements</span> (although avoiding
- duplicates if the same <span>media resource</span> is being used
- several times). If a <span>media resource</span>'s audio track
- exposed in this way has no known name, and it is the only audio
- track for a particular <span>media element</span>, the user agent
- should use the element's <code title="attr-title">title</code>
- attribute, if any, as the name (or as part of the name) of that
- track.</p>
+ <p>If the <span>media element</span> has a <span>current media controller</span>, then the user
+ agent should expose audio tracks from all the <span>slaved media elements</span> (although
+ avoiding duplicates if the same <span>media resource</span> is being used several times). If a
+ <span>media resource</span>'s audio track exposed in this way has no known name, and it is the
+ only audio track for a particular <span>media element</span>, the user agent should use the
+ element's <code title="attr-title">title</code> attribute, if any, as the name (or as part of the
+ name) of that track.</p>
- <p>Even when the attribute is absent, however, user agents may
- provide controls to affect playback of the media resource
- (e.g. play, pause, seeking, and volume controls), but such features
- should not interfere with the page's normal rendering. For example,
- such features could be exposed in the <span>media element</span>'s
- context menu.</p>
+ <p>Even when the attribute is absent, however, user agents may provide controls to affect playback
+ of the media resource (e.g. play, pause, seeking, and volume controls), but such features should
+ not interfere with the page's normal rendering. For example, such features could be exposed in the
+ <span>media element</span>'s context menu.</p>
- <p>Where possible (specifically, for starting, stopping, pausing,
- and unpausing playback, for seeking, for changing the rate of
- playback, for fast-forwarding or rewinding,
- for listing, enabling, and disabling text tracks,
- and for muting or changing the volume of the audio), user interface
- features exposed by the user agent must be implemented in terms of
- the DOM API described above, so that, e.g., all the same events
- fire.</p>
+ <p>Where possible (specifically, for starting, stopping, pausing, and unpausing playback, for
+ seeking, for changing the rate of playback, for fast-forwarding or rewinding, for listing,
+ enabling, and disabling text tracks, and for muting or changing the volume of the audio), user
+ interface features exposed by the user agent must be implemented in terms of the DOM API described
+ above, so that, e.g., all the same events fire.</p>
- <p>When a <span>media element</span> has a <span>current media
- controller</span>, the user agent's user interface for pausing and
- unpausing playback, for seeking, for changing the rate of playback,
- for fast-forwarding or rewinding, and for muting or changing the
- volume of audio of the entire group must be implemented in terms of
- the <code>MediaController</code> API exposed on that <span>current
- media controller</span>. When a <span>media element</span> has a
- <span>current media controller</span>, and all the <span>slaved
- media elements</span> of that <code>MediaController</code> are
- paused, the user agent should also unpause all the <span>slaved
- media elements</span> when the user invokes a user agent interface
- control for beginning playback.</p>
+ <p>When a <span>media element</span> has a <span>current media controller</span>, the user agent's
+ user interface for pausing and unpausing playback, for seeking, for changing the rate of playback,
+ for fast-forwarding or rewinding, and for muting or changing the volume of audio of the entire
+ group must be implemented in terms of the <code>MediaController</code> API exposed on that
+ <span>current media controller</span>. When a <span>media element</span> has a <span>current media
+ controller</span>, and all the <span>slaved media elements</span> of that
+ <code>MediaController</code> are paused, the user agent should also unpause all the <span>slaved
+ media elements</span> when the user invokes a user agent interface control for beginning
+ playback.</p>
- <p>The "play" function in the user agent's interface must set the
- <code title="">playbackRate</code> attribute to the value of the
- <code title="">defaultPlaybackRate</code> attribute before invoking
- the <code title="">play()</code> method.
- When a <span>media element</span> has a <span>current media
- controller</span>, the attributes and method with those names on
- that <code>MediaController</code> object must be used. Otherwise,
- the attributes and method with those names on the <span>media
- element</span> itself must be used.
- </p>
+ <p>The "play" function in the user agent's interface must set the <code
+ title="">playbackRate</code> attribute to the value of the <code
+ title="">defaultPlaybackRate</code> attribute before invoking the <code title="">play()</code>
+ method. When a <span>media element</span> has a <span>current media controller</span>, the
+ attributes and method with those names on that <code>MediaController</code> object must be used.
+ Otherwise, the attributes and method with those names on the <span>media element</span> itself
+ must be used. </p>
- <p>Features such as fast-forward or rewind must be implemented by
- only changing the <code title="">playbackRate</code> attribute (and
- not the <code title="">defaultPlaybackRate</code> attribute).
- Again, when a <span>media element</span> has a <span>current media
- controller</span>, the attributes with those names on that
- <code>MediaController</code> object must be used; otherwise, the
- attributes with those names on the <span>media element</span> itself
- must be used.
- </p>
+ <p>Features such as fast-forward or rewind must be implemented by only changing the <code
+ title="">playbackRate</code> attribute (and not the <code title="">defaultPlaybackRate</code>
+ attribute). Again, when a <span>media element</span> has a <span>current media controller</span>,
+ the attributes with those names on that <code>MediaController</code> object must be used;
+ otherwise, the attributes with those names on the <span>media element</span> itself must be used.</p>
- <p>When a <span>media element</span> has a <span>current media
- controller</span>, seeking must be implemented in terms of the <code
- title="dom-MediaController-currentTime">currentTime</code> attribute
- on that <code>MediaController</code> object. Otherwise, the user
- agent must directly <span title="dom-media-seek">seek</span> to the
- requested position in the <span>media element</span>'s <span>media
- timeline</span>.</p>
+ <p>When a <span>media element</span> has a <span>current media controller</span>, seeking must be
+ implemented in terms of the <code title="dom-MediaController-currentTime">currentTime</code>
+ attribute on that <code>MediaController</code> object. Otherwise, the user agent must directly
+ <span title="dom-media-seek">seek</span> to the requested position in the <span>media
+ element</span>'s <span>media timeline</span>. For media resources where seeking to an arbitrary
+ position would be slow, user agents are encouraged to use the <i>approximate-for-speed</i> flag
+ when seeking in response to the user manipulating an approximate position interface such as a seek
+ bar.</p>
- <p>When a <span>media element</span> has a <span>current media
- controller</span>, user agents may additionally provide the user
- with controls that directly manipulate an individual <span>media
- element</span> without affecting the <code>MediaController</code>,
- but such features are considered relatively advanced and unlikely to
- be useful to most users.
+ <p>When a <span>media element</span> has a <span>current media controller</span>, user agents may
+ additionally provide the user with controls that directly manipulate an individual <span>media
+ element</span> without affecting the <code>MediaController</code>, but such features are
+ considered relatively advanced and unlikely to be useful to most users.</p>
- <p>For the purposes of listing chapters in the <span>media
- resource</span>, only <span title="text track">text tracks</span> in
- the <span>media element</span>'s <span>list of text tracks</span>
- that are <span title="text track showing">showing</span> and whose
- <span>text track kind</span> is <code
- title="dom-TextTrack-kind-chapters">chapters</code> should be used.
- Such tracks must be interpreted according to the <span>rules for
- constructing the chapter tree from a text track</span>.</p>
+ <p>For the purposes of listing chapters in the <span>media resource</span>, only <span title="text
+ track">text tracks</span> in the <span>media element</span>'s <span>list of text tracks</span>
+ that are <span title="text track showing">showing</span> and whose <span>text track kind</span> is
+ <code title="dom-TextTrack-kind-chapters">chapters</code> should be used. Such tracks must be
+ interpreted according to the <span>rules for constructing the chapter tree from a text
+ track</span>. When seeking in response to a user maniplating a chapter selection interface, user
+ agents should not use the <i>approximate-for-speed</i> flag.</p>
- <p>The <dfn title="dom-media-controls"><code>controls</code></dfn>
- IDL attribute must <span>reflect</span> the content attribute of the
- same name.</p>
+ <p>The <dfn title="dom-media-controls"><code>controls</code></dfn> IDL attribute must
+ <span>reflect</span> the content attribute of the same name.</p>
<hr>
More information about the Commit-Watchers
mailing list