web-dev-qa-db-ja.com

フラッシュプレーヤーがまったく同じビデオファイルを表示するためにVLCプレーヤーの最大20倍のCPUを消費するのはなぜですか?

ビデオ(H264 MPEG4 AVC 320x180)をオンライン(FirefoxまたはChrome)で再生すると、最大100%のCPUを消費しますが、ダウンロード(正確に再生したファイル)してVLCを使用すると、わずか5%(6最大%)。なぜこれが起こり、オンラインプレーヤーをより効率的にするために何ができますか?

PS:ビデオカードはIntel GMA X4500HDです。

8
Ivan

おそらく、Flashプラグインは、グラフィックカードドライバーでサポートされているハードウェアアクセラレーションを利用できないためです。その後、すべてがCPUを使用してデコードされます。

システムに存在するIntelドライバーにより、VLCはCPUの代わりにGPUを使用して、明白な理由ではるかに優れたビデオアクセラレーションでムービーをレンダリングできます。

また、FlashハードウェアアクセラレーションAPI(ステージビデオ)では、開発者が実際にビデオプレーヤーSWFにサポートを追加する必要があります。

使用しているFlashのバージョンでVAが有効になっていて、ドライバーがサポートしている場合でも(VLCが使用しているように見えるため)、ビデオプレーヤーにサポートが組み込まれていない場合)ビデオはCPUを介してデコードされます。

6
Bruno Pereira