[html5] r1617 - /

whatwg at whatwg.org whatwg at whatwg.org
Wed May 14 18:28:53 PDT 2008


Author: ianh
Date: 2008-05-14 18:28:52 -0700 (Wed, 14 May 2008)
New Revision: 1617

Modified:
   index
   source
Log:
[e] (0) Note the request for external captions; move <source> to before the definition of media elements.

Modified: index
===================================================================
--- index	2008-05-14 19:45:16 UTC (rev 1616)
+++ index	2008-05-15 01:28:52 UTC (rev 1617)
@@ -25,7 +25,7 @@
 
    <h1 id=html-5>HTML 5</h1>
 
-   <h2 class="no-num no-toc" id=draft>Draft Recommendation — 14 May
+   <h2 class="no-num no-toc" id=draft>Draft Recommendation — 15 May
     2008</h2>
 
    <p>You can take part in this work. <a
@@ -660,52 +660,52 @@
           codecs for <code>audio</code> elements</a>
         </ul>
 
-       <li><a href="#media"><span class=secno>3.12.9 </span>Media
+       <li><a href="#the-source"><span class=secno>3.12.9 </span>The
+        <code>source</code> element</a>
+
+       <li><a href="#media"><span class=secno>3.12.10 </span>Media
         elements</a>
         <ul class=toc>
-         <li><a href="#error"><span class=secno>3.12.9.1. </span>Error
+         <li><a href="#error"><span class=secno>3.12.10.1. </span>Error
           codes</a>
 
-         <li><a href="#location"><span class=secno>3.12.9.2. </span>Location
+         <li><a href="#location"><span class=secno>3.12.10.2. </span>Location
           of the media resource</a>
 
-         <li><a href="#network0"><span class=secno>3.12.9.3. </span>Network
+         <li><a href="#network0"><span class=secno>3.12.10.3. </span>Network
           states</a>
 
-         <li><a href="#loading"><span class=secno>3.12.9.4. </span>Loading
+         <li><a href="#loading"><span class=secno>3.12.10.4. </span>Loading
           the media resource</a>
 
-         <li><a href="#offsets"><span class=secno>3.12.9.5. </span>Offsets
+         <li><a href="#offsets"><span class=secno>3.12.10.5. </span>Offsets
           into the media resource</a>
 
-         <li><a href="#the-ready"><span class=secno>3.12.9.6. </span>The
+         <li><a href="#the-ready"><span class=secno>3.12.10.6. </span>The
           ready states</a>
 
-         <li><a href="#playing"><span class=secno>3.12.9.7. </span>Playing
+         <li><a href="#playing"><span class=secno>3.12.10.7. </span>Playing
           the media resource</a>
 
-         <li><a href="#seeking"><span class=secno>3.12.9.8.
+         <li><a href="#seeking"><span class=secno>3.12.10.8.
           </span>Seeking</a>
 
-         <li><a href="#cue-ranges"><span class=secno>3.12.9.9. </span>Cue
+         <li><a href="#cue-ranges"><span class=secno>3.12.10.9. </span>Cue
           ranges</a>
 
-         <li><a href="#user-interface"><span class=secno>3.12.9.10.
+         <li><a href="#user-interface"><span class=secno>3.12.10.10.
           </span>User interface</a>
 
-         <li><a href="#time-range"><span class=secno>3.12.9.11. </span>Time
+         <li><a href="#time-range"><span class=secno>3.12.10.11. </span>Time
           range</a>
 
-         <li><a href="#mediaevents"><span class=secno>3.12.9.12. </span>Event
-          summary</a>
+         <li><a href="#mediaevents"><span class=secno>3.12.10.12.
+          </span>Event summary</a>
 
-         <li><a href="#security0"><span class=secno>3.12.9.13.
+         <li><a href="#security0"><span class=secno>3.12.10.13.
           </span>Security and privacy considerations</a>
         </ul>
 
-       <li><a href="#the-source"><span class=secno>3.12.10 </span>The
-        <code>source</code> element</a>
-
        <li><a href="#the-canvas"><span class=secno>3.12.11 </span>The
         <code>canvas</code> element</a>
         <ul class=toc>
@@ -14794,17 +14794,17 @@
    <dt>Content model:
 
    <dd>If the element has a <code title=attr-media-src><a
-    href="#src5">src</a></code> attribute: <a
+    href="#src7">src</a></code> attribute: <a
     href="#transparent0">transparent</a>.
 
    <dd>If the element does not have a <code title=attr-media-src><a
-    href="#src5">src</a></code> attribute: one or more <code><a
+    href="#src7">src</a></code> attribute: one or more <code><a
     href="#source">source</a></code> elements, then, <a
     href="#transparent0">transparent</a>.
 
    <dt>Element-specific attributes:
 
-   <dd><code title=attr-media-src><a href="#src5">src</a></code>
+   <dd><code title=attr-media-src><a href="#src7">src</a></code>
 
    <dd><code title=attr-video-poster><a href="#poster">poster</a></code>
 
@@ -14862,10 +14862,10 @@
    streams.
 
   <p>The <code><a href="#video1">video</a></code> element is a <a
-   href="#media5">media element</a> whose <a href="#media7">media data</a> is
+   href="#media7">media element</a> whose <a href="#media9">media data</a> is
    ostensibly video data, possibly with associated audio data.
 
-  <p>The <code title=attr-media-src><a href="#src5">src</a></code>, <code
+  <p>The <code title=attr-media-src><a href="#src7">src</a></code>, <code
    title=attr-media-autoplay><a href="#autoplay">autoplay</a></code>, <code
    title=attr-media-start><a href="#start2">start</a></code>, <code
    title=attr-media-loopstart><a href="#loopstart">loopstart</a></code>,
@@ -14873,7 +14873,7 @@
    <code title=attr-media-end><a href="#end">end</a></code>, <code
    title=attr-media-playcount><a href="#playcount">playcount</a></code>, and
    <code title=attr-media-controls><a href="#controls">controls</a></code>
-   attributes are <a href="#media6" title="media element attributes">the
+   attributes are <a href="#media8" title="media element attributes">the
    attributes common to all media elements</a>.
 
   <p>The <code><a href="#video1">video</a></code> element supports <a
@@ -15024,17 +15024,17 @@
    <dt>Content model:
 
    <dd>If the element has a <code title=attr-media-src><a
-    href="#src5">src</a></code> attribute: <a
+    href="#src7">src</a></code> attribute: <a
     href="#transparent0">transparent</a>.
 
    <dd>If the element does not have a <code title=attr-media-src><a
-    href="#src5">src</a></code> attribute: one or more <code><a
+    href="#src7">src</a></code> attribute: one or more <code><a
     href="#source">source</a></code> elements, then, <a
     href="#transparent0">transparent</a>.
 
    <dt>Element-specific attributes:
 
-   <dd><code title=attr-media-src><a href="#src5">src</a></code>
+   <dd><code title=attr-media-src><a href="#src7">src</a></code>
 
    <dd><code title=attr-media-autoplay><a
     href="#autoplay">autoplay</a></code>
@@ -15081,10 +15081,10 @@
    (such as transcriptions) into their media streams.
 
   <p>The <code><a href="#audio1">audio</a></code> element is a <a
-   href="#media5">media element</a> whose <a href="#media7">media data</a> is
+   href="#media7">media element</a> whose <a href="#media9">media data</a> is
    ostensibly audio data.
 
-  <p>The <code title=attr-media-src><a href="#src5">src</a></code>, <code
+  <p>The <code title=attr-media-src><a href="#src7">src</a></code>, <code
    title=attr-media-autoplay><a href="#autoplay">autoplay</a></code>, <code
    title=attr-media-start><a href="#start2">start</a></code>, <code
    title=attr-media-loopstart><a href="#loopstart">loopstart</a></code>,
@@ -15092,7 +15092,7 @@
    <code title=attr-media-end><a href="#end">end</a></code>, <code
    title=attr-media-playcount><a href="#playcount">playcount</a></code>, and
    <code title=attr-media-controls><a href="#controls">controls</a></code>
-   attributes are <a href="#media6" title="media element attributes">the
+   attributes are <a href="#media8" title="media element attributes">the
    attributes common to all media elements</a>.
 
   <p>When an <code><a href="#audio1">audio</a></code> element is <a
@@ -15115,9 +15115,213 @@
   <!-- XXX mention that this spec doesn't require native support or
   plugin support, either is fine -->
 
-  <h4 id=media><span class=secno>3.12.9 </span>Media elements</h4>
+  <h4 id=the-source><span class=secno>3.12.9 </span>The <dfn
+   id=source><code>source</code></dfn> element</h4>
 
-  <p><dfn id=media5 title="media element">Media elements</dfn> implement the
+  <dl class=element>
+   <dt>Categories
+
+   <dd>None.
+
+   <dt>Contexts in which this element may be used:
+
+   <dd>As a child of a <a href="#media7">media element</a>, before any <a
+    href="#flow-content0">flow content</a>.
+
+   <dt>Content model:
+
+   <dd>Empty.
+
+   <dt>Element-specific attributes:
+
+   <dd><code title=attr-source-src><a href="#src5">src</a></code>
+
+   <dd><code title=attr-source-type><a href="#type8">type</a></code>
+
+   <dd><code title=attr-source-media><a href="#media5">media</a></code>
+
+   <dt>DOM interface:
+
+   <dd>
+    <pre
+     class=idl>interface <dfn id=htmlsourceelement>HTMLSourceElement</dfn> : <a href="#htmlelement">HTMLElement</a> {
+           attribute DOMString <a href="#src6" title=dom-source-src>src</a>;
+           attribute DOMString <a href="#type9" title=dom-source-type>type</a>;
+           attribute DOMString <a href="#media6" title=dom-source-media>media</a>;
+};</pre>
+  </dl>
+
+  <p>The <code><a href="#source">source</a></code> element allows authors to
+   specify multiple <a href="#media10" title="media resource">media
+   resources</a> for <a href="#media7" title="media element">media
+   elements</a>.
+
+  <p>The <dfn id=src5 title=attr-source-src><code>src</code></dfn> attribute
+   gives the address of the <a href="#media10">media resource</a>. The value
+   must be a URI (or IRI). This attribute must be present.
+
+  <p>The <dfn id=type8 title=attr-source-type><code>type</code></dfn>
+   attribute gives the type of the <a href="#media10">media resource</a>, to
+   help the user agent determine if it can play this <a href="#media10">media
+   resource</a> before downloading it. Its value must be a MIME type. The
+   <code title="">codecs</code> parameter may be specified and might be
+   necessary to specify exactly how the resource is encoded. <a
+   href="#refsRFC2046">[RFC2046]</a> <a href="#refsRFC4281">[RFC4281]</a>
+
+  <div class=example>
+   <p>The following list shows some examples of how to use the <code
+    title="">codecs=</code> MIME parameter in the <code
+    title=attr-source-type><a href="#type8">type</a></code> attribute.</p>
+
+   <dl>
+    <dt>H.264 Simple baseline profile video (main and extended video
+     compatible) level 3 and Low-Complexity AAC audio in MP4 container
+
+    <dd>
+     <pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.42E01E, mp4a.40.2&quot;"></pre>
+
+    <dt>H.264 Extended profile video (baseline-compatible) level 3 and
+     Low-Complexity AAC audio in MP4 container
+
+    <dd>
+     <pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.58A01E, mp4a.40.2&quot;"></pre>
+
+    <dt>H.264 Main profile video level 3 and Low-Complexity AAC audio in MP4
+     container
+
+    <dd>
+     <pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.4D401E, mp4a.40.2&quot;"></pre>
+
+    <dt>H.264 "High" profile video (incompatible with main, baseline, or
+     extended profiles) level 3 and Low-Complexity AAC audio in MP4 container
+
+    <dd>
+     <pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.64001E, mp4a.40.2&quot;"></pre>
+
+    <dt>MPEG-4 Visual Simple Profile Level 0 video and Low-Complexity AAC
+     audio in MP4 container
+
+    <dd>
+     <pre><source src="video.mp4" type="video/mp4; codecs=&quot;mp4v.20.8, mp4a.40.2&quot;"></pre>
+
+    <dt>MPEG-4 Advanced Simple Profile Level 0 video and Low-Complexity AAC
+     audio in MP4 container
+
+    <dd>
+     <pre><source src="video.mp4" type="video/mp4; codecs=&quot;mp4v.20.240, mp4a.40.2&quot;"></pre>
+
+    <dt>MPEG-4 Visual Simple Profile Level 0 video and AMR audio in 3GPP
+     container
+
+    <dd>
+     <pre><source src="video.3gp" type="video/3gpp; codecs=&quot;mp4v.20.8, samr&quot;"></pre>
+
+    <dt>Theora video and Vorbis audio in Ogg container
+
+    <dd>
+     <pre><source src="video.ogv" type="video/ogg; codecs=&quot;theora, vorbis&quot;"></pre>
+
+    <dt>Theora video and Speex audio in Ogg container
+
+    <dd>
+     <pre><source src="video.ogv" type="video/ogg; codecs=&quot;theora, speex&quot;"></pre>
+
+    <dt>Vorbis audio alone in Ogg container
+
+    <dd>
+     <pre><source src="audio.oga" type="audio/ogg; codecs=vorbis"></pre>
+    </dd>
+    <!-- you also see .ogg but .oga is preferred -->
+
+    <dt>Speex audio alone in Ogg container
+
+    <dd>
+     <pre><source src="audio.oga" type="audio/ogg; codecs=speex"></pre>
+    </dd>
+    <!-- you also see .spx but .oga is preferred -->
+
+    <dt>Flac audio alone in Ogg container
+
+    <dd>
+     <pre><source src="audio.oga" type="audio/ogg; codecs=flac"></pre>
+
+    <dt>Dirac video and Vorbis audio in Ogg container
+
+    <dd>
+     <pre><source src="video.ogv" type="video/ogg; codecs=&quot;dirac, vorbis&quot;"></pre>
+
+    <dt>Theora video and Vorbis audio in Matroska container
+
+    <dd>
+     <pre><source src="video.mkv" type="video/x-matroska; codecs=&quot;theora, vorbis&quot;"></pre>
+    </dd>
+    <!-- awaiting definition by the Ogg or BBC guys:
+    <dt>Dirac video and Vorbis audio in Matroska container</dt>
+    <dd><pre><source src="video.mkv" type="video/x-matroska; codecs="></pre></dd>
+-->
+    <!-- awaiting definition by the Microsoft guys:
+
+    <dt>WMV9 video and WMA 2 audio in ASF container</dt>
+    <dd><pre><source src="video.wmv" type="video/x-ms-wmv; codecs="></pre></dd>
+
+    <dt>WMV8 video and WMA 2 audio in ASF container</dt>
+    <dd><pre><source src="video.wmv" type="video/x-ms-wmv; codecs="></pre></dd>
+
+    <dt>VC-1 video and WMA 10 Pro audio in ASF container</dt>
+    <dd><pre><source src="video.wmv" type="video/x-ms-wmv; codecs="></pre></dd>
+
+    <dt>XviD video and MP3 audio in AVI container</dt>
+    <dd><pre><source src="video.avi" type="video/x-msvideo; codecs="></pre></dd>
+
+    <dt>Motion-JPEG video and uncompressed PCM audio in AVI container</dt>
+    <dd><pre><source src="video.avi" type="video/x-msvideo; codecs="></pre></dd>
+
+-->
+    <!-- awaiting definition by Real:
+    <dt>Real Video 10 video and High-Efficiency AAC audio in Real Media container</dt>
+    <dd><pre><source src="video.rm" type="application/vnd.rn-realmedia; codecs="></pre></dd>
+-->
+    <!--  undefined:
+    <dt>MPEG-1 video and MPEG-1 Audio Layer II audio in MPEG-1 program stream</dt>
+    <dd><pre><source src="video.mpg" type="video/mpeg; codecs="></pre></dd>
+-->
+   </dl>
+   <!-- XXX #refs https://trac.xiph.org/browser/experimental/ivo/drafts/draft-xiph-rfc3534bis.txt may be relevant -->
+   </div>
+
+  <p>The <dfn id=media5 title=attr-source-media><code>media</code></dfn>
+   attribute gives the intended media type of the <a href="#media10">media
+   resource</a>, to help the user agent determine if this <a
+   href="#media10">media resource</a> is useful to the user before
+   downloading it. Its value must be a valid <a href="#mq">media query</a>.
+   <a href="#refsMQ">[MQ]</a>
+
+  <p>Either the <code title=attr-source-type><a href="#type8">type</a></code>
+   attribute, the <code title=attr-source-media><a
+   href="#media5">media</a></code> attribute or both, must be specified,
+   unless this is the last <code><a href="#source">source</a></code> element
+   child of the parent element.
+
+  <p>If a <code><a href="#source">source</a></code> element is inserted into
+   a <a href="#media7">media element</a> that is already in a document and
+   whose <code title=dom-media-networkState><a
+   href="#networkstate">networkState</a></code> is in the <code
+   title=dom-media-EMPTY><a href="#empty">EMPTY</a></code> state, the user
+   agent must implicitly invoke the <code title=dom-media-load><a
+   href="#load">load()</a></code> method on the <a href="#media7">media
+   element</a> as soon as all other scripts have finished executing. Any
+   exceptions raised must be ignored.
+
+  <p>The DOM attributes <dfn id=src6
+   title=dom-source-src><code>src</code></dfn>, <dfn id=type9
+   title=dom-source-type><code>type</code></dfn>, and <dfn id=media6
+   title=dom-source-media><code>media</code></dfn> must <a
+   href="#reflect">reflect</a> the respective content attributes of the same
+   name.
+
+  <h4 id=media><span class=secno>3.12.10 </span>Media elements</h4>
+
+  <p><dfn id=media7 title="media element">Media elements</dfn> implement the
    following interface:
 
   <pre
@@ -15127,7 +15331,7 @@
   readonly attribute <a href="#mediaerror">MediaError</a> <a href="#error0" title=dom-media-error>error</a>;
 
   // network state
-           attribute DOMString <a href="#src6" title=dom-media-src>src</a>;
+           attribute DOMString <a href="#src8" title=dom-media-src>src</a>;
   readonly attribute DOMString <a href="#currentsrc" title=dom-media-currentSrc>currentSrc</a>;
   const unsigned short <a href="#empty" title=dom-media-EMPTY>EMPTY</a> = 0;
   const unsigned short <a href="#loading0" title=dom-media-LOADING>LOADING</a> = 1;
@@ -15178,8 +15382,8 @@
            attribute boolean <a href="#muted" title=dom-media-muted>muted</a>;
 };</pre>
 
-  <p>The <dfn id=media6>media element attributes</dfn>, <code
-   title=attr-media-src><a href="#src5">src</a></code>, <code
+  <p>The <dfn id=media8>media element attributes</dfn>, <code
+   title=attr-media-src><a href="#src7">src</a></code>, <code
    title=attr-media-autoplay><a href="#autoplay">autoplay</a></code>, <code
    title=attr-media-start><a href="#start2">start</a></code>, <code
    title=attr-media-loopstart><a href="#loopstart">loopstart</a></code>,
@@ -15187,7 +15391,7 @@
    <code title=attr-media-end><a href="#end">end</a></code>, <code
    title=attr-media-playcount><a href="#playcount">playcount</a></code>, and
    <code title=attr-media-controls><a href="#controls">controls</a></code>,
-   apply to all <a href="#media5" title="media element">media elements</a>.
+   apply to all <a href="#media7" title="media element">media elements</a>.
    They are defined in this section.</p>
   <!-- XXXv3 features:
     * frame forward / backwards / step(n) while paused
@@ -15215,22 +15419,23 @@
     * general meta data, implemented as getters (don't expose the whole thing)
       - getMetadata(key: string, language: string) => HTMLImageElement or string
       - onmetadatachanged (no context info)
+    * external captions support
     * video: changing the playback aspect ratio 
     * video: applying CSS filters 
     * infinite looping 
   -->
 
-  <p><a href="#media5" title="media element">Media elements</a> are used to
+  <p><a href="#media7" title="media element">Media elements</a> are used to
    present audio data, or video and audio data, to the user. This is referred
-   to as <dfn id=media7>media data</dfn> in this section, since this section
-   applies equally to <a href="#media5" title="media element">media
-   elements</a> for audio or for video. The term <dfn id=media8>media
+   to as <dfn id=media9>media data</dfn> in this section, since this section
+   applies equally to <a href="#media7" title="media element">media
+   elements</a> for audio or for video. The term <dfn id=media10>media
    resource</dfn> is used to refer to the complete set of media data, e.g.
    the complete video file, or complete audio file.
 
-  <h5 id=error><span class=secno>3.12.9.1. </span>Error codes</h5>
+  <h5 id=error><span class=secno>3.12.10.1. </span>Error codes</h5>
 
-  <p>All <a href="#media5" title="media element">media elements</a> have an
+  <p>All <a href="#media7" title="media element">media elements</a> have an
    associated error status, which records the last error the element
    encountered since the <code title=dom-media-load><a
    href="#load">load()</a></code> method was last invoked. The <dfn id=error0
@@ -15254,7 +15459,7 @@
     title=dom-MediaError-MEDIA_ERR_ABORTED><code>MEDIA_ERR_ABORTED</code></dfn>
     (numeric value 1)
 
-   <dd>The download of the <a href="#media8">media resource</a> was aborted
+   <dd>The download of the <a href="#media10">media resource</a> was aborted
     by the user agent at the user's request.
 
    <dt><dfn id=mediaerrnetwork
@@ -15262,61 +15467,61 @@
     (numeric value 2)
 
    <dd>A network error of some description caused the user agent to stop
-    downloading the <a href="#media8">media resource</a>.
+    downloading the <a href="#media10">media resource</a>.
 
    <dt><dfn id=mediaerrdecode
     title=dom-MediaError-MEDIA_ERR_DECODE><code>MEDIA_ERR_DECODE</code></dfn>
     (numeric value 3)
 
    <dd>An error of some description occurred while decoding the <a
-    href="#media8">media resource</a>.
+    href="#media10">media resource</a>.
   </dl>
 
-  <h5 id=location><span class=secno>3.12.9.2. </span>Location of the media
+  <h5 id=location><span class=secno>3.12.10.2. </span>Location of the media
    resource</h5>
 
-  <p>The <dfn id=src5 title=attr-media-src><code>src</code></dfn> content
-   attribute on <a href="#media5" title="media element">media elements</a>
+  <p>The <dfn id=src7 title=attr-media-src><code>src</code></dfn> content
+   attribute on <a href="#media7" title="media element">media elements</a>
    gives the address of the media resource (video, audio) to show. The
    attribute, if present, must contain a URI (or IRI).
 
-  <p>If the <code title=attr-media-src><a href="#src5">src</a></code>
-   attribute of a <a href="#media5">media element</a> that is already in a
+  <p>If the <code title=attr-media-src><a href="#src7">src</a></code>
+   attribute of a <a href="#media7">media element</a> that is already in a
    document and whose <code title=dom-media-networkState><a
    href="#networkstate">networkState</a></code> is in the <code
    title=dom-media-EMPTY><a href="#empty">EMPTY</a></code> state is added,
    changed, or removed, the user agent must implicitly invoke the <code
    title=dom-media-load><a href="#load">load()</a></code> method on the <a
-   href="#media5">media element</a> as soon as all other scripts have
+   href="#media7">media element</a> as soon as all other scripts have
    finished executing. Any exceptions raised must be ignored.
 
   <p class=note>If a <code title=attr-media-src><a
-   href="#src5">src</a></code> attribute is specified, the resource it
-   specifies is the <a href="#media8">media resource</a> that will be used.
+   href="#src7">src</a></code> attribute is specified, the resource it
+   specifies is the <a href="#media10">media resource</a> that will be used.
    Otherwise, the resource specified by the first suitable <code><a
    href="#source">source</a></code> element child of the <a
-   href="#media5">media element</a> is the one used.
+   href="#media7">media element</a> is the one used.
 
-  <p>The <dfn id=src6 title=dom-media-src><code>src</code></dfn> DOM
-   attribute on <a href="#media5" title="media element">media elements</a>
+  <p>The <dfn id=src8 title=dom-media-src><code>src</code></dfn> DOM
+   attribute on <a href="#media7" title="media element">media elements</a>
    must <a href="#reflect">reflect</a> the content attribute of the same
    name.
 
   <p>To <dfn id=pick-a>pick a media resource</dfn> for a <a
-   href="#media5">media element</a>, a user agent must use the following
+   href="#media7">media element</a>, a user agent must use the following
    steps:
 
   <ol>
    <li>
-    <p>If the <a href="#media5">media element</a> has a <code
-     title=attr-media-src><a href="#src5">src</a></code>, then the address
-     given in that attribute is the address of the <a href="#media8">media
+    <p>If the <a href="#media7">media element</a> has a <code
+     title=attr-media-src><a href="#src7">src</a></code>, then the address
+     given in that attribute is the address of the <a href="#media10">media
      resource</a>; jump to the last step.
 
    <li>
     <p>Otherwise, let <var title="">candidate</var> be the first <code><a
      href="#source">source</a></code> element child in the <a
-     href="#media5">media element</a>, or null if there is no such child.
+     href="#media7">media element</a>, or null if there is no such child.
 
    <li>
     <p>If either:</p>
@@ -15325,7 +15530,7 @@
      <li><var title="">candidate</var> is null, or
 
      <li>the <var title="">candidate</var> element has no <code
-      title=attr-source-src><a href="#src7">src</a></code> attribute, or
+      title=attr-source-src><a href="#src5">src</a></code> attribute, or
 
      <li>the <var title="">candidate</var> element has a <code
       title=attr-source-type><a href="#type8">type</a></code> attribute and
@@ -15335,7 +15540,7 @@
       href="#refsRFC2046">[RFC2046]</a> <a href="#refsRFC4281">[RFC4281]</a>
 
      <li>the <var title="">candidate</var> element has a <code
-      title=attr-source-media><a href="#media9">media</a></code> attribute
+      title=attr-source-media><a href="#media5">media</a></code> attribute
       and that attribute's value, when processed according to the rules for
       <a href="#mq">media queries</a>, does not match the current
       environment, <a href="#refsMQ">[MQ]</a>
@@ -15345,21 +15550,21 @@
      next step.</p>
 
     <p>Otherwise, the address given in that <var title="">candidate</var>
-     element's <code title=attr-source-src><a href="#src7">src</a></code>
-     attribute is the address of the <a href="#media8">media resource</a>;
+     element's <code title=attr-source-src><a href="#src5">src</a></code>
+     attribute is the address of the <a href="#media10">media resource</a>;
      jump to the last step.</p>
 
    <li>
     <p>Let <var title="">candidate</var> be the next <code><a
      href="#source">source</a></code> element child in the <a
-     href="#media5">media element</a>, or null if there are no more such
+     href="#media7">media element</a>, or null if there are no more such
      children.
 
    <li>
     <p>If <var title="">candidate</var> is not null, return to step 3.
 
    <li>
-    <p>There is no <a href="#media8">media resource</a>. Abort these steps.
+    <p>There is no <a href="#media10">media resource</a>. Abort these steps.
 
    <li>
     <p>Let the address of the <dfn id=chosen>chosen media resource</dfn> be
@@ -15368,15 +15573,15 @@
 
   <p>The <dfn id=currentsrc
    title=dom-media-currentSrc><code>currentSrc</code></dfn> DOM attribute
-   must return the empty string if the <a href="#media5">media element</a>'s
+   must return the empty string if the <a href="#media7">media element</a>'s
    <code title=dom-media-networkState><a
    href="#networkstate">networkState</a></code> has the value <a
    href="#empty" title=dom-media-EMPTY>EMPTY</a>, and the absolute URL of the
    <a href="#chosen">chosen media resource</a> otherwise.
 
-  <h5 id=network0><span class=secno>3.12.9.3. </span>Network states</h5>
+  <h5 id=network0><span class=secno>3.12.10.3. </span>Network states</h5>
 
-  <p>As <a href="#media5" title="media element">media elements</a> interact
+  <p>As <a href="#media7" title="media element">media elements</a> interact
    with the network, they go through several states. The <dfn id=networkstate
    title=dom-media-networkState><code>networkState</code></dfn> attribute, on
    getting, must return the current network state of the element, which must
@@ -15411,14 +15616,14 @@
     title=dom-media-LOADED_FIRST_FRAME><code>LOADED_FIRST_FRAME</code></dfn>
     (numeric value 3)
 
-   <dd>Actual <a href="#media7">media data</a> has been obtained. In the case
+   <dd>Actual <a href="#media9">media data</a> has been obtained. In the case
     of video, this specifically means that a frame of video is available and
     can be shown.
 
    <dt><dfn id=loaded title=dom-media-LOADED><code>LOADED</code></dfn>
     (numeric value 4)
 
-   <dd>The entire <a href="#media8">media resource</a> has been obtained and
+   <dd>The entire <a href="#media10">media resource</a> has been obtained and
     is available to the user agent locally. Network connectivity could be
     lost without affecting the media playback.
   </dl>
@@ -15428,17 +15633,17 @@
    the <code title=dom-media-networkState><a
    href="#networkstate">networkState</a></code> attribute changes value.
 
-  <h5 id=loading><span class=secno>3.12.9.4. </span>Loading the media
+  <h5 id=loading><span class=secno>3.12.10.4. </span>Loading the media
    resource</h5>
 
-  <p>All <a href="#media5" title="media element">media elements</a> have a
+  <p>All <a href="#media7" title="media element">media elements</a> have a
    <dfn id=begun>begun flag</dfn>, which must begin in the false state, a
    <dfn id=loaded-first-frame>loaded-first-frame flag</dfn>, which must begin
    in the false state, and an <dfn id=autoplaying>autoplaying flag</dfn>,
    which must begin in the true state.
 
   <p>When the <dfn id=load title=dom-media-load><code>load()</code></dfn>
-   method on a <a href="#media5">media element</a> is invoked, the user agent
+   method on a <a href="#media7">media element</a> is invoked, the user agent
    must run the following steps. Note that this algorithm might get aborted,
    e.g. if the <code title=dom-media-load><a href="#load">load()</a></code>
    method itself is invoked again.
@@ -15459,7 +15664,7 @@
      href="#mediaerraborted">MEDIA_ERR_ABORTED</a></code>, and the user agent
      must synchronously <a href="#firing6">fire a progress event</a> called
      <code title=event-abort><a href="#abort">abort</a></code> at the <a
-     href="#media5">media element</a>.
+     href="#media7">media element</a>.
 
    <li>
     <p>The <code title=dom-media-error><a href="#error0">error</a></code>
@@ -15475,7 +15680,7 @@
      href="#defaultplaybackrate">defaultPlaybackRate</a></code> attribute.
 
    <li>
-    <p>If the <a href="#media5">media element</a>'s <code
+    <p>If the <a href="#media7">media element</a>'s <code
      title=dom-media-networkState><a
      href="#networkstate">networkState</a></code> is not set to <a
      href="#empty" title=dom-media-EMPTY>EMPTY</a>, then the following
@@ -15521,13 +15726,13 @@
 
      <li>The user agent must synchronously <a href="#firing2">fire a simple
       event</a> called <code title=event-emptied><a
-      href="#emptied">emptied</a></code> at the <a href="#media5">media
+      href="#emptied">emptied</a></code> at the <a href="#media7">media
       element</a>.
     </ol>
 
    <li>
     <p>The user agent must <a href="#pick-a">pick a media resource</a> for
-     the <a href="#media5">media element</a>. If that fails, the method must
+     the <a href="#media7">media element</a>. If that fails, the method must
      raise an <code>INVALID_STATE_ERR</code> exception, and abort these
      steps.
 
@@ -15544,17 +15749,17 @@
    <li>
     <p>The user agent must then set the <a href="#begun">begun flag</a> to
      true and <a href="#firing6">fire a progress event</a> called
-     <code>begin</code> at the <a href="#media5">media element</a>.
+     <code>begin</code> at the <a href="#media7">media element</a>.
 
    <li>
     <p>The method must return, but these steps must continue.
 
    <li>
-    <p class=note>Playback of any previously playing <a href="#media8">media
+    <p class=note>Playback of any previously playing <a href="#media10">media
      resource</a> for this element stops.
 
    <li>
-    <p>If a download is in progress for the <a href="#media5">media
+    <p>If a download is in progress for the <a href="#media7">media
      element</a>, the user agent should stop the download.
 
    <li>
@@ -15578,7 +15783,7 @@
      href="#stalled">stalled</a></code> at the element.</p>
 
     <p>User agents may allow users to selectively block or slow <a
-     href="#media7">media data</a> downloads. When a <a href="#media5">media
+     href="#media9">media data</a> downloads. When a <a href="#media7">media
      element</a>'s download has been blocked, the user agent must act as if
      it was stalled (as opposed to acting as if the connection was closed).</p>
 
@@ -15590,7 +15795,7 @@
      only if it has given up trying to download it.</p>
 
     <dl class=switch>
-     <dt>If the <a href="#media7">media data</a> cannot be downloaded at all,
+     <dt>If the <a href="#media9">media data</a> cannot be downloaded at all,
       due to network errors, causing the user agent to give up trying to
       download the resource
 
@@ -15613,7 +15818,7 @@
        <li>The <a href="#begun">begun flag</a> must be set to false and the
         user agent must <a href="#firing6">fire a progress event</a> called
         <code title=event-error><a href="#error1">error</a></code> at the <a
-        href="#media5">media element</a>.
+        href="#media7">media element</a>.
 
        <li>The element's <code title=dom-media-networkState><a
         href="#networkstate">networkState</a></code> attribute must be
@@ -15625,13 +15830,13 @@
        <li>These steps must be aborted.
       </ol>
 
-     <dt id=fatal-decode-error>If the <a href="#media7">media data</a> can be
+     <dt id=fatal-decode-error>If the <a href="#media9">media data</a> can be
       downloaded but is in an unsupported format, or can otherwise not be
       rendered at all
 
      <dd>
       <p>The server returning a file of the wrong kind (e.g. one that that
-       turns out to not be pure audio when the <a href="#media5">media
+       turns out to not be pure audio when the <a href="#media7">media
        element</a> is an <code><a href="#audio1">audio</a></code> element),
        or the file using unsupported codecs for all the data, must cause the
        user agent to execute the following steps. User agents may also
@@ -15652,7 +15857,7 @@
        <li>The <a href="#begun">begun flag</a> must be set to false and the
         user agent must <a href="#firing6">fire a progress event</a> called
         <code title=event-error><a href="#error1">error</a></code> at the <a
-        href="#media5">media element</a>.
+        href="#media7">media element</a>.
 
        <li>The element's <code title=dom-media-networkState><a
         href="#networkstate">networkState</a></code> attribute must be
@@ -15664,7 +15869,7 @@
        <li>These steps must be aborted.
       </ol>
 
-     <dt>If the <a href="#media7">media data</a> download is aborted by the
+     <dt>If the <a href="#media9">media data</a> download is aborted by the
       user
 
      <dd>
@@ -15687,9 +15892,9 @@
        <li>The <a href="#begun">begun flag</a> must be set to false and the
         user agent must <a href="#firing6">fire a progress event</a> called
         <code title=event-abort><a href="#abort">abort</a></code> at the <a
-        href="#media5">media element</a>.
+        href="#media7">media element</a>.
 
-       <li>If the <a href="#media5">media element</a>'s <code
+       <li>If the <a href="#media7">media element</a>'s <code
         title=dom-media-networkState><a
         href="#networkstate">networkState</a></code> attribute has the value
         <code title=dom-media-LOADING><a href="#loading0">LOADING</a></code>,
@@ -15708,7 +15913,7 @@
        <li>These steps must be aborted.
       </ol>
 
-     <dt id=non-fatal-media-error>If the <a href="#media7">media data</a> can
+     <dt id=non-fatal-media-error>If the <a href="#media9">media data</a> can
       be downloaded but has non-fatal errors or uses, in part, codecs that
       are unsupported, preventing the user agent from rendering the content
       completely correctly but not preventing playback altogether
@@ -15723,8 +15928,8 @@
         flag to 'MEDIA_ERR_SUBOPTIMAL' or something?
       </ol>
 
-     <dt>Once enough of the <a href="#media7">media data</a> has been
-      downloaded to determine the duration of the <a href="#media8">media
+     <dt>Once enough of the <a href="#media9">media data</a> has been
+      downloaded to determine the duration of the <a href="#media10">media
       resource</a>, its dimensions, and other metadata
 
      <dd>
@@ -15762,9 +15967,9 @@
       </ol>
 
      <dt id=handling-first-frame-available>Once enough of the <a
-      href="#media7">media data</a> has been downloaded to enable the user
+      href="#media9">media data</a> has been downloaded to enable the user
       agent to display the frame at the <a href="#effective">effective
-      start</a> of the <a href="#media8">media resource</a>
+      start</a> of the <a href="#media10">media resource</a>
 
      <dd>
       <p>The user agent must follow these substeps:</p>
@@ -15801,7 +16006,7 @@
     </dl>
 
     <p>When the user agent has completed the download of the entire <a
-     href="#media8">media resource</a>, it must move on to the next step.</p>
+     href="#media10">media resource</a>, it must move on to the next step.</p>
 
    <li>
     <p>If the download completes without errors, the <a href="#begun">begun
@@ -15812,13 +16017,13 @@
      <code title=event-load><a href="#load0">load</a></code> at the element.
   </ol>
 
-  <p>If a <a href="#media5">media element</a> whose <code
+  <p>If a <a href="#media7">media element</a> whose <code
    title=dom-media-networkState><a
    href="#networkstate">networkState</a></code> has the value <code
    title=dom-media-EMPTY><a href="#empty">EMPTY</a></code> is inserted into a
    document, user agents must implicitly invoke the <code
    title=dom-media-load><a href="#load">load()</a></code> method on the <a
-   href="#media5">media element</a> as soon as all other scripts have
+   href="#media7">media element</a> as soon as all other scripts have
    finished executing<!-- XXX phrase that better? -->. Any exceptions raised
    must be ignored.
 
@@ -15831,7 +16036,7 @@
   <p>The <dfn id=buffered
    title=dom-media-buffered><code>buffered</code></dfn> attribute must return
    a static <a href="#normalised">normalised <code>TimeRanges</code>
-   object</a> that represents the ranges of the <a href="#media8">media
+   object</a> that represents the ranges of the <a href="#media10">media
    resource</a>, if any, that the user agent has downloaded, at the time the
    attribute is evaluated.
 
@@ -15839,28 +16044,28 @@
    point, but if, e.g. the user agent uses HTTP range requests in response to
    seeking, then there could be multiple ranges.
 
-  <h5 id=offsets><span class=secno>3.12.9.5. </span>Offsets into the media
+  <h5 id=offsets><span class=secno>3.12.10.5. </span>Offsets into the media
    resource</h5>
 
   <p>The <dfn id=duration
    title=dom-media-duration><code>duration</code></dfn> attribute must return
-   the length of the <a href="#media8">media resource</a>, in seconds. If no
-   <a href="#media7">media data</a> is available, then the attributes must
-   return 0. If <a href="#media7">media data</a> is available but the length
+   the length of the <a href="#media10">media resource</a>, in seconds. If no
+   <a href="#media9">media data</a> is available, then the attributes must
+   return 0. If <a href="#media9">media data</a> is available but the length
    is not known, the attribute must return the Not-a-Number (NaN) value. If
-   the <a href="#media8">media resource</a> is known to be unbounded (e.g. a
+   the <a href="#media10">media resource</a> is known to be unbounded (e.g. a
    streaming radio), then the attribute must return the positive Infinity
    value.
 
-  <p>When the length of the <a href="#media8">media resource</a> changes
+  <p>When the length of the <a href="#media10">media resource</a> changes
    (e.g. from being unknown to known, or from indeterminate to known, or from
    a previously established length to a new length) the user agent must, once
    any running scripts have finished, <a href="#firing2">fire a simple
    event</a> called <code title=event-durationchange><a
    href="#durationchange">durationchange</a></code> at the <a
-   href="#media5">media element</a>.
+   href="#media7">media element</a>.
 
-  <p><a href="#media5" title="media element">Media elements</a> have a <dfn
+  <p><a href="#media7" title="media element">Media elements</a> have a <dfn
    id=current0>current playback position</dfn>, which must initially be zero.
    The current position is a time.
 
@@ -15872,20 +16077,20 @@
    exception).
 
   <p>The <dfn id=start2 title=attr-media-start><code>start</code></dfn>
-   content attribute gives the offset into the <a href="#media8">media
+   content attribute gives the offset into the <a href="#media10">media
    resource</a> at which playback is to begin. The default value is the
-   default start position of the <a href="#media8">media resource</a>, or 0
-   if not enough <a href="#media7">media data</a> has been obtained yet to
+   default start position of the <a href="#media10">media resource</a>, or 0
+   if not enough <a href="#media9">media data</a> has been obtained yet to
    determine the default start position or if the resource doesn't specify a
    default start position.
 
   <p>The <dfn id=effective><var>effective start</var></dfn> is the smaller of
    the <code title=dom-media-start><a href="#start3">start</a></code> DOM
-   attribute and the end of the <a href="#media8">media resource</a>.
+   attribute and the end of the <a href="#media10">media resource</a>.
 
   <p>The <dfn id=loopstart
    title=attr-media-loopstart><code>loopstart</code></dfn> content attribute
-   gives the offset into the <a href="#media8">media resource</a> at which
+   gives the offset into the <a href="#media10">media resource</a> at which
    playback is to begin when looping a clip. The default value of the <code
    title=attr-media-loopStart><a href="#loopstart">loopstart</a></code>
    content attribute is the value of the <code title=dom-media-start><a
@@ -15894,12 +16099,12 @@
   <p>The <dfn id=effective0><var>effective loop start</var></dfn> is the
    smaller of the <code title=dom-media-loopStart><a
    href="#loopstart0">loopStart</a></code> DOM attribute and the end of the
-   <a href="#media8">media resource</a>.
+   <a href="#media10">media resource</a>.
 
   <p>
 
   <p>The <dfn id=loopend title=attr-media-loopend><code>loopend</code></dfn>
-   content attribute gives an offset into the <a href="#media8">media
+   content attribute gives an offset into the <a href="#media10">media
    resource</a> at which playback is to jump back to the <code
    title=attr-media-loopstart><a href="#loopstart">loopstart</a></code>, when
    looping the clip. The default value of the <code
@@ -15913,20 +16118,20 @@
    href="#loopstart0">loopStart</a></code>, and <code
    title=dom-media-loopEnd><a href="#loopend0">loopEnd</a></code> DOM
    attributes, except if that is greater than the end of the <a
-   href="#media8">media resource</a>, in which case that's its value.
+   href="#media10">media resource</a>, in which case that's its value.
 
   <p>
 
   <p>The <dfn id=end title=attr-media-end><code>end</code></dfn> content
-   attribute gives an offset into the <a href="#media8">media resource</a> at
-   which playback is to end. The default value is infinity.
+   attribute gives an offset into the <a href="#media10">media resource</a>
+   at which playback is to end. The default value is infinity.
 
   <p>The <dfn id=effective2><var>effective end</var></dfn> is the greater of
    the <code title=dom-media-start><a href="#start3">start</a></code>, <code
    title=dom-media-loopStart><a href="#loopstart0">loopStart</a></code>, and
    <code title=dom-media-loopEnd><a href="#loopend0">end</a></code> DOM
    attributes, except if that is greater than the end of the <a
-   href="#media8">media resource</a>, in which case that's its value.
+   href="#media10">media resource</a>, in which case that's its value.
 
   <p>
 
@@ -15948,7 +16153,7 @@
    href="#loopstart">loopstart</a></code>, <code title=attr-media-loopend><a
    href="#loopend">loopend</a></code>, and <code title=attr-media-end><a
    href="#end">end</a></code> content attributes on the <a
-   href="#media5">media element</a> respectively.
+   href="#media7">media element</a> respectively.
 
   <p>The <dfn id=playcount
    title=attr-media-playcount><code>playcount</code></dfn> content attribute
@@ -15958,7 +16163,7 @@
    title=dom-media-playCount><code>playCount</code></dfn> DOM attribute must
    <a href="#reflect">reflect</a> the <code title=attr-media-playcount><a
    href="#playcount">playcount</a></code> content attribute on the <a
-   href="#media5">media element</a>. The value must be <a
+   href="#media7">media element</a>. The value must be <a
    href="#limited1">limited to only positive non-zero numbers</a>.
 
   <p>The <dfn id=currentloop
@@ -15989,7 +16194,7 @@
      current loop the last loop).
 
    <li>
-    <p>If the <a href="#media5">media element</a>'s <code
+    <p>If the <a href="#media7">media element</a>'s <code
      title=dom-media-networkState><a
      href="#networkstate">networkState</a></code> is in the <code
      title=dom-media-EMPTY><a href="#empty">EMPTY</a></code> state or the
@@ -16036,9 +16241,9 @@
      end.
   </ol>
 
-  <h5 id=the-ready><span class=secno>3.12.9.6. </span>The ready states</h5>
+  <h5 id=the-ready><span class=secno>3.12.10.6. </span>The ready states</h5>
 
-  <p><a href="#media5" title="media element">Media elements</a> have a
+  <p><a href="#media7" title="media element">Media elements</a> have a
    <em>ready state</em>, which describes to what degree they are ready to be
    rendered at the <a href="#current0">current playback position</a>. The
    possible values are as follows; the ready state of a media element at any
@@ -16050,7 +16255,7 @@
     (numeric value 0)
 
    <dd>No data for the <a href="#current0">current playback position</a> is
-    available. <a href="#media5" title="media element">Media elements</a>
+    available. <a href="#media7" title="media element">Media elements</a>
     whose <code title=dom-media-networkState><a
     href="#networkstate">networkState</a></code> attribute is less than <code
     title=dom-media-LOADED_FIRST_FRAME><a
@@ -16102,12 +16307,12 @@
     title=dom-media-defaultPlaybackRate><a
     href="#defaultplaybackrate">defaultPlaybackRate</a></code> attribute,
     would not overtake the available data before playback reaches the <a
-    href="#effective2">effective end</a> of the <a href="#media8">media
+    href="#effective2">effective end</a> of the <a href="#media10">media
     resource</a> on the last <a href="#playcount0"
     title=dom-media-playCount>loop</a>.
   </dl>
 
-  <p>When the ready state of a <a href="#media5">media element</a> whose
+  <p>When the ready state of a <a href="#media7">media element</a> whose
    <code title=dom-media-networkState><a
    href="#networkstate">networkState</a></code> is not <code
    title=dom-media-EMPTY><a href="#empty">EMPTY</a></code> changes, the user
@@ -16156,7 +16361,7 @@
      href="#canplaythrough0">canplaythrough</a></code> event. If the <a
      href="#autoplaying">autoplaying flag</a> is true, and the <code
      title=dom-media-paused><a href="#paused">paused</a></code> attribute is
-     true, and the <a href="#media5">media element</a> has an <code
+     true, and the <a href="#media7">media element</a> has an <code
      title=attr-media-autoplay><a href="#autoplay">autoplay</a></code>
      attribute specified, then the user agent must also set the <code
      title=dom-media-paused><a href="#paused">paused</a></code> attribute to
@@ -16186,27 +16391,27 @@
   <p>The <dfn id=readystate0
    title=dom-media-readyState><code>readyState</code></dfn> DOM attribute
    must, on getting, return the value described above that describes the
-   current ready state of the <a href="#media5">media element</a>.
+   current ready state of the <a href="#media7">media element</a>.
 
   <p>The <dfn id=autoplay
    title=attr-media-autoplay><code>autoplay</code></dfn> attribute is a <a
    href="#boolean0">boolean attribute</a>. When present, the algorithm
    described herein will cause the user agent to automatically begin playback
-   of the <a href="#media8">media resource</a> as soon as it can do so
+   of the <a href="#media10">media resource</a> as soon as it can do so
    without stopping.
 
   <p>The <dfn id=autoplay0
    title=dom-media-autoplay><code>autoplay</code></dfn> DOM attribute must <a
    href="#reflect">reflect</a> the content attribute of the same name.
 
-  <h5 id=playing><span class=secno>3.12.9.7. </span>Playing the media
+  <h5 id=playing><span class=secno>3.12.10.7. </span>Playing the media
    resource</h5>
 
   <p>The <dfn id=paused title=dom-media-paused><code>paused</code></dfn>
-   attribute represents whether the <a href="#media5">media element</a> is
+   attribute represents whether the <a href="#media7">media element</a> is
    paused or not. The attribute must initially be true.
 
-  <p>A <a href="#media5">media element</a> is said to be <dfn
+  <p>A <a href="#media7">media element</a> is said to be <dfn
    id=actively>actively playing</dfn> when its <code
    title=dom-media-paused><a href="#paused">paused</a></code> attribute is
    false, the <code title=dom-media-readyState><a
@@ -16218,31 +16423,31 @@
    href="#stopped">stopped due to errors</a>, and the element has not <a
    href="#paused0">paused for user interaction</a>.
 
-  <p>A <a href="#media5">media element</a> is said to have <dfn
+  <p>A <a href="#media7">media element</a> is said to have <dfn
    id=ended>ended playback</dfn> when the element's <code
    title=dom-media-networkState><a
    href="#networkstate">networkState</a></code> attribute is <code
    title=dom-media-LOADED_METADATA><a
    href="#loadedmetadata">LOADED_METADATA</a></code> or greater, the <a
    href="#current0">current playback position</a> is equal to the <var><a
-   href="#effective2">effective end</a></var> of the <a href="#media8">media
+   href="#effective2">effective end</a></var> of the <a href="#media10">media
    resource</a>, and the <code title=dom-media-currentLoop><a
    href="#currentloop">currentLoop</a></code> attribute is equal to
    <span><code title=dom-media-playCount><a
    href="#playcount0">playCount</a></code>-1</span>.
 
-  <p>A <a href="#media5">media element</a> is said to have <dfn
+  <p>A <a href="#media7">media element</a> is said to have <dfn
    id=stopped>stopped due to errors</dfn> when the element's <code
    title=dom-media-networkState><a
    href="#networkstate">networkState</a></code> attribute is <code
    title=dom-media-LOADED_METADATA><a
    href="#loadedmetadata">LOADED_METADATA</a></code> or greater, and the user
    agent <a href="#non-fatal-media-error">encounters a non-fatal error</a>
-   during the processing of the <a href="#media7">media data</a>, and due to
+   during the processing of the <a href="#media9">media data</a>, and due to
    that error, is not able to play the content at the <a
    href="#current0">current playback position</a>.
 
-  <p>A <a href="#media5">media element</a> is said to have <dfn
+  <p>A <a href="#media7">media element</a> is said to have <dfn
    id=paused0>paused for user interaction</dfn> when its <code
    title=dom-media-paused><a href="#paused">paused</a></code> attribute is
    false, the <code title=dom-media-readyState><a
@@ -16250,14 +16455,14 @@
    title=dom-media-CAN_PLAY><a href="#canplay">CAN_PLAY</a></code> or <code
    title=dom-media-CAN_PLAY_THROUGH><a
    href="#canplaythrough">CAN_PLAY_THROUGH</a></code> and the user agent has
-   reached a point in the <a href="#media8">media resource</a> where the user
-   has to make a selection for the resource to continue.
+   reached a point in the <a href="#media10">media resource</a> where the
+   user has to make a selection for the resource to continue.
 
-  <p>It is possible for a <a href="#media5">media element</a> to have both <a
+  <p>It is possible for a <a href="#media7">media element</a> to have both <a
    href="#ended">ended playback</a> and <a href="#paused0">paused for user
    interaction</a> at the same time.
 
-  <p id=media-playback>When a <a href="#media5">media element</a> is <a
+  <p id=media-playback>When a <a href="#media7">media element</a> is <a
    href="#actively">actively playing</a> and its <span
    title=dom-ownerDocument>owner <code>Document</code></span><!-- XXX
   xref -->
@@ -16266,18 +16471,18 @@
    at <code title=dom-media-playbackRate><a
    href="#playbackrate">playbackRate</a></code> units of media time per unit
    time of wall clock time. If this value is not 1, the user agent may apply
-   pitch adjustments to any audio component of the <a href="#media8">media
+   pitch adjustments to any audio component of the <a href="#media10">media
    resource</a>.
 
-  <p><a href="#media8" title="media resource">Media resources</a> might be
-   internally scripted or interactive. Thus, a <a href="#media5">media
+  <p><a href="#media10" title="media resource">Media resources</a> might be
+   internally scripted or interactive. Thus, a <a href="#media7">media
    element</a> could play in a non-linear fashion. If this happens, the user
    agent must act as if the algorithm for <a href="#seek"
    title=dom-media-seek>seeking</a> was used whenever the <a
    href="#current0">current playback position</a> changes in a discontinuous
    fashion (so that the relevant events fire).
 
-  <p>When a <a href="#media5">media element</a> that is <a
+  <p>When a <a href="#media7">media element</a> that is <a
    href="#actively">actively playing</a> stops playing because its <code
    title=dom-media-readyState><a href="#readystate0">readyState</a></code>
    attribute changes to a value lower than <code title=dom-media-CAN_PLAY><a
@@ -16291,7 +16496,7 @@
    <code title=event-waiting><a href="#waiting">waiting</a></code> at the
    element.
 
-  <p>When a <a href="#media5">media element</a> that is <a
+  <p>When a <a href="#media7">media element</a> that is <a
    href="#actively">actively playing</a> stops playing because it has <a
    href="#paused0">paused for user interaction</a>, the user agent must <a
    href="#firing2">fire a simple event</a> called <code
@@ -16339,7 +16544,7 @@
 
   <p>The <dfn id=defaultplaybackrate
    title=dom-media-defaultPlaybackRate><code>defaultPlaybackRate</code></dfn>
-   attribute gives the desired speed at which the <a href="#media8">media
+   attribute gives the desired speed at which the <a href="#media10">media
    resource</a> is to play, as a multiple of its intrinsic speed. The
    attribute is mutable, but on setting, if the new value is 0.0, a
    <code>NOT_SUPPORTED_ERR</code> exception must be raised instead of the
@@ -16347,7 +16552,7 @@
 
   <p>The <dfn id=playbackrate
    title=dom-media-playbackRate><code>playbackRate</code></dfn> attribute
-   gives the speed at which the <a href="#media8">media resource</a> plays,
+   gives the speed at which the <a href="#media10">media resource</a> plays,
    as a multiple of its intrinsic speed. If it is not equal to the <code
    title=dom-media-defaultPlaybackRate><a
    href="#defaultplaybackrate">defaultPlaybackRate</a></code>, then the
@@ -16366,15 +16571,15 @@
    agent, e.g. in response to user control) the user agent must, once any
    running scripts have finished, <a href="#firing2">fire a simple event</a>
    called <code title=event-ratechange>ratechange</code> at the <a
-   href="#media5">media element</a>.
+   href="#media7">media element</a>.
 
   <p>When the <dfn id=play title=dom-media-play><code>play()</code></dfn>
-   method on a <a href="#media5">media element</a> is invoked, the user agent
+   method on a <a href="#media7">media element</a> is invoked, the user agent
    must run the following steps.
 
   <ol>
    <li>
-    <p>If the <a href="#media5">media element</a>'s <code
+    <p>If the <a href="#media7">media element</a>'s <code
      title=dom-media-networkState><a
      href="#networkstate">networkState</a></code> attribute has the value <a
      href="#empty" title=dom-media-EMPTY>EMPTY</a>, then the user agent must
@@ -16397,12 +16602,12 @@
      href="#defaultplaybackrate">defaultPlaybackRate</a></code> attribute.
 
    <li>
-    <p>If the <a href="#media5">media element</a>'s <code
+    <p>If the <a href="#media7">media element</a>'s <code
      title=dom-media-paused><a href="#paused">paused</a></code> attribute is
      true, it must be set to false.
 
    <li>
-    <p>The <a href="#media5">media element</a>'s <a
+    <p>The <a href="#media7">media element</a>'s <a
      href="#autoplaying">autoplaying flag</a> must be set to false.
 
    <li>
@@ -16412,27 +16617,27 @@
   <p class=note>If the second step above involved a seek, the user agent will
    <a href="#firing2">fire a simple event</a> called <code
    title=event-timeupdate><a href="#timeupdate">timeupdate</a></code> at the
-   <a href="#media5">media element</a>.
+   <a href="#media7">media element</a>.
 
   <p class=note>If the third step above caused the <code
    title=dom-media-playbackRate><a
    href="#playbackrate">playbackRate</a></code> attribute to change value,
    the user agent will <a href="#firing2">fire a simple event</a> called
    <code title=event-ratechange>ratechange</code> at the <a
-   href="#media5">media element</a>.
+   href="#media7">media element</a>.
 
   <p class=note>If the fourth step above changed the value of <code
    title=dom-media-paused><a href="#paused">paused</a></code>, the user agent
    must <a href="#firing2">fire a simple event</a> called <code
    title=event-play><a href="#play0">play</a></code> at the <a
-   href="#media5">media element</a>.
+   href="#media7">media element</a>.
 
   <p>When the <dfn id=pause0 title=dom-media-pause><code>pause()</code></dfn>
    method is invoked, the user agent must run the following steps:
 
   <ol>
    <li>
-    <p>If the <a href="#media5">media element</a>'s <code
+    <p>If the <a href="#media7">media element</a>'s <code
      title=dom-media-networkState><a
      href="#networkstate">networkState</a></code> attribute has the value <a
      href="#empty" title=dom-media-EMPTY>EMPTY</a>, then the user agent must
@@ -16442,12 +16647,12 @@
      href="#play">pause()</a></code> method.
 
    <li>
-    <p>If the <a href="#media5">media element</a>'s <code
+    <p>If the <a href="#media7">media element</a>'s <code
      title=dom-media-paused><a href="#paused">paused</a></code> attribute is
      false, it must be set to true.
 
    <li>
-    <p>The <a href="#media5">media element</a>'s <a
+    <p>The <a href="#media7">media element</a>'s <a
      href="#autoplaying">autoplaying flag</a> must be set to false.
 
    <li>
@@ -16463,12 +16668,12 @@
      element.
   </ol>
 
-  <p>When a <a href="#media5">media element</a> is <span>removed from a
+  <p>When a <a href="#media7">media element</a> is <span>removed from a
    <code>Document</code><!-- XXX xref removed --></span>, the user agent must
    act as if the <code title=dom-media-pause><a
    href="#pause0">pause()</a></code> method had been invoked.
 
-  <p><a href="#media5" title="media element">Media elements</a> that are <a
+  <p><a href="#media7" title="media element">Media elements</a> that are <a
    href="#actively">actively playing</a> while not <span>in a
    <code>Document</code></span><!-- XXX xref --> must not play any video, but
    should play any audio component. Media elements must not stop playing just
@@ -16478,34 +16683,34 @@
    paused or because the end of the clip has been reached) may the element be
    <span>garbage collected</span><!-- XXX xref -->.
 
-  <p class=note>If the <a href="#media5">media element</a>'s <code
+  <p class=note>If the <a href="#media7">media element</a>'s <code
    title=dom-ownerDocument>ownerDocument</code> stops being an active
    document, then the playback will <a href="#media-playback">stop</a> until
    the document is active again.
 
   <p>The <dfn id=ended0 title=dom-media-ended><code>ended</code></dfn>
-   attribute must return true if the <a href="#media5">media element</a> has
+   attribute must return true if the <a href="#media7">media element</a> has
    <a href="#ended">ended playback</a>, and false otherwise.
 
   <p>The <dfn id=played title=dom-media-played><code>played</code></dfn>
    attribute must return a static <a href="#normalised">normalised
    <code>TimeRanges</code> object</a> that represents the ranges of the <a
-   href="#media8">media resource</a>, if any, that the user agent has so far
+   href="#media10">media resource</a>, if any, that the user agent has so far
    rendered, at the time the attribute is evaluated.
 
-  <h5 id=seeking><span class=secno>3.12.9.8. </span>Seeking</h5>
+  <h5 id=seeking><span class=secno>3.12.10.8. </span>Seeking</h5>
 
   <p>The <dfn id=seeking0 title=dom-media-seeking><code>seeking</code></dfn>
    attribute must initially have the value false.
 
   <p>When the user agent is required to <dfn id=seek
    title=dom-media-seek>seek</dfn> to a particular <var title="">new playback
-   position</var> in the <a href="#media8">media resource</a>, it means that
+   position</var> in the <a href="#media10">media resource</a>, it means that
    the user agent must run the following steps:
 
   <ol>
    <li>
-    <p>If the <a href="#media5">media element</a>'s <code
+    <p>If the <a href="#media7">media element</a>'s <code
      title=dom-media-networkState><a
      href="#networkstate">networkState</a></code> is less than <code
      title=dom-media-LOADED_METADATA><a
@@ -16560,7 +16765,7 @@
 
    <li>
     <p>As soon as the user agent has established whether or not the <a
-     href="#media7">media data</a> for the <var title="">new playback
+     href="#media9">media data</a> for the <var title="">new playback
      position</var> is available, and, if it is, decoded enough data to play
      back that position, the <code title=dom-media-seeking><a
      href="#seeking0">seeking</a></code> DOM attribute must be set to false.
@@ -16569,7 +16774,7 @@
   <p>The <dfn id=seekable
    title=dom-media-seekable><code>seekable</code></dfn> attribute must return
    a static <a href="#normalised">normalised <code>TimeRanges</code>
-   object</a> that represents the ranges of the <a href="#media8">media
+   object</a> that represents the ranges of the <a href="#media10">media
    resource</a>, if any, that the user agent is able to seek to, at the time
    the attribute is evaluated, notwithstanding the looping attributes (i.e.
    the <var><a href="#effective">effective start</a></var> and <var><a
@@ -16578,17 +16783,17 @@
    attribute).
 
   <p class=note>If the user agent can seek to anywhere in the <a
-   href="#media8">media resource</a>, e.g. because it a simple movie file and
-   the user agent and the server support HTTP Range requests, then the
+   href="#media10">media resource</a>, e.g. because it a simple movie file
+   and the user agent and the server support HTTP Range requests, then the
    attribute would return an object with one range, whose start is the time
    of the first frame (typically zero), and whose end is the same as the time
    of the first frame plus the <code title=dom-media-duration><a
    href="#duration">duration</a></code> attribute's value (which would equal
    the time of the last frame).
 
-  <h5 id=cue-ranges><span class=secno>3.12.9.9. </span>Cue ranges</h5>
+  <h5 id=cue-ranges><span class=secno>3.12.10.9. </span>Cue ranges</h5>
 
-  <p><a href="#media5" title="media element">Media elements</a> have a set of
+  <p><a href="#media7" title="media element">Media elements</a> have a set of
    <dfn id=cue-ranges0 title="cue range">cue ranges</dfn>. Each cue range is
    made up of the following information:
 
@@ -16603,7 +16808,7 @@
    <dt>An end time
 
    <dd>The actual time range, using the same timeline as the <a
-    href="#media8">media resource</a> itself.
+    href="#media10">media resource</a> itself.
 
    <dt>A "pause" boolean
 
@@ -16630,7 +16835,7 @@
    title="">end</var>, <var title="">pauseOnExit</var>, <var
    title="">enterCallback</var>, <var
    title="">exitCallback</var>)</code></dfn> method must, when called, add a
-   <a href="#cue-ranges0">cue range</a> to the <a href="#media5">media
+   <a href="#cue-ranges0">cue range</a> to the <a href="#media7">media
    element</a>, that cue range having the class name <var
    title="">className</var>, the start time <var title="">start</var> (in
    seconds), the end time <var title="">end</var> (in seconds), the "pause"
@@ -16645,11 +16850,11 @@
    title=dom-media-removeCueRanges><code>removeCueRanges(<var
    title="">className</var>)</code></dfn> method must, when called, remove
    all the <a href="#cue-ranges0" title="cue range">cue ranges</a> of the <a
-   href="#media5">media element</a> which have the class name <var
+   href="#media7">media element</a> which have the class name <var
    title="">className</var>.
 
   <p>When the <a href="#current0">current playback position</a> of a <a
-   href="#media5">media element</a> changes (e.g. due to playback or
+   href="#media7">media element</a> changes (e.g. due to playback or
    seeking), the user agent must run the following steps. If the <a
    href="#current0">current playback position</a> changes while the steps are
    running, then the user agent must wait for the steps to complete, and then
@@ -16663,7 +16868,7 @@
     <p>Let <var title="">current ranges</var> be an ordered list of <a
      href="#cue-ranges0" title="cue range">cue ranges</a>, initialised to
      contain all the <a href="#cue-ranges0" title="cue range">cue ranges</a>
-     of the <a href="#media5">media element</a> whose start times are less
+     of the <a href="#media7">media element</a> whose start times are less
      than or equal to the <a href="#current0">current playback position</a>
      and whose end times are greater than the <a href="#current0">current
      playback position</a>, in the order they were added to the element.
@@ -16672,7 +16877,7 @@
     <p>Let <var title="">other ranges</var> be an ordered list of <a
      href="#cue-ranges0" title="cue range">cue ranges</a>, initialised to
      contain all the <a href="#cue-ranges0" title="cue range">cue ranges</a>
-     of the <a href="#media5">media element</a> that are not present in <var
+     of the <a href="#media7">media element</a> that are not present in <var
      title="">current ranges</var>, in the order they were added to the
      element.
 
@@ -16744,7 +16949,7 @@
    href="#voidcallback">VoidCallback</a></code> interface is the entrypoint
    for the callback represented by the object.
 
-  <h5 id=user-interface><span class=secno>3.12.9.10. </span>User interface</h5>
+  <h5 id=user-interface><span class=secno>3.12.10.10. </span>User interface</h5>
 
   <p>The <dfn id=controls
    title=attr-media-controls><code>controls</code></dfn> attribute is a <a
@@ -16765,7 +16970,7 @@
   <p>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="#media5">media
+   example, such features could be exposed in the <a href="#media7">media
    element</a>'s context menu.
 
   <p>Where possible (specifically, for starting, stopping, pausing, and
@@ -16780,7 +16985,7 @@
 
   <p>The <dfn id=volume title=dom-media-volume><code>volume</code></dfn>
    attribute must return the playback volume of any audio portions of the <a
-   href="#media5">media element</a>, in the range 0.0 (silent) to 1.0
+   href="#media7">media element</a>, in the range 0.0 (silent) to 1.0
    (loudest). Initially, the volume must be 0.5, but user agents may remember
    the last set value across sessions, on a per-site basis or otherwise, so
    the volume may start at other values. On setting, if the new value is in
@@ -16797,7 +17002,7 @@
   <p>The <dfn id=muted title=dom-media-muted><code>muted</code></dfn>
    attribute must return true if the audio channels are muted and false
    otherwise. On setting, the attribute must be set to the new value; if the
-   new value is true, audio playback for this <a href="#media8">media
+   new value is true, audio playback for this <a href="#media10">media
    resource</a> must then be muted, and if false, audio playback must then be
    enabled.
 
@@ -16807,9 +17012,9 @@
    scripts have finished executing, the user agent must <a
    href="#firing2">fire a simple event</a> called <code
    title=event-volumechange><a href="#volumechange">volumechange</a></code>
-   at the <a href="#media5">media element</a>.
+   at the <a href="#media7">media element</a>.
 
-  <h5 id=time-range><span class=secno>3.12.9.11. </span>Time range</h5>
+  <h5 id=time-range><span class=secno>3.12.10.11. </span>Time range</h5>
 
   <p>Objects implementing the <code><a
    href="#timeranges">TimeRanges</a></code> interface represent a list of
@@ -16857,12 +17062,12 @@
    title=dom-media-buffered><a href="#buffered">buffered</a></code>, <code
    title=dom-media-seekable><a href="#seekable">seekable</a></code> and <code
    title=dom-media-played><a href="#played">played</a></code> DOM attributes
-   of <a href="#media5" title="media element">media elements</a> must be the
-   same as that element's <a href="#media8">media resource</a>'s timeline.
+   of <a href="#media7" title="media element">media elements</a> must be the
+   same as that element's <a href="#media10">media resource</a>'s timeline.
 
-  <h5 id=mediaevents><span class=secno>3.12.9.12. </span>Event summary</h5>
+  <h5 id=mediaevents><span class=secno>3.12.10.12. </span>Event summary</h5>
 
-  <p>The following events fire on <a href="#media5" title="media
+  <p>The following events fire on <a href="#media7" title="media
    element">media elements</a> as part of the processing model described
    above:
 
@@ -16883,7 +17088,7 @@
 
      <td><code>ProgressEvent</code> <a href="#refsPROGRESS">[PROGRESS]</a>
 
-     <td>The user agent begins fetching the <a href="#media7">media data</a>,
+     <td>The user agent begins fetching the <a href="#media9">media data</a>,
       synchronously during the <code title=dom-media-load><a
       href="#load">load()</a></code> method call.
 
@@ -16896,7 +17101,7 @@
 
      <td><code>ProgressEvent</code> <a href="#refsPROGRESS">[PROGRESS]</a>
 
-     <td>The user agent is fetching <a href="#media7">media data</a>.
+     <td>The user agent is fetching <a href="#media9">media data</a>.
 
      <td><code title=dom-media-networkState><a
       href="#networkstate">networkState</a></code> is more than <code
@@ -16909,9 +17114,9 @@
 
      <td><code>Event</code>
 
-     <td>The user agent is fetching <a href="#media7">media data</a>, and the
-      <a href="#media8">media resource</a>'s metadata has just been received.
-      
+     <td>The user agent is fetching <a href="#media9">media data</a>, and the
+      <a href="#media10">media resource</a>'s metadata has just been
+      received.
 
      <td><code title=dom-media-networkState><a
       href="#networkstate">networkState</a></code> equals <code
@@ -16924,8 +17129,8 @@
 
      <td><code>Event</code>
 
-     <td>The user agent is fetching <a href="#media7">media data</a>, and the
-      <a href="#media8">media resource</a>'s first frame has just been
+     <td>The user agent is fetching <a href="#media9">media data</a>, and the
+      <a href="#media10">media resource</a>'s first frame has just been
       received.
 
      <td><code title=dom-media-networkState><a
@@ -16939,7 +17144,7 @@
      <td><code>ProgressEvent</code> <a href="#refsPROGRESS">[PROGRESS]</a>
 
      <td>The user agent finishes downloading the entire <a
-      href="#media8">media resource</a>.
+      href="#media10">media resource</a>.
 
      <td><code title=dom-media-networkState><a
       href="#networkstate">networkState</a></code> equals <code
@@ -16950,7 +17155,7 @@
 
      <td><code>ProgressEvent</code> <a href="#refsPROGRESS">[PROGRESS]</a>
 
-     <td>The user agent stops fetching the <a href="#media7">media data</a>
+     <td>The user agent stops fetching the <a href="#media9">media data</a>
       before it is completely downloaded. This can be fired synchronously
       during the <code title=dom-media-load><a href="#load">load()</a></code>
       method call.
@@ -16969,7 +17174,7 @@
 
      <td><code>ProgressEvent</code> <a href="#refsPROGRESS">[PROGRESS]</a>
 
-     <td>An error occurs while fetching the <a href="#media7">media data</a>.
+     <td>An error occurs while fetching the <a href="#media9">media data</a>.
       
 
      <td><code title=dom-media-error><a href="#error0">error</a></code> is an
@@ -16986,7 +17191,7 @@
 
      <td><code>Event</code>
 
-     <td>A <a href="#media5">media element</a> whose <code
+     <td>A <a href="#media7">media element</a> whose <code
       title=dom-media-networkState><a
       href="#networkstate">networkState</a></code> was previously not in the
       <code title=dom-media-EMPTY><a href="#empty">EMPTY</a></code> state has
@@ -17006,7 +17211,7 @@
 
      <td><code>ProgressEvent</code>
 
-     <td>The user agent is trying to fetch <a href="#media7">media data</a>,
+     <td>The user agent is trying to fetch <a href="#media9">media data</a>,
       but data is unexpectedly not forthcoming.
 
      <td>
@@ -17076,7 +17281,7 @@
 
      <td><code>Event</code>
 
-     <td>Playback has stopped because the end of the <a href="#media8">media
+     <td>Playback has stopped because the end of the <a href="#media10">media
       resource</a> was reached.
 
      <td><code title=dom-media-currentTime><a
@@ -17118,9 +17323,9 @@
 
      <td><code>Event</code>
 
-     <td>The user agent can resume playback of the <a href="#media7">media
+     <td>The user agent can resume playback of the <a href="#media9">media
       data</a>, but estimates that if playback were to be started now, the <a
-      href="#media8">media resource</a> could not be rendered at the current
+      href="#media10">media resource</a> could not be rendered at the current
       playback rate up to its end without having to stop for further
       buffering of content.
 
@@ -17135,7 +17340,7 @@
      <td><code>Event</code>
 
      <td>The user agent estimates that if playback were to be started now,
-      the <a href="#media8">media resource</a> could be rendered at the
+      the <a href="#media10">media resource</a> could be rendered at the
       current playback rate all the way to its end without having to stop for
       further buffering.
 
@@ -17183,7 +17388,7 @@
      <td>
   </table>
 
-  <h5 id=security0><span class=secno>3.12.9.13. </span>Security and privacy
+  <h5 id=security0><span class=secno>3.12.10.13. </span>Security and privacy
    considerations</h5>
 
   <p class=big-issue>Talk about making sure interactive media files (e.g.
@@ -17191,210 +17396,6 @@
    not exposing any sensitive data like metadata from tracks in the media
    files (intranet snooping risk)
 
-  <h4 id=the-source><span class=secno>3.12.10 </span>The <dfn
-   id=source><code>source</code></dfn> element</h4>
-
-  <dl class=element>
-   <dt>Categories
-
-   <dd>None.
-
-   <dt>Contexts in which this element may be used:
-
-   <dd>As a child of a <a href="#media5">media element</a>, before any <a
-    href="#flow-content0">flow content</a>.
-
-   <dt>Content model:
-
-   <dd>Empty.
-
-   <dt>Element-specific attributes:
-
-   <dd><code title=attr-source-src><a href="#src7">src</a></code>
-
-   <dd><code title=attr-source-type><a href="#type8">type</a></code>
-
-   <dd><code title=attr-source-media><a href="#media9">media</a></code>
-
-   <dt>DOM interface:
-
-   <dd>
-    <pre
-     class=idl>interface <dfn id=htmlsourceelement>HTMLSourceElement</dfn> : <a href="#htmlelement">HTMLElement</a> {
-           attribute DOMString <a href="#src8" title=dom-source-src>src</a>;
-           attribute DOMString <a href="#type9" title=dom-source-type>type</a>;
-           attribute DOMString <a href="#media10" title=dom-source-media>media</a>;
-};</pre>
-  </dl>
-
-  <p>The <code><a href="#source">source</a></code> element allows authors to
-   specify multiple <a href="#media8" title="media resource">media
-   resources</a> for <a href="#media5" title="media element">media
-   elements</a>.
-
-  <p>The <dfn id=src7 title=attr-source-src><code>src</code></dfn> attribute
-   gives the address of the <a href="#media8">media resource</a>. The value
-   must be a URI (or IRI). This attribute must be present.
-
-  <p>The <dfn id=type8 title=attr-source-type><code>type</code></dfn>
-   attribute gives the type of the <a href="#media8">media resource</a>, to
-   help the user agent determine if it can play this <a href="#media8">media
-   resource</a> before downloading it. Its value must be a MIME type. The
-   <code title="">codecs</code> parameter may be specified and might be
-   necessary to specify exactly how the resource is encoded. <a
-   href="#refsRFC2046">[RFC2046]</a> <a href="#refsRFC4281">[RFC4281]</a>
-
-  <div class=example>
-   <p>The following list shows some examples of how to use the <code
-    title="">codecs=</code> MIME parameter in the <code
-    title=attr-source-type><a href="#type8">type</a></code> attribute.</p>
-
-   <dl>
-    <dt>H.264 Simple baseline profile video (main and extended video
-     compatible) level 3 and Low-Complexity AAC audio in MP4 container
-
-    <dd>
-     <pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.42E01E, mp4a.40.2&quot;"></pre>
-
-    <dt>H.264 Extended profile video (baseline-compatible) level 3 and
-     Low-Complexity AAC audio in MP4 container
-
-    <dd>
-     <pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.58A01E, mp4a.40.2&quot;"></pre>
-
-    <dt>H.264 Main profile video level 3 and Low-Complexity AAC audio in MP4
-     container
-
-    <dd>
-     <pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.4D401E, mp4a.40.2&quot;"></pre>
-
-    <dt>H.264 "High" profile video (incompatible with main, baseline, or
-     extended profiles) level 3 and Low-Complexity AAC audio in MP4 container
-
-    <dd>
-     <pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.64001E, mp4a.40.2&quot;"></pre>
-
-    <dt>MPEG-4 Visual Simple Profile Level 0 video and Low-Complexity AAC
-     audio in MP4 container
-
-    <dd>
-     <pre><source src="video.mp4" type="video/mp4; codecs=&quot;mp4v.20.8, mp4a.40.2&quot;"></pre>
-
-    <dt>MPEG-4 Advanced Simple Profile Level 0 video and Low-Complexity AAC
-     audio in MP4 container
-
-    <dd>
-     <pre><source src="video.mp4" type="video/mp4; codecs=&quot;mp4v.20.240, mp4a.40.2&quot;"></pre>
-
-    <dt>MPEG-4 Visual Simple Profile Level 0 video and AMR audio in 3GPP
-     container
-
-    <dd>
-     <pre><source src="video.3gp" type="video/3gpp; codecs=&quot;mp4v.20.8, samr&quot;"></pre>
-
-    <dt>Theora video and Vorbis audio in Ogg container
-
-    <dd>
-     <pre><source src="video.ogv" type="video/ogg; codecs=&quot;theora, vorbis&quot;"></pre>
-
-    <dt>Theora video and Speex audio in Ogg container
-
-    <dd>
-     <pre><source src="video.ogv" type="video/ogg; codecs=&quot;theora, speex&quot;"></pre>
-
-    <dt>Vorbis audio alone in Ogg container
-
-    <dd>
-     <pre><source src="audio.oga" type="audio/ogg; codecs=vorbis"></pre>
-    </dd>
-    <!-- you also see .ogg but .oga is preferred -->
-
-    <dt>Speex audio alone in Ogg container
-
-    <dd>
-     <pre><source src="audio.oga" type="audio/ogg; codecs=speex"></pre>
-    </dd>
-    <!-- you also see .spx but .oga is preferred -->
-
-    <dt>Flac audio alone in Ogg container
-
-    <dd>
-     <pre><source src="audio.oga" type="audio/ogg; codecs=flac"></pre>
-
-    <dt>Dirac video and Vorbis audio in Ogg container
-
-    <dd>
-     <pre><source src="video.ogv" type="video/ogg; codecs=&quot;dirac, vorbis&quot;"></pre>
-
-    <dt>Theora video and Vorbis audio in Matroska container
-
-    <dd>
-     <pre><source src="video.mkv" type="video/x-matroska; codecs=&quot;theora, vorbis&quot;"></pre>
-    </dd>
-    <!-- awaiting definition by the Ogg or BBC guys:
-    <dt>Dirac video and Vorbis audio in Matroska container</dt>
-    <dd><pre><source src="video.mkv" type="video/x-matroska; codecs="></pre></dd>
--->
-    <!-- awaiting definition by the Microsoft guys:
-
-    <dt>WMV9 video and WMA 2 audio in ASF container</dt>
-    <dd><pre><source src="video.wmv" type="video/x-ms-wmv; codecs="></pre></dd>
-
-    <dt>WMV8 video and WMA 2 audio in ASF container</dt>
-    <dd><pre><source src="video.wmv" type="video/x-ms-wmv; codecs="></pre></dd>
-
-    <dt>VC-1 video and WMA 10 Pro audio in ASF container</dt>
-    <dd><pre><source src="video.wmv" type="video/x-ms-wmv; codecs="></pre></dd>
-
-    <dt>XviD video and MP3 audio in AVI container</dt>
-    <dd><pre><source src="video.avi" type="video/x-msvideo; codecs="></pre></dd>
-
-    <dt>Motion-JPEG video and uncompressed PCM audio in AVI container</dt>
-    <dd><pre><source src="video.avi" type="video/x-msvideo; codecs="></pre></dd>
-
--->
-    <!-- awaiting definition by Real:
-    <dt>Real Video 10 video and High-Efficiency AAC audio in Real Media container</dt>
-    <dd><pre><source src="video.rm" type="application/vnd.rn-realmedia; codecs="></pre></dd>
--->
-    <!--  undefined:
-    <dt>MPEG-1 video and MPEG-1 Audio Layer II audio in MPEG-1 program stream</dt>
-    <dd><pre><source src="video.mpg" type="video/mpeg; codecs="></pre></dd>
--->
-   </dl>
-   <!-- XXX #refs https://trac.xiph.org/browser/experimental/ivo/drafts/draft-xiph-rfc3534bis.txt may be relevant -->
-   </div>
-
-  <p>The <dfn id=media9 title=attr-source-media><code>media</code></dfn>
-   attribute gives the intended media type of the <a href="#media8">media
-   resource</a>, to help the user agent determine if this <a
-   href="#media8">media resource</a> is useful to the user before downloading
-   it. Its value must be a valid <a href="#mq">media query</a>. <a
-   href="#refsMQ">[MQ]</a>
-
-  <p>Either the <code title=attr-source-type><a href="#type8">type</a></code>
-   attribute, the <code title=attr-source-media><a
-   href="#media9">media</a></code> attribute or both, must be specified,
-   unless this is the last <code><a href="#source">source</a></code> element
-   child of the parent element.
-
-  <p>If a <code><a href="#source">source</a></code> element is inserted into
-   a <a href="#media5">media element</a> that is already in a document and
-   whose <code title=dom-media-networkState><a
-   href="#networkstate">networkState</a></code> is in the <code
-   title=dom-media-EMPTY><a href="#empty">EMPTY</a></code> state, the user
-   agent must implicitly invoke the <code title=dom-media-load><a
-   href="#load">load()</a></code> method on the <a href="#media5">media
-   element</a> as soon as all other scripts have finished executing. Any
-   exceptions raised must be ignored.
-
-  <p>The DOM attributes <dfn id=src8
-   title=dom-source-src><code>src</code></dfn>, <dfn id=type9
-   title=dom-source-type><code>type</code></dfn>, and <dfn id=media10
-   title=dom-source-media><code>media</code></dfn> must <a
-   href="#reflect">reflect</a> the respective content attributes of the same
-   name.
-
   <h4 id=the-canvas><span class=secno>3.12.11 </span>The <dfn
    id=canvas><code>canvas</code></dfn> element</h4>
 
@@ -27967,7 +27968,7 @@
      href="#htmlaudioelement">HTMLAudioElement</a></code> object (a new
      <code><a href="#audio1">audio</a></code> element). If the <var
      title=src>src</var> argument is present, the object created must have
-     its <code title=dom-media-src><a href="#src6">src</a></code> content
+     its <code title=dom-media-src><a href="#src8">src</a></code> content
      attribute set to the provided value, and the user agent must invoke the
      <code title=dom-media-load><a href="#load">load()</a></code> method on
      the object before returning.
@@ -39749,7 +39750,7 @@
    without errors, the packet should be ignored.
 
   <p class=note>This protocol does not yet allow binary data (e.g. an image
-   or <a href="#media7">media data</a>) to be efficiently transmitted. A
+   or <a href="#media9">media data</a>) to be efficiently transmitted. A
    future version of this protocol might allow this by using the prefix
    character U+001F INFORMATION SEPARATOR ONE, followed by binary data which
    uses a particular byte (e.g. 0xFF) to encode byte 0x17 somehow (since

Modified: source
===================================================================
--- source	2008-05-14 19:45:16 UTC (rev 1616)
+++ source	2008-05-15 01:28:52 UTC (rev 1617)
@@ -13099,7 +13099,173 @@
 
 
 
+  <h4>The <dfn><code>source</code></dfn> element</h4>
 
+  <dl class="element">
+   <dt>Categories</dt>
+   <dd>None.</dd>
+   <dt>Contexts in which this element may be used:</dt>
+   <dd>As a child of a <span>media element</span>, before any <span>flow content</span>.</dd>
+   <dt>Content model:</dt>
+   <dd>Empty.</dd>
+   <dt>Element-specific attributes:</dt>
+   <dd><code title="attr-source-src">src</code></dd>
+   <dd><code title="attr-source-type">type</code></dd>
+   <dd><code title="attr-source-media">media</code></dd>
+   <dt>DOM interface:</dt>
+   <dd>
+<pre class="idl">interface <dfn>HTMLSourceElement</dfn> : <span>HTMLElement</span> {
+           attribute DOMString <span title="dom-source-src">src</span>;
+           attribute DOMString <span title="dom-source-type">type</span>;
+           attribute DOMString <span title="dom-source-media">media</span>;
+};</pre>
+   </dd>
+  </dl>
+
+  <p>The <code>source</code> element allows authors to specify
+  multiple <span title="media resource">media resources</span> for
+  <span title="media element">media elements</span>.</p>
+
+  <p>The <dfn title="attr-source-src"><code>src</code></dfn> attribute
+  gives the address of the <span>media resource</span>. The value must
+  be a URI (or IRI). This attribute must be present.</p>
+
+  <p>The <dfn title="attr-source-type"><code>type</code></dfn>
+  attribute gives the type of the <span>media resource</span>, to help
+  the user agent determine if it can play this <span>media
+  resource</span> before downloading it. Its value must be a MIME
+  type. The <code title="">codecs</code> parameter may be specified and
+  might be necessary to specify exactly how the resource is
+  encoded. <a href="#refsRFC2046">[RFC2046]</a> <a
+  href="#refsRFC4281">[RFC4281]</a></p>
+
+  <div class="example">
+
+   <p>The following list shows some examples of how to use the <code
+   title="">codecs=</code> MIME parameter in the <code
+   title="attr-source-type">type</code> attribute.</p>
+
+   <dl>
+
+    <dt>H.264 Simple baseline profile video (main and extended video compatible) level 3 and Low-Complexity AAC audio in MP4 container</dt>
+    <dd><pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.42E01E, mp4a.40.2&quot;"></pre></dd>
+
+    <dt>H.264 Extended profile video (baseline-compatible) level 3 and Low-Complexity AAC audio in MP4 container</dt>
+    <dd><pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.58A01E, mp4a.40.2&quot;"></pre></dd>
+
+    <dt>H.264 Main profile video level 3 and Low-Complexity AAC audio in MP4 container</dt>
+    <dd><pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.4D401E, mp4a.40.2&quot;"></pre></dd>
+
+    <dt>H.264 "High" profile video (incompatible with main, baseline, or extended profiles) level 3 and Low-Complexity AAC audio in MP4 container</dt>
+    <dd><pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.64001E, mp4a.40.2&quot;"></pre></dd>
+
+
+    <dt>MPEG-4 Visual Simple Profile Level 0 video and Low-Complexity AAC audio in MP4 container</dt>
+    <dd><pre><source src="video.mp4" type="video/mp4; codecs=&quot;mp4v.20.8, mp4a.40.2&quot;"></pre></dd>
+
+    <dt>MPEG-4 Advanced Simple Profile Level 0 video and Low-Complexity AAC audio in MP4 container</dt>
+    <dd><pre><source src="video.mp4" type="video/mp4; codecs=&quot;mp4v.20.240, mp4a.40.2&quot;"></pre></dd>
+
+    <dt>MPEG-4 Visual Simple Profile Level 0 video and AMR audio in 3GPP container</dt>
+    <dd><pre><source src="video.3gp" type="video/3gpp; codecs=&quot;mp4v.20.8, samr&quot;"></pre></dd>
+
+
+    <dt>Theora video and Vorbis audio in Ogg container</dt>
+    <dd><pre><source src="video.ogv" type="video/ogg; codecs=&quot;theora, vorbis&quot;"></pre></dd>
+
+    <dt>Theora video and Speex audio in Ogg container</dt>
+    <dd><pre><source src="video.ogv" type="video/ogg; codecs=&quot;theora, speex&quot;"></pre></dd>
+
+    <dt>Vorbis audio alone in Ogg container</dt>
+    <dd><pre><source src="audio.oga" type="audio/ogg; codecs=vorbis"></pre></dd>
+    <!-- you also see .ogg but .oga is preferred -->
+
+    <dt>Speex audio alone in Ogg container</dt>
+    <dd><pre><source src="audio.oga" type="audio/ogg; codecs=speex"></pre></dd>
+    <!-- you also see .spx but .oga is preferred -->
+
+    <dt>Flac audio alone in Ogg container</dt>
+    <dd><pre><source src="audio.oga" type="audio/ogg; codecs=flac"></pre></dd>
+
+    <dt>Dirac video and Vorbis audio in Ogg container</dt>
+    <dd><pre><source src="video.ogv" type="video/ogg; codecs=&quot;dirac, vorbis&quot;"></pre></dd>
+
+    <dt>Theora video and Vorbis audio in Matroska container</dt>
+    <dd><pre><source src="video.mkv" type="video/x-matroska; codecs=&quot;theora, vorbis&quot;"></pre></dd>
+
+<!-- awaiting definition by the Ogg or BBC guys:
+    <dt>Dirac video and Vorbis audio in Matroska container</dt>
+    <dd><pre><source src="video.mkv" type="video/x-matroska; codecs="></pre></dd>
+-->
+
+
+<!-- awaiting definition by the Microsoft guys:
+
+    <dt>WMV9 video and WMA 2 audio in ASF container</dt>
+    <dd><pre><source src="video.wmv" type="video/x-ms-wmv; codecs="></pre></dd>
+
+    <dt>WMV8 video and WMA 2 audio in ASF container</dt>
+    <dd><pre><source src="video.wmv" type="video/x-ms-wmv; codecs="></pre></dd>
+
+    <dt>VC-1 video and WMA 10 Pro audio in ASF container</dt>
+    <dd><pre><source src="video.wmv" type="video/x-ms-wmv; codecs="></pre></dd>
+
+    <dt>XviD video and MP3 audio in AVI container</dt>
+    <dd><pre><source src="video.avi" type="video/x-msvideo; codecs="></pre></dd>
+
+    <dt>Motion-JPEG video and uncompressed PCM audio in AVI container</dt>
+    <dd><pre><source src="video.avi" type="video/x-msvideo; codecs="></pre></dd>
+
+-->
+
+
+<!-- awaiting definition by Real:
+    <dt>Real Video 10 video and High-Efficiency AAC audio in Real Media container</dt>
+    <dd><pre><source src="video.rm" type="application/vnd.rn-realmedia; codecs="></pre></dd>
+-->
+
+
+<!--  undefined:
+    <dt>MPEG-1 video and MPEG-1 Audio Layer II audio in MPEG-1 program stream</dt>
+    <dd><pre><source src="video.mpg" type="video/mpeg; codecs="></pre></dd>
+-->
+
+   </dl>
+
+   <!-- XXX #refs https://trac.xiph.org/browser/experimental/ivo/drafts/draft-xiph-rfc3534bis.txt may be relevant -->
+
+  </div>
+
+  <p>The <dfn title="attr-source-media"><code>media</code></dfn>
+  attribute gives the intended media type of the <span>media
+  resource</span>, to help the user agent determine if this
+  <span>media resource</span> is useful to the user before downloading
+  it. Its value must be a valid <a href="#mq">media query</a>. <a
+  href="#refsMQ">[MQ]</a></p>
+
+  <p>Either the <code title="attr-source-type">type</code> attribute,
+  the <code title="attr-source-media">media</code> attribute or both,
+  must be specified, unless this is the last <code>source</code>
+  element child of the parent element.</p>
+
+  <p>If a <code>source</code> element is inserted into a <span>media
+  element</span> that is already in a document and whose <code
+  title="dom-media-networkState">networkState</code> is in the <code
+  title="dom-media-EMPTY">EMPTY</code> state, the user agent must
+  implicitly invoke the <code title="dom-media-load">load()</code>
+  method on the <span>media element</span> as soon as all other
+  scripts have finished executing. Any exceptions raised must be
+  ignored.</p>
+
+  <p>The DOM attributes <dfn
+  title="dom-source-src"><code>src</code></dfn>, <dfn
+  title="dom-source-type"><code>type</code></dfn>, and <dfn
+  title="dom-source-media"><code>media</code></dfn> must
+  <span>reflect</span> the respective content attributes of the same
+  name.</p>
+
+
+
   <h4>Media elements</h4>
 
   <p><dfn title="media element">Media elements</dfn> implement the
@@ -13200,6 +13366,7 @@
     * general meta data, implemented as getters (don't expose the whole thing)
       - getMetadata(key: string, language: string) => HTMLImageElement or string
       - onmetadatachanged (no context info)
+    * external captions support
     * video: changing the playback aspect ratio 
     * video: applying CSS filters 
     * infinite looping 
@@ -14932,173 +15099,8 @@
 
 
 
-  <h4>The <dfn><code>source</code></dfn> element</h4>
 
-  <dl class="element">
-   <dt>Categories</dt>
-   <dd>None.</dd>
-   <dt>Contexts in which this element may be used:</dt>
-   <dd>As a child of a <span>media element</span>, before any <span>flow content</span>.</dd>
-   <dt>Content model:</dt>
-   <dd>Empty.</dd>
-   <dt>Element-specific attributes:</dt>
-   <dd><code title="attr-source-src">src</code></dd>
-   <dd><code title="attr-source-type">type</code></dd>
-   <dd><code title="attr-source-media">media</code></dd>
-   <dt>DOM interface:</dt>
-   <dd>
-<pre class="idl">interface <dfn>HTMLSourceElement</dfn> : <span>HTMLElement</span> {
-           attribute DOMString <span title="dom-source-src">src</span>;
-           attribute DOMString <span title="dom-source-type">type</span>;
-           attribute DOMString <span title="dom-source-media">media</span>;
-};</pre>
-   </dd>
-  </dl>
 
-  <p>The <code>source</code> element allows authors to specify
-  multiple <span title="media resource">media resources</span> for
-  <span title="media element">media elements</span>.</p>
-
-  <p>The <dfn title="attr-source-src"><code>src</code></dfn> attribute
-  gives the address of the <span>media resource</span>. The value must
-  be a URI (or IRI). This attribute must be present.</p>
-
-  <p>The <dfn title="attr-source-type"><code>type</code></dfn>
-  attribute gives the type of the <span>media resource</span>, to help
-  the user agent determine if it can play this <span>media
-  resource</span> before downloading it. Its value must be a MIME
-  type. The <code title="">codecs</code> parameter may be specified and
-  might be necessary to specify exactly how the resource is
-  encoded. <a href="#refsRFC2046">[RFC2046]</a> <a
-  href="#refsRFC4281">[RFC4281]</a></p>
-
-  <div class="example">
-
-   <p>The following list shows some examples of how to use the <code
-   title="">codecs=</code> MIME parameter in the <code
-   title="attr-source-type">type</code> attribute.</p>
-
-   <dl>
-
-    <dt>H.264 Simple baseline profile video (main and extended video compatible) level 3 and Low-Complexity AAC audio in MP4 container</dt>
-    <dd><pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.42E01E, mp4a.40.2&quot;"></pre></dd>
-
-    <dt>H.264 Extended profile video (baseline-compatible) level 3 and Low-Complexity AAC audio in MP4 container</dt>
-    <dd><pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.58A01E, mp4a.40.2&quot;"></pre></dd>
-
-    <dt>H.264 Main profile video level 3 and Low-Complexity AAC audio in MP4 container</dt>
-    <dd><pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.4D401E, mp4a.40.2&quot;"></pre></dd>
-
-    <dt>H.264 "High" profile video (incompatible with main, baseline, or extended profiles) level 3 and Low-Complexity AAC audio in MP4 container</dt>
-    <dd><pre><source src="video.mp4" type="video/mp4; codecs=&quot;avc1.64001E, mp4a.40.2&quot;"></pre></dd>
-
-
-    <dt>MPEG-4 Visual Simple Profile Level 0 video and Low-Complexity AAC audio in MP4 container</dt>
-    <dd><pre><source src="video.mp4" type="video/mp4; codecs=&quot;mp4v.20.8, mp4a.40.2&quot;"></pre></dd>
-
-    <dt>MPEG-4 Advanced Simple Profile Level 0 video and Low-Complexity AAC audio in MP4 container</dt>
-    <dd><pre><source src="video.mp4" type="video/mp4; codecs=&quot;mp4v.20.240, mp4a.40.2&quot;"></pre></dd>
-
-    <dt>MPEG-4 Visual Simple Profile Level 0 video and AMR audio in 3GPP container</dt>
-    <dd><pre><source src="video.3gp" type="video/3gpp; codecs=&quot;mp4v.20.8, samr&quot;"></pre></dd>
-
-
-    <dt>Theora video and Vorbis audio in Ogg container</dt>
-    <dd><pre><source src="video.ogv" type="video/ogg; codecs=&quot;theora, vorbis&quot;"></pre></dd>
-
-    <dt>Theora video and Speex audio in Ogg container</dt>
-    <dd><pre><source src="video.ogv" type="video/ogg; codecs=&quot;theora, speex&quot;"></pre></dd>
-
-    <dt>Vorbis audio alone in Ogg container</dt>
-    <dd><pre><source src="audio.oga" type="audio/ogg; codecs=vorbis"></pre></dd>
-    <!-- you also see .ogg but .oga is preferred -->
-
-    <dt>Speex audio alone in Ogg container</dt>
-    <dd><pre><source src="audio.oga" type="audio/ogg; codecs=speex"></pre></dd>
-    <!-- you also see .spx but .oga is preferred -->
-
-    <dt>Flac audio alone in Ogg container</dt>
-    <dd><pre><source src="audio.oga" type="audio/ogg; codecs=flac"></pre></dd>
-
-    <dt>Dirac video and Vorbis audio in Ogg container</dt>
-    <dd><pre><source src="video.ogv" type="video/ogg; codecs=&quot;dirac, vorbis&quot;"></pre></dd>
-
-    <dt>Theora video and Vorbis audio in Matroska container</dt>
-    <dd><pre><source src="video.mkv" type="video/x-matroska; codecs=&quot;theora, vorbis&quot;"></pre></dd>
-
-<!-- awaiting definition by the Ogg or BBC guys:
-    <dt>Dirac video and Vorbis audio in Matroska container</dt>
-    <dd><pre><source src="video.mkv" type="video/x-matroska; codecs="></pre></dd>
--->
-
-
-<!-- awaiting definition by the Microsoft guys:
-
-    <dt>WMV9 video and WMA 2 audio in ASF container</dt>
-    <dd><pre><source src="video.wmv" type="video/x-ms-wmv; codecs="></pre></dd>
-
-    <dt>WMV8 video and WMA 2 audio in ASF container</dt>
-    <dd><pre><source src="video.wmv" type="video/x-ms-wmv; codecs="></pre></dd>
-
-    <dt>VC-1 video and WMA 10 Pro audio in ASF container</dt>
-    <dd><pre><source src="video.wmv" type="video/x-ms-wmv; codecs="></pre></dd>
-
-    <dt>XviD video and MP3 audio in AVI container</dt>
-    <dd><pre><source src="video.avi" type="video/x-msvideo; codecs="></pre></dd>
-
-    <dt>Motion-JPEG video and uncompressed PCM audio in AVI container</dt>
-    <dd><pre><source src="video.avi" type="video/x-msvideo; codecs="></pre></dd>
-
--->
-
-
-<!-- awaiting definition by Real:
-    <dt>Real Video 10 video and High-Efficiency AAC audio in Real Media container</dt>
-    <dd><pre><source src="video.rm" type="application/vnd.rn-realmedia; codecs="></pre></dd>
--->
-
-
-<!--  undefined:
-    <dt>MPEG-1 video and MPEG-1 Audio Layer II audio in MPEG-1 program stream</dt>
-    <dd><pre><source src="video.mpg" type="video/mpeg; codecs="></pre></dd>
--->
-
-   </dl>
-
-   <!-- XXX #refs https://trac.xiph.org/browser/experimental/ivo/drafts/draft-xiph-rfc3534bis.txt may be relevant -->
-
-  </div>
-
-  <p>The <dfn title="attr-source-media"><code>media</code></dfn>
-  attribute gives the intended media type of the <span>media
-  resource</span>, to help the user agent determine if this
-  <span>media resource</span> is useful to the user before downloading
-  it. Its value must be a valid <a href="#mq">media query</a>. <a
-  href="#refsMQ">[MQ]</a></p>
-
-  <p>Either the <code title="attr-source-type">type</code> attribute,
-  the <code title="attr-source-media">media</code> attribute or both,
-  must be specified, unless this is the last <code>source</code>
-  element child of the parent element.</p>
-
-  <p>If a <code>source</code> element is inserted into a <span>media
-  element</span> that is already in a document and whose <code
-  title="dom-media-networkState">networkState</code> is in the <code
-  title="dom-media-EMPTY">EMPTY</code> state, the user agent must
-  implicitly invoke the <code title="dom-media-load">load()</code>
-  method on the <span>media element</span> as soon as all other
-  scripts have finished executing. Any exceptions raised must be
-  ignored.</p>
-
-  <p>The DOM attributes <dfn
-  title="dom-source-src"><code>src</code></dfn>, <dfn
-  title="dom-source-type"><code>type</code></dfn>, and <dfn
-  title="dom-source-media"><code>media</code></dfn> must
-  <span>reflect</span> the respective content attributes of the same
-  name.</p>
-
-
-
   <h4>The <dfn id="canvas"><code>canvas</code></dfn> element</h4>
 
   <dl class="element">




More information about the Commit-Watchers mailing list