3.1 beta 3のリリースノートにも載っているが、
Some users with older computers or slower Internet connections may experience choppy OGG video/audio playback (see bug 462667)
Firefoxに内蔵されたビデオ再生機能のパフォーマンスは非常に良くない。
動画系のコードをみればわかるけど、iDCT (逆離散コサイン変換) やYUV->RGB変換など、SIMDで高速化できるような処理をMMXやSSE2を使わずに処理しているので、パフォーマンスが悪くて当然 (oggを扱えるアプリケーションは、本家のライブラリを使わずにチューニングした別のライブラリを使っているのが見受けられるくらい、本家のライブラリはチューニング不足)。最新のliboggplayとかであれば、YUV->RGB変換などをMMXやSSE2等を利用してスピードを稼いでいるので、Firefoxで利用している各ライブラリがバージョンアップされれば、ある程度はパフォーマンスが向上するとは思う。
そもそもNVIDIAなどのGPUだと、(動画再生支援機能として) iDCTくらいは自前で実装されているので、本当はGPU側でやるのがそもそも一番だとは思うのだけど、そこらを含めた抽象化ライブラリって、意外にないんだよね (DirectXにはあるけど、OS非依存のものがない)。また、DirectXとかで動画再生する場合は、YUVで直接描画できるから、ARGBへの変換なんていらないから、よりCPUに優しいんだけど。。。
OpenCLが早く来ないかな...
0 件のコメント:
コメントを投稿