我尝试将高分辨率视频转换为 2k。我使用了以下命令:
ffmpeg -i input_video.mp4 -vf scale=1920:1080 -c:v h264_nvenc -preset slow -b:v 8M output_video.mp4
根据top
和nvidia-semi
结果,我的 CPU 利用率达到最大,但 GPU 几乎没有使用。该ffmpeg
过程仅使用了大约 240 MiB 的 vram。
nvidia-smi dmon
确实显示了很多enc
活动。但是低 vram 使用率和高 CPU 利用率让我怀疑 ffmpeg 是否充分利用了我的 GPU。
nvidia-smi dmon
# gpu pwr gtemp mtemp sm mem enc dec jpg ofa mclk pclk
# Idx W C C % % % % % % MHz MHz
0 - 74 - 6 8 66 0 - - 3504 420
0 - 74 - 6 8 71 0 - - 3504 420
0 - 74 - 6 8 70 0 - - 3504 420
0 - 74 - 6 8 71 0 - - 3504 420
0 - 74 - 6 7 63 0 - - 3504 420
0 - 74 - 5 7 56 0 - - 3504 420
0 - 74 - 6 8 70 0 - - 3504 420
0 - 74 - 6 8 67 0 - - 3504 420
0 - 74 - 6 8 69 0 - - 3504 420
0 - 74 - 6 8 71 0 - - 3504 420
0 - 74 - 6 8 68 0 - - 3504 420
如果严格来说你不必使用命令行执行此操作,那么使用 HandBrake 可以省去很多麻烦:https://handbrake.fr/
我正在用它转码我的蓝光库,使用NVEnc(Nvidia 编码器),特别是 10 位 H.265 硬件加速,我备份了我的收藏,为了让编码器很好地完成工作,需要设置很多设置……
附注:音频和其他一些事情必须在 CPU 上完成,因此在我的配备 Nvidia 1060 和 i7-7700HQ CPU 的办公笔记本电脑上,CPU 负载达到 90-95% 是完全正常的。