HTML Standard Tracker


File a bug

SVNBugCommentTime (UTC)
3035[Gecko] [Opera] [Webkit] Introduce video.startTime to return the earliest possible position.2009-04-30 01:04
@@ -21266,36 +21266,37 @@ interface <dfn>HTMLAudioElement</dfn> : <span>HTMLMediaElement</span> {
            attribute DOMString <span title="dom-media-src">src</span>;
   readonly attribute DOMString <span title="dom-media-currentSrc">currentSrc</span>;
   const unsigned short <span title="dom-media-NETWORK_EMPTY">NETWORK_EMPTY</span> = 0;
   const unsigned short <span title="dom-media-NETWORK_IDLE">NETWORK_IDLE</span> = 1;
   const unsigned short <span title="dom-media-NETWORK_LOADING">NETWORK_LOADING</span> = 2;
   const unsigned short <span title="dom-media-NETWORK_LOADED">NETWORK_LOADED</span> = 3;
   const unsigned short <span title="dom-media-NETWORK_NO_SOURCE">NETWORK_NO_SOURCE</span> = 4;
   readonly attribute unsigned short <span title="dom-media-networkState">networkState</span>;
            attribute boolean <span title="dom-media-autobuffer">autobuffer</span>;
 <!--v3BUF  readonly attribute float <span title="dom-media-bufferingRate">bufferingRate</span>;
-  readonly attribute boolean <span title="dom-media-bufferingThrottled">bufferingThrottled</span>;-->
-  readonly attribute <span>TimeRanges</span> <span title="dom-media-buffered">buffered</span>;
+  readonly attribute boolean <span title="dom-media-bufferingThrottled">bufferingThrottled</span>;
+-->  readonly attribute <span>TimeRanges</span> <span title="dom-media-buffered">buffered</span>;
   void <span title="dom-media-load">load</span>();
   DOMString <span title="dom-navigator-canPlayType">canPlayType</span>(in DOMString type);
   // ready state
   const unsigned short <span title="dom-media-HAVE_NOTHING">HAVE_NOTHING</span> = 0;
   const unsigned short <span title="dom-media-HAVE_METADATA">HAVE_METADATA</span> = 1;
   const unsigned short <span title="dom-media-HAVE_CURRENT_DATA">HAVE_CURRENT_DATA</span> = 2;
   const unsigned short <span title="dom-media-HAVE_FUTURE_DATA">HAVE_FUTURE_DATA</span> = 3;
   const unsigned short <span title="dom-media-HAVE_ENOUGH_DATA">HAVE_ENOUGH_DATA</span> = 4;
   readonly attribute unsigned short <span title="dom-media-readyState">readyState</span>;
   readonly attribute boolean <span title="dom-media-seeking">seeking</span>;
   // playback state
            attribute float <span title="dom-media-currentTime">currentTime</span>;
+  readonly attribute float <span title="dom-media-startTime">startTime</span>;
   readonly attribute float <span title="dom-media-duration">duration</span>;
   readonly attribute boolean <span title="dom-media-paused">paused</span>;
            attribute float <span title="dom-media-defaultPlaybackRate">defaultPlaybackRate</span>;
            attribute float <span title="dom-media-playbackRate">playbackRate</span>;
   readonly attribute <span>TimeRanges</span> <span title="dom-media-played">played</span>;
   readonly attribute <span>TimeRanges</span> <span title="dom-media-seekable">seekable</span>;
   readonly attribute boolean <span title="dom-media-ended">ended</span>;
            attribute boolean <span title="dom-media-autoplay">autoplay</span>;
            attribute boolean <span title="dom-media-loop">loop</span>;
   void <span title="dom-media-play">play</span>();
@@ -22635,26 +22636,38 @@ interface <dfn>CueRangeCallback</dfn> {
    <dt><var title="">media</var> . <code title="dom-media-currentTime">currentTime</code> [ = <var title="">value</var> ]</dt>
     <p>Returns the <span>current playback position</span>, in seconds.</p>
     <p>Can be set, to seek to the given time.<p>
     <p>Will throw an <code>INVALID_STATE_ERR</code> exception if there
-    is no selected <span>media resources</span>. Will throw an
+    is no selected <span>media resource</span>. Will throw an
     <code>INDEX_SIZE_ERR</code> exception if the given time is not
     within the ranges to which the user agent can seek.</p>
+   <dt><var title="">media</var> . <code title="dom-media-startTime">startTime</code></dt>
+   <dd>
+    <p>Returns the <span>earliest possible position</span>, in
+    seconds. This is the time for the start of the current clip. It
+    might not be zero if the clip's timeline is not zero-based, or if
+    the resource is a streaming resource (in which case it gives the
+    earliest time that the user agent is able to seek back to).</p>
+   </dd>
   <div class="impl">
   <p>The <dfn title="dom-media-duration"><code>duration</code></dfn>
   attribute must return the length of the <span>media resource</span>,
   in seconds. If no <span>media data</span> is available, then the
   attributes must return the Not-a-Number (NaN) value. If the
   <span>media resource</span> is known to be unbounded (e.g. a
   streaming radio), then the attribute must return the positive
@@ -22698,25 +22711,33 @@ interface <dfn>CueRangeCallback</dfn> {
   (which might raise an exception).</p>
   <p>If the <span>media resource</span> is a streaming resource, then
   the user agent might be unable to obtain certain parts of the
   resource after it has expired from its buffer. Similarly, some <span
   title="media resource">media resources</span> might have a timeline
   that doesn't start at zero. The <dfn>earliest possible
   position</dfn> is the earliest position in the stream or resource
   that the user agent can ever obtain again.</p>
-  <p>When the <span>earliest possible position</span> changes, if the
-  <span>current playback position</span> is before the
+  <p>The <dfn title="dom-media-startTime"><code>startTime</code></dfn>
+  attribute must, on getting, return the <span>earliest possible
+  position</span>, expressed in seconds.</p>
+  <p>When the <span>earliest possible position</span> changes, then:
+  if the <span>current playback position</span> is before the
   <span>earliest possible position</span>, the user agent must <span
   title="dom-media-seek">seek</span> to the <span>earliest possible
-  position</span>.</p>
+  position</span>; otherwise, if the user agent has not fired a <code
+  title="event-timeupdate">timeupdate</code> event at the element in
+  the past 15 to 250ms, then the user agent must <span>queue a
+  task</span> to <span>fire a simple event</span> called <code
+  title="event-timeupdate">timeupdate</code> at the element.</p>
   <p>The <dfn title="attr-media-loop"><code>loop</code></dfn>
   attribute is a <span>boolean attribute</span> that, if specified,
   indicates that the <span>media element</span> is to seek back to the
   start of the <span>media resource</span> upon reaching the end.</p>
   <div class="impl">