3

アップロードしたビデオをMP4とOGVに変換しますが、プロセスを高速化しようとすると、壁にぶつかりました。ボトルネックはOGVエンコーディングであることがわかりました。350mbのAVIをMP4に変換するのに5分かかる場合がありますが、同じファイルをOGVに変換するのに約25〜30分かかります。

avconvはマルチスレッド/マルチコアをサポートしていますが、libtheoraはサポートしていないようですが、複数のコアをエンコードする方法はありますか?パッチについて話し合っている古いメールグループを見つけましたが、それについて他に多くを見つけることができません。

それで。マルチコアセオラ処理は可能ですか?それを行うには何を使用すればよいですか?

参考のために:

avconv -y -i big_buck_bunny_720p_surround.avi -vcodec libtheora -qscale 10 -bufsize 20M -same_quant -acodec libvorbis -ac 2 -ar 44100 -ab 128k buck.ogv
4

1 に答える 1

1

libtheoraの公式サイトで提供されているマルチスレッド バージョンへのリンクがあります。

theora-multithread: SMP/マルチコア システム用に最適化された、古いエンコーダーに基づく古い、もう開発されていない、実験的なエンコーダー ライブラリ: theora-multithread svn。詳細については、ここですべてのスレッドを参照してください: Multi-Thread Theora Encoder

そのバージョンをビルドしてから、それを使用して ffmpeg をビルドしてみてください。新しいバージョンの ffmpeg でビルドできない場合は、古いバージョンのコードを試してください。

ffmpeg2theoraのマルチスレッド バージョンもあります。

于 2012-10-26T13:07:25.040 に答える