<div dir="ltr">On Tue, Oct 14, 2008 at 12:10 PM, Ian Hickson <span dir="ltr">&lt;ian@hixie.ch&gt;</span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Try to play all the videos you have available, and catch errors:<br>
<br>
 &nbsp;&lt;video id=a&gt;<br>
 &nbsp; &lt;source src=&quot;video.mp4&quot; type=&quot;video/mp4; codecs=&amp;quot;avc1.42E01E, mp4a.40.2&amp;quot;&quot;&gt;<br>
 &nbsp; &lt;source src=&quot;video.3gp&quot; type=&quot;video/3gpp; codecs=&amp;quot;mp4v.20.8, samr&amp;quot;&quot;&gt;<br>
 &nbsp; &lt;source src=&quot;video.ogv&quot; type=&quot;video/ogg; codecs=&amp;quot;theora, vorbis&amp;quot;&quot;&gt;<br>
 &nbsp; &lt;source src=&quot;video.mkv&quot; type=&quot;video/x-matroska; codecs=&amp;quot;theora, vorbis&amp;quot;&quot;&gt;<br>
 &nbsp;&lt;/video&gt;<br>
 &nbsp;&lt;script&gt;<br>
 &nbsp; document.getElementById(&#39;a&#39;).load();<br>
 &nbsp; if (document.getElementById(&#39;a&#39;).currentSrc == &quot;&quot;) {<br>
 &nbsp; &nbsp; // failed to find a video that would play<br>
 &nbsp; &nbsp; // do whatever fallback you want to do here<br>
 &nbsp; &nbsp; ...<br>
 &nbsp; }<br>
 &nbsp;&lt;/script&gt;<br>
<br>
This will reliably work, because load() blocks until a decision about<br>
which video to play is made. <br>
<br>
We may have to change this (e.g. to allow UAs to asynchronously fetch and<br>
try each video)</blockquote><div><br>We definitely have to change that! Having load() synchronous would be a disaster.<br><br>Rob<br></div></div>--<br>&quot;He was pierced for our transgressions, he was crushed for our iniquities; the punishment that brought us peace was upon him, and by his wounds we are healed. We all, like sheep, have gone astray, each of us has turned to his own way; and the LORD has laid on him the iniquity of us all.&quot; [Isaiah 53:5-6]<br>

</div>