90 分のビデオを数時間以内 (おそらく 2、3、または 4 時間程度) で変換できる、1080p から 720p への優れたコンバータについて何かアイデアはありますか?
ファイルの圧縮は H.264/MPEG-4 AVC です。
答え1
H.264を使い続けるなら、おそらく264ビットエンコーダーとして多くのアプリケーションに組み込まれていますが、最も顕著なのはFFmpeg「libx264」コーデック、またはハンドブレーキ。
x264 は高速かつ効率的であるという評判があります。速度は、たとえば「高速」と呼ばれるプリセットによって調整できます。プリセットの範囲は「超高速」から「非常に低速」までです。 を呼び出して x264 のヘルプを確認するとx264 --fullhelp
、プリセットのすべてのオプションが説明されています。
「超高速」のフラグは次のとおりです。処理時間を必要とする高度なエンコード機能を無効にします。「超高速」モードでのエンコードは、使用されるビットの点で効率が悪く、固定ビット レートでは品質が低下します。ただし、一般的にはそれほど問題にはなりません。
--no-8x8dct --aq-mode 0 --b-adapt 0
--bframes 0 --no-cabac --no-deblock
--no-mbtree --me dia --no-mixed-refs
--partitions none --rc-lookahead 0 --ref 1
--scenecut 0 --subme 0 --trellis 0
--no-weightb --weightp 0
ハンドブレーキ
たとえば、「詳細」の下を調べるときに、Handbrake のオプション文字列に入力できます。
この文字列をコピーするだけで、ここ:
ref=1:bframes=0:cabac=0:8x8dct=0:weightp=0:me=dia:subq=0:rc-lookahead=0:analyse=none:trellis=0:aq-mode=0:no-deblock=1:scenecut=0:mbtree=0
画像設定に移動してサイズを変更することを忘れないでください。
FFmpeg
または、適切なプリセットを呼び出すだけで、FFmpeg で使用できます。
ffmpeg -i input.mp4 -vcodec libx264 -preset ultrafast -s 1280x720 -acodec copy output.mp4
答え2
私が使うハンドブレーキ私のすべての変換では、これがどのくらい速いかはわかりません。
答え3
リアルタイム速度以上の速度を求めている場合は、エンコードに GPU を使用することを検討してください。
「H.264 エンコーディング - CPU 対 GPU: Nvidia CUDA、AMD Stream、Intel MediaSDK、x264」という記事を読んで興味を持つかもしれません。
GPU ベースのエンコーダーから得られる品質は、x264 が提供できる品質には遠く及びません (フレームが完全に破壊されることもあります)。ただし、x264 で構成できる最速の設定を使用している場合は、その結果を比較する価値があるかもしれません。