ご迷惑をおかけして申し訳ありませんが、私はある種の問題を抱えています。 HTML5ビデオを使用するWebサイトのために、76のmp4ファイルをwebmに変換する必要があります。私はmp4ファイルの10 Gbについて話している...私はffmpegにそれを行うように単純に頼むことができることを知っている:
ffmpeg -i input_file.mp4 output_file.webm
もちろん、私はそれを再帰的に行います:
find ./ -name '*.mp4' -exec bash -c 'ffmpeg -i "$0" "${0%%.mp4}.webm"' {} \;
私はインターネット上のどこかで見つけたものを試しました:
ffmpeg -i input_file.mp4 -cpu-used 4 -threads 8 output_file.webm
しかし、事は私が一週間もかからないことではないということです!!!何が間違っていますか?それをスピードアップする方法はありますか? oggに変換すると、速度が向上しますか?助けてください!!!
ビデオのトランスコードには時間がかかります。また、エンコードパラメータに関するより多くの知識が必要です。 ffmpegのデフォルトはあなたに適しているとは考えられず、使用可能な出力ファイルを作成することさえできません。
ここから始まります:
http://blog.pcode.nl/2010/10/17/encoding-webm-using-ffmpeg/
これらの設定は特定のaverageビットレート(3900kbitのビデオビットレート)にエンコードされるため、ビットレートにスパイクが生じます。
MP4とWebMは異なるビデオコーデックを使用するため、ショートカットはありません。ビデオをトランスコードする必要があります。
もちろん、エンコード速度は、フレームサイズ、フレームレート、品質設定によって大きく異なります。 720pエンコードの場合、過去数年間のCPUで約1:1(10時間で10時間のビデオ)をエンコードできると期待されるかもしれません。リンクにある例のように2パスABRエンコードを行うと、ほぼ2倍になります。
それを2倍にするか、半分にカットしますか?だから、それは行き止まりです..私はビットレートで遊ぶことはありません、私は品質やサイズに何を期待するのか分からない..私はこれに固執し、変換が終わるまでクライアントを保持するだろうと思います。
find ./ -name '*.mp4' -exec bash -c 'ffmpeg -i "$0" -vcodec libvpx -acodec libvorbis -cpu-used 5 -threads 8 "${0%%.mp4}.webm"' {} \;
私は将来のユーザーのためにそれを投稿しています、実際には速度を上げましたが、私のCPUは地獄のように動作しています:各コアで60から80%!今では時間がかからないと思います:6日や7日ではなく3日です。壊れないことを願っています。^ _ ^
とにかくありがとう!
編集:LordNeckbeardとneon_overloadからのコメントの後にスイッチ-sameqを削除しました -sameqは同じ「品質」を意味しません