Cudaによる高品質圧縮

Cudaによる高品質圧縮

変換したい

ffmpeg -i input.mp4 -maxrate 63317762 -bufsize 63317762 -map_metadata -1 -vcodec libx265 -c:a copy -crf 28 -color_range 2 output.mp4

変換プロセスを高速化するために cuda を使用するコマンドに変換します。

私は試した

ffmpeg.exe -hwaccel cuvid -i input.mp4 -pix_fmt p010le -c:v hevc_nvenc -preset slow -rc vbr_hq -b:v 6M -maxrate:v 63317762 -bufsize:v 63317762 -c:a aac output.mp4

そしてそれはうまくいかなかった。

私は試した

ffmpeg.exe -hwaccel cuvid -i input.mp4 -c:v hevc_nvenc -preset slow -rc vbr_hq -b:v 6M -maxrate:v 63317762 -bufsize:v 63317762 -c:a aac output.mp4

動作しましたが、ビデオのビットレートは 6M に設定されました。

ffmpeg に、63317762 バイトまでのコンテンツに基づいて推測してもらいたいです。品質とビットレートの適切なトレードオフですが、63317762 バイト未満で、目に見えるブロックの構築やぼやけがないものが必要です。

そしてcuda付き。

どのコマンドがそれを実行しますか?

答え1

FFMpeg はレート制御を行いません。すべてのコーデック実装には独自のレート制御があります。Ffmpeg は、コマンド ラインから選択したエンコーダーにパラメーターを渡すだけです。x264 は制限付き CRF モードをサポートしています。Nvenc はサポートしていません。ビットレートまたは一定のレート係数を選択する必要があります。

関連情報