web-dev-qa-db-ja.com

Windows 7 64ビットのFirefox上のYouTubeでh.264を機能させるにはどうすればよいですか?

Variousnewsarticles Firefoxはバージョン20以降のWindowsでh.264をサポートしていると述べています。この記事の執筆時点では、バージョンは24ですが、Firefoxは引き続きほとんどのYouTubeビデオを再生しません。 HTML5 opt-in を実行し、Firefoxと Nightly の両方をテストしました。また、media.windows-media-foundation.enabled in about:configが有効になっており、FirefoxとNightlyの両方でデフォルトで有効になっています。

何が問題で、どうすれば修正できますか?

編集:
このビデオは機能します。
このビデオは失敗します。
どちらもMP4(ビデオを右クリック->オタクの統計)なので、Firefoxのh.264サポートは少なくとも機能します いくつか 当時の。

編集:
機能しないYouTube動画に移動したら、[共有]-> [埋め込み]をクリックし、srcタグのiframeをアドレスバーにコピーして貼り付けます。ビデオは動作します。

6
Ansis Māliņš

一般的なコメントとして、時々そのような問題は codecs の欠落によって引き起こされ、 K-Lite のようなコーデックパックをインストールすることで修正されます。ただし、ダウンロードすると動画が再生されるため、これは問題ではありません。

失敗したビデオの例ではFlashを使用していますが、YouTubeHTML5プレーヤーを使用しています。詳細については、記事 YouTubeにHTML5プレーヤーの使用を強制する :を参照してください。

YouTubeのHTML5プレーヤーは優れていますが、すべての動画で有効になっているわけではありません。 youtube.com/html5にアクセスしてHTML5トライアルに参加しても、Flashプレーヤーを使用したビデオがたくさんあります。 「広告付きの一部のビデオはまだサポートされていません(Flashプレーヤーで再生されます)」とサイトは述べています。

単純なGreasemonkeyスクリプト があります。これにより、YouTubeはyoutube.comで視聴するほぼすべての動画にHTML5プレーヤーを使用するように強制されます。 Firefoxを使用している場合は Greasemonkey をインストールする必要があり、Chromeを使用している場合は Tampermonkey をインストールする必要があります。次に、[インストール]ボタン ここ をクリックします。

Chromeの場合は、 9月23日からの古いバージョン を使用します。

スクリプトはFirefoxでよりよく機能します。スクリプトをChromeにインストールすると、 新しいAjaxインターフェース が無効になりますが、それ以外はすべて正常に機能しているようです。

これが video スクリプトのテストに使用できます。スクリプトは埋め込みビデオでは機能しないことに注意してください。

編集:userscripts.orgが消えたので、userscripts-mirror.orgを指すようにリンクを変更しました。さらに、以下のスクリプトを再現します。

// ==UserScript==
// @name        ythtml5kiss
// @namespace   mentormayhesset
// @description YouTube the HTML5 player [Firefox+Greasemonkey>=1.0]
// @include     https://www.youtube.com/*
// @include     http://www.youtube.com/*
// @exclude     https://www.youtube.com/embed/*
// @exclude     http://www.youtube.com/embed/*
// @version     3.1
// @run-at      document-end
// @grant       none
// ==/UserScript==

try{
    window.ytspf = window.ytspf || {};
    Object.defineProperty(window.ytspf,'enabled',{value:false});
    ytplayer.config.html5=true;
    delete ytplayer.config.args.ad3_module;
}catch(e){}
3
harrymc