まず、
まだ出会っていない場合は、 http://camendesign.com/code/video_for_everybodyを確認することをお勧めします。
とにかく、カスタムフラッシュの代替を提供したい場合、これは機能するはずです。
<video width="..." height="..." controls="controls" preload="none">
<source src="video/demo.mp4" type="video/mp4" />
<source src="video/demo.webm" type="video/webm" />
<source src="video/demo.ogv" type="video/ogg" />
<span id="flashAlternative">what, no flash+no html5? crazy!</span>
</video>
<script>
swfobject.embedSWF( ..., "flashAlternative", ... );
</script>
明らかに、代わりにyoutube / vimeo / ...ビデオを使用したい場合は、スクリプトタグの代わりに埋め込みコードを配置するだけです。
<video width="..." height="..." controls="controls" preload="none">
<source src="video/demo.mp4" type="video/mp4" />
<source src="video/demo.webm" type="video/webm" />
<source src="video/demo.ogv" type="video/ogg" />
<!-- embedding code here -->
</video>
このソリューションはどちらも、フラッシュビデオよりもhtml5ビデオを優先します。帯域幅の負荷にお金をかけたくない場合は、フラッシュを持っているすべての人にyoutubeビデオを表示し、それが利用できない場合にのみhtml5にフォールバックすることをお勧めします。その場合、次のようになります。
<object type="application/x-shockwave-flash" width="..." height="..." data="...">
<param name="movie" value="..." />
<video width="..." height="...">
<source src="..." type="video/mp4" />
<source src="..." type="video/webm" />
<source src="..." type="video/ogg" />
<!-- here comes the alternative for people who have neither flash, nor html5 -->
</video>
</object>
埋め込みコードをyoutube/videoからコピーして内部のhtml5ビデオをスマッシュすることはできないことに注意してください。上記のように変更する必要があります(データとムービーの属性は両方ともswfファイルのソースを指定します。埋め込みタグは必要ありません! )。