web-dev-qa-db-ja.com

FirefoxでHTML5 h.264ビデオを使用するにはどうすればよいですか?

Firefox 26のリリースノート によると、h.264ビデオはLinuxで動作するはずです。また、適切なgstreamerプラグインをインストールする必要があるとも言っています。誰がこれらが何であるか知っていますか?

これは テストサイトYouTube HTML5ページ を使用して、Google ChromeでUbuntu 12.04 64ビットでh.264サポートが機能することを確認しましたが、 Firefox 26では動作しません。

27
HarlemSquirrel

12.04/14.04/18.10の場合

HTML5 Youtubeテストにアクセスして、H.264をチェックしました。 gstreamerコーデックを入手するには、Ubuntuの制限付きエクストラをインストールする必要があります。

Sudo apt-get install ubuntu-restricted-extras

再起動が必要になる場合があります。

enter image description here

29
xangua

14.04の場合

上記のソリューションは、Trusty Tahr 14.04では動作しなくなりました。これは、gstreamer0.10-ffmpegパッケージがgstreamer1.0-libavに置き換えられたためですが、Firefoxはバージョン30でのみgstreamer 1.0をサポートする予定です。

そのため、当面の間は、適切なアーキテクチャ向けにsaucyからgstreamer0.10-ffmpegをインストールできます。

14
Geoffrey Mosini

Firefox 33以降

Mozillaは、 Firefox のプラグインとしてOpenH264のサポートを追加しました。このプラグインを有効にするには、Firefoxが自動的にバイナリを OpenH264 Webサイト から初めてダウンロードするときにダウンロードします。

そのsounds素晴らしいですね。待って…それはしゃれだった。

これは確かに非常に便利なソリューションですが、プロセスとライセンス契約がどれほど透明であっても、ソフトウェアがシスコシステムズまたは他の会社に関連するサイトから自動的にバイナリをダウンロードする場合、プライバシーとセキュリティの懸念も生じます。

直接関係ありませんが、Firefoxが閉じられ、永続的なHTML5再生のために保持する適切なCookieが見つからないときにCookieを自動的に削除する場合は、 YouTube ALL HTML5 をインストールすることをお勧めします。

14.04.2および15.04 VMを使用したテスト

私の推測では、H.264デコーダーバイナリをインストールするだけでは十分ではないため、2つの新しい仮想マシンをセットアップしました。

  • インストール時に制限付きアドオンがインストールされたUbuntu 14.04.2
  • Ubuntu 15.04without-インストール中にインストールされた制限付きアドオン

両方のVMのインストールが完了した後、システムをブートし、再度更新し、VMゲスト追加をインストールし、Firefoxを初めて起動して、実際のテストのために再起動しました。

YouTubeはオープンソースの WebM 形式も提供しているため、テスト方法について詳しく説明したくないので、別のHTML5対応サイトを使用して独自のH.264再生サポートをテストする必要がありました。 Vimeoを選んだのは、WebMをサポートするために デフォルトはHTML5 で、 seem をサポートしていないからです。

パッケージをインストールする、Firefoxで何かを有効化/無効化するなど、テストで変更を行うたびに、Firefoxを閉じて再度起動しました。

14.04.2制限付きアドオン

enter image description here

このスクリーンショットでわかるように、OpenH264プラグインのみがFirefoxで有効になっているため、異なるバージョンのすべての必要なGStreamerパッケージがプリインストールされ、ビデオが期待どおりに再生されます。

15.04制限付きアドオンなし

enter image description here

このスクリーンショットでわかるように、OpenH264プラグインが有効になっています。Flashプラグインはありません。異なるバージョンのGStreamerパッケージがいくつかインストールされていますが、ビデオは再生されません!その代わりに、サイトはビデオが再生できないことをすぐに教えてくれます。何故ですか?

enter image description here

  • AACがありません! –説明を簡単にするために、ブラウザにフィードされるファイルがサーバー上にあります。 Firefoxのコンテキストメニューからインスペクターを使用して検索すると、AACエンコードされたオーディオを備えたMP4が見つかります。エラーメッセージはより明確になりますが、AACのデコーダーが現在インストールされていないため、意味があります。
  • 更新:Firefox 41でこの問題をもう一度調べたところ、about:configでOpenH264が無効になっているようです。

    media.fragmented-mp4.exposed;false
    media.fragmented-mp4.gmp.enabled;false
    

    これらをtrueに設定しても効果はありません。私が試したその他の設定:

    • media.audio_data.enabled;true効果なし。
    • media.mediasource.enabled;true Vimeoは以前にMSEを使用していなかったため、これらの設定と関連する設定を有効にしても効果はありませんでした。
    • media.fragmented-mp4.use-blank-decoder;true結果:緑色の固体キャンバスと一定の正弦波オーディオ信号。

15.04with制限付きアドオン

賢明なアプローチはgstreamer1.0-plugins-bad-faadをインストールすることでしたが、これはVimeoの特定のエラーメッセージをうまく動かさないので、制限付きアドオンをすべてインストールしましょう。

enter image description here

予想通り、制限付きアドオンパッケージ afterwards をインストールするとすべてが機能しますが、HTML5ビデオを使用するために、Firefoxでenabled以外にFlashプラグインを設定することができます。

分析または単に破壊する

enter image description here

どうやらgstreamer1.0-libavは、エラーメッセージを取得するために削除する必要がある唯一のパッケージです。それでは、libavのAACデコーダーを使用していましたか?私はその証拠を見つけるために深く掘り下げたり、どのデコーダが優先されるかを探したりしませんでした(たとえば、OpenH264が現在Linux上で使用されている場合)またはVにもかかわらずHにもかかわらず他の依存関係が満たされていないためにこのエラーメッセージがスローされる場合.264およびAACデコーダーがインストールされています。

まとめと展望

要約すると、現在のメインストリームコンテンツの再生にはH.264デコーダーだけでなく、AACデコーダーも必要であり、H.265は既に古いものを置き換える準備をしています。また、対応する H.264を備えたMP4の仕様 が、近い将来、よりオープンソースで使いやすいオーディオコーデックを推奨するように変更される予定もありません。

真剣に、WebMを押してください! H.264/AVCの候補としてVP8 + Vorbis、H.265/HEVCの候補としてVP9 + Opusを取得します。

9
LiveWireBT

Firefoxは現在、ビデオタグではなくWebRTCにのみOpenH264を使用しています。これは、OpenH264がビデオのストリーミングに頻繁に使用される高プロファイル形式をまだサポートしていないためです。

ソース: http://andreasgal.com/2014/10/14/openh264-now-in-firefox/

gstreamer1.0-libavは、おそらくLinux版FirefoxでH264 HTML5ビデオタグのサポートを追加する唯一のオプションです。

2

Firefox30では、gstreamer 1.0をインストールする必要があります。ほとんどのプラグインもインストールする必要があります:bad、ugly、...

パッケージ名で混乱しないで、インストールする必要があります:gstreamer1、gstreamer((one/1 番号はパッケージの一部であり、「バージョン」ではありません)。同じルールがすべてのプラグインに適用されます: "gstreamer1-plugins -..."

ブラウザのhtml5機能とコーデックサポートをテストするためのより完全なURLは次のとおりです。 http://html5test.com/

0
Teenage