使用 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 不支持。您必须选择比特率或恒定速率因子。

相关内容