7

Webページにビデオを埋め込みたい。
フラッシュは膨大な数のプラットフォームで利用できないため、使用したくありません。
HTML5はまだ標準的ではないので、使用するのは気が進まない(標準ですが、ほとんどの人はそれをサポートするブラウザーを持っていません)

他に方法はありますか?それとも、HTML5と、ブラウザをアップグレードするように指示する巨大なバナーに固執する必要がありますか?

4

6 に答える 6

8

HTML5ビデオを、サポートされていないブラウザのフォールバックと組み合わせる方法はいくつかあります。いくつかの具体的な解決策が示されています。

一例として、CamenDesignのVideofor Everybodyがあります。これは、HTML5に準拠しており、IEには条件付きコメントを使用し、古いブラウザーにはネストされたオブジェクトタグを使用します。これは、標準に準拠し、下位互換性があり、将来にわたって利用できるものでなければなりません。

于 2009-12-31T06:04:43.933 に答える
6

HTML5は標準ではありません。ドラフトです。おそらくいつか標準になるでしょう。おそらく最初に変わるでしょう。

ページにビデオを埋め込みたい場合は、少なくとも今日では、Flashがサポートされている中で最も優れたオプションです。Flashを持っていない人(または専用のビデオプレーヤーでビデオを見たいだけの人)のためのオプションとして、通常のダウンロード可能なバージョンへのリンクを提供します。

ブラウザをアップグレードするように人々に指示しても、大した助けにはなりません。私の知る限り、安定版リリースでビデオをサポートしているブラウザはFirefoxだけです。Chromeは、開発バージョンを除いてそれをサポートしていません。Operaがサポート付きの安定したビルドを生み出したとは思いません。Microsoftは確かにまだInternetExplorerに追加していません。Safariよくわかりません。

本当にFlashを避けたい場合は、HTML4.01オブジェクトを使用できます。

<object data="myVideo.ogv" type="video/ogg">
  <!-- fallback content here -->
</object>

…そして、ユーザーがインストールされたビデオを処理できるプラグインを持っていることを望みます。

于 2009-07-29T14:38:16.080 に答える
2

コルタードに出くわしたばかりです。これは、OGGを再生するJavaアプレットです。HTML5のステータスをチェックすることで私はそれに出くわしたので、私は実際にこれについてDavidDorwardに感謝しなければなりません。Firefoxは、次のようなものを使用することを提案しています。

 <video src="my_ogg_video.ogg" controls width="320" height="240">  
   <object type="application/x-java-applet"  
           width="320" height="240">  
      <param name="archive" value="cortado.jar">  
      <param name="code" value="com.fluendo.player.Cortado.class">  
      <param name="url" value="my_ogg_video.ogg">  
      <p>You need to install Java to play this file.</p>  
   </object>  
 </video>  

Javaは、フラッシュよりもはるかに多くのプラットフォームで利用できます。この場合は、HTML5へのフォールバックにすぎません。

ソース

于 2009-07-29T14:49:35.890 に答える
1

少し遅いとは思いますが、VLCをご覧になりましたか?

ウェブサイトに埋め込むことができ、Windows、Mac OS、Linuxで動作し、無料のオープンソースで、多くのビデオ/オーディオ形式をサポートしています...

欠点は、再生/一時停止/音量設定/ ...機能を備えた優れたGUIがないことです。これらは、自分で作成する必要があります。

あなたはこの記事を見ることができます:http ://www.videolan.org/doc/play-howto/en/ch04.html#id310965

于 2009-12-30T15:25:18.450 に答える
0

多くの大規模なWebサイトがFlashを使用してビデオを再生しているのはなぜだと思いますか?おそらくそれが利用できないためではありません...もちろん、Webページにビデオコンテンツを埋め込むための代替手段がありますが、利用可能性が問題である場合は、Flashが現時点で最善の方法です。

于 2009-07-29T14:39:28.120 に答える
0

xHtml + RDFaに非常に興味があり、HTML5ブラウザーではなくブロックせずにHTML5ブラウザーでxHtml 1.0の厳密なドキュメントでビデオを再生する方法を見つけたので、この問題に取り組みました。

ここでjQueryプラグインを公開しました:https ://github.com/charlycoste/xhtml-video

そしてここにデモがあります:http://demo.ccoste.fr/video

実際、これはHTML5タグを使用するよりもはるかに強力ではありませんが、少なくとも...それは機能します!

このソリューションはjavascriptとcanvasに依存していますが、タグを使用することで適切に機能を低下させることができ<object>ます(これが私のjQueryプラグインの機能です)。

私がすることは実際には簡単です:

  1. メモリ内に新しいビデオ要素(タグではない)を作成しましたが、それをDOMドキュメントに追加しません:

    var video = document.createElement('video');
    
  2. メモリ内に新しいcanvas 要素を作成しましたが、それをDOMドキュメントに追加しません。

    var canvas = document.createElement('canvas');
    
  3. 新しいimg 要素を作成し、それをDOMに追加します。

    // var parent = ... ;
    // var width = ...;
    // var height = ...;
    var img = document.createElement('img');
    
    img.setAttribute('width', width);
    img.setAttribute('height', height);
    
    parent.appendChild(img);
    
  4. ビデオの再生中(video.play())、キャンバスに各フレームを描画します(DOMに追加されていないため、表示されません。これにより、DOMは有効なxhtml 1.0ドキュメントのままになります)

    canvas.getContext("2d").drawImage(video, 0, 0, width, height);
    
  5. 最後にtoDataURL()、要素のメソッドを使用しcanvasて、フレームのbase64でエンコードされた画像を取得しsrc、要素の属性に配置しimgます。

    img.setAttribute('src', canvas.toDataURL());
    

これを行うことで、JavaScriptオブジェクトにDOMからビデオを再生させ、各フレームをimgDOM要素にプッシュします。したがって、ブラウザのHTML5機能を使用してビデオを再生できますが、HTML5ドキュメントは必要ありません。

また、ブラウザにHTML5機能がない場合、または使用されているコーデックを処理できない場合は、ネイティブの<object>動作にフォールバックします(通常、ブラウザはVLCなどのプラグインを探します...)

また、ビデオを再生する方法がない場合(プラグインがない場合)、<object>タグ内に提供されている代替コンテンツが使用されます。

パフォーマンスの側面:プロセスの消費量が非常に多いため、再生がちらつくことがあります...これを回避するには、次のようにjpeg圧縮を使用してレンダリング品質を下げることができます。canvas.toDataURL('image/jpeg', quality)ここqualityで、は0〜1の値です。

于 2014-11-08T21:46:54.187 に答える