4

ビデオを Web ページに埋め込むための、シンプルでクリーンな、Flash を使用しないクロスブラウザー ソリューションが必要です。私は以下の解決策を思いつきました。誰かがそれをさらに改善できるかどうかを知りたいです。

  1. <object>ビデオのバッファリング中にメソッドで静止画像を表示できますか?
  2. 誰かがそれらの条件付きコメントを確認できますか? 少し混乱しましたdownlevel-hidden:)downlevel-revealed

次のようにビデオを変換します (IE 8 では WMV、Firefox では WEBM、その他では H264 を使用):

ffmpeg -i video.mov -b 3000k -vcodec wmv2   -acodec wmav2     -ab 320k -g 30 out.wmv
ffmpeg -i video.mov -b 3000k -vcodec libvpx -acodec libvorbis -ab 320k -g 30 out.webm

マークアップ (条件付きコメントを使用して IE 8 ユーザーへのフォールバックを作成):

<![if (!IE) | (gte IE 9)]>
<video controls="true" autoplay="true" poster="video.jpg">
  <source src="video.mov" type="video/quicktime"/>
  <source src="video.webm" type="video/webm"/>
</video>
<![endif]>

<!--[if (IE) & (lt IE 9)]>
<object classid="clsid:22d6f312-b0f6-11d0-94ab-0080c74c7e95" width="1280" height="720">
  <param name="filename" value="video.wmv"/>
  <param name="autostart" value="autostart"/>
  <param name="showcontrols" value="true"/>
  <param name="showstatusbar" value="true"/>
</object>
<![endif]-->
4

1 に答える 1

4

<object>ソースの後にタグをタグ内に配置することをお勧め<video>します。video タグをサポートしていない古いブラウザ (例: IE < 9、Firefox < 3.6) はそれを無視してその内容を表示し、ビデオをサポートする新しいブラウザは内部コンテンツを無視します (もちろんソースは除く)。

<object>Quicktime がインストールされていないシステムの古いブラウザ用のタグ内にフォールバック コンテンツを配置することで、さらにうまくいくことができます。通常、これはポスター画像と、ブラウザをアップグレードするための提案、またはビデオ ファイルをダウンロードするためのリンクです。

これがどのように機能するかのより完全な説明と例については、Video for Everyoneをご覧ください。Flash オブジェクトを Quicktime オブジェクトに置き換えるだけです。(本当に徹底したいのであれば、FlashオブジェクトをQuicktimeオブジェクトの中に置くことができるので、Quicktimeがインストールされていないマシン上の古いブラウザは、FlashがあればFlashにフォールバックするかもしれません.しかし、それはおそらく非常に小さいです.人数が多く、やり過ぎの可能性があります。)

于 2013-01-23T06:00:40.753 に答える