3

ffmpeg を使用して、多くの avi ファイル (100 以上) を mp4 に変換する必要があります。このようなバッチファイルを作成しましたが、動作します。

ffmpeg.exe -i "A.avi" -s 320x240 "A.mp4"
ffmpeg.exe -i "B.avi" -s 320x240 "B.mp4"
ffmpeg.exe -i "C.avi" -s 320x240 "C.mp4"
ffmpeg.exe -i "D.avi" -s 320x240 "D.mp4"
...

問題は、それらが同時に発生するのではなく、順番に発生するため、時間がかかりすぎることです。私のCPUは8コア、64ビット、8G RAMなので、できるだけ同時に実行したほうがいいと思います。私は何をすべきか?

4

1 に答える 1

1

パラメータでffmpegが使用できるスレッドの最大数を設定できますが-threads、これはCPUを完全に使用することを保証するものではありません。

ffmpeg -i ... -threads 8 ...

バッチ スクリプトから複数のトランスコード ジョブを並行して実行したくない場合は、startコマンドを使用してそれらを開始してみてください。100 を超えるジョブがあるため、並行して実行できる小さなバッチ スクリプトに分割することをお勧めします。

Start_all.bat:

start batch_1.bat
start batch_2.bat

Batch_1.bat

ffmpeg -i ...
ffmpeg -i ...
ffmpeg -i ...    

Batch_2.bat

ffmpeg -i ...
ffmpeg -i ...
ffmpeg -i ...    
于 2013-06-23T11:26:25.237 に答える