web-dev-qa-db-ja.com

x264エンコーディング速度、私の期待はどうあるべきですか?

私はUbuntu10.10(maverick)をcore2duo 2.29GHzのHPPavillion dv3、CUDAと4GBRAMのNVidiaGeforce G105M(512MB)で実行しています。私はffmpegとx264の最新バージョンを持っています。

これらはエンコードの素晴らしい仕様ではないことを認識していますが、約2GHzのプロセッサを搭載した(異なる)シングルコアPCでDIVXを使用してエンコードし、10時間以上のテレビエピソードを一晩で変換できることに慣れています。

上記のHPラップトップでx264とffmpegを使用してエンコードを開始したところ、エンコードに22時間かかる2時間のフィルムが1本あることに驚きました。

私が使用したコマンドラインは次のとおりです。

ffmpeg -i infile.mpg -vcodec libx264 -preset slow -profile normal -crf 24 -threads 0 outfile.mp4

これは正常ですか、それともどこかにボトルネックがありますか?

ありがとう

5
Stefan

まあ、それはCore 2Duoだけです。もちろん、i7の方がはるかに優れたパフォーマンスを発揮します。 x264はGPUをサポートしていないため、残念ながらCUDAを使用しても役に立ちません。また、h.264のエンコードは、MPEG-4 VisualDivXに「ちょうど」入れるよりも計算量が多くなります。

そうは言っても、x264は非常に高速なエンコーダーであり、これが重要です。 -preset slow実際にはエンコーダーに低速を指示しています。

X264のプリセットにより、さまざまなアルゴリズムの最適化が可能になり、同じ量のビットを使用した場合の品質が向上するか、固定品質の場合のビット数が少なくなります。したがって、圧縮効率。一般に、プリセットが遅いほど最適化は向上しますが、計算にかかる時間は長くなります。

x264 --fullhelpで概説されているように、次のような他のプリセットを選択できます。

  • 超高速
  • 超早い
  • とても早い
  • もっと早く
  • 速い
  • 中(デフォルト)
  • スロー
  • もっとゆっくり
  • 非常に遅い

最適なもの、つまり待つ余裕のあるものを選択してください。

9
slhck