web-dev-qa-db-ja.com

FFmpegでサイズ変更

1920x1080pの解像度のビデオがあります。このビデオを再エンコードしたい(ビデオにはlibx264、オーディオにはaacを使用)。異なるビデオビットレート(1900 kbps)とオーディオビットレート(96 kbps)を使用しながら、最初に1280x720p(同じアスペクト比)にダウンスケールします。また、mkvからmp4に変更したいと思います。以前のエンコード設定(ビットレートとビデオサイズのみ)を変更したくありません。可変ビットレート(ビデオとオーディオ)を使用したいのですが、FFmpegに入れる方法がわかりません(最新バージョン3.0-Windows 7を使用しています)。より良い品質を得るために、可変ビットレートと一緒にCRF値を置くことは役に立ちますか(もしそうなら、どうすればそれを行うことができますか)?また、480pにダウンスケールしたい場合、どうすればそれを実行してアスペクト比を維持できますか?

もう一つ; 「maxrate」、「minrate」、「bufsize」とは何ですか?これらはどこで使用できますか? CRFがVBRを使用していることはわかったと思いますが、ある記事では上記が(VBRの場合)使用されていたため、ビットレート(およびビデオサイズ、可能なら)。

また、VBRモードが私が達成したい目標に適しているかどうかはわかりませんが、それが最良のモードであることを読みました。

お時間をいただきありがとうございます!

1
KLNy

あなたはここで多くの質問をしましたが、あなたはそれを考えすぎていると思います。

-crf-presetを使用するだけです。許容できる出力を提供する最高の-crf値と、忍耐力のある最低の-presetを使用します。詳細については、 FFmpeg Wiki:H.264ビデオエンコーディングガイド を参照してください。

スケーリングについては、 scale filter を次のように使用します:-vf scale=1280:-2または-vf scale=480:-2-2は、アスペクトを保持するようにフィルターに指示し、必要に応じて出力をわずかに調整して、x264で必要な2で割り切れるようにします。 YUV 4:2:0クロマサブサンプリングによる出力。

1
llogan