很多涉及到视频处理的软件,例如FFmpeg、HandBrake等,在处理视频尤其是大视频的时候,我们在处理速度、质量和文件大小三者之间总在不停的寻找着平衡,根据实际需求作取舍。
我们知道这些软件默认一般都是使用cpu的解码编码器,精细但速度慢,要想更快一些,使用显卡的解码编码器进行加速,速度会大大提升,但没有cpu那么的精细,以NVIDIA NVENC为例作对比如下作为参考:
NVENC 编码质量 vs 软件编码(x265):
对比项 | 软件编码(x265) | GPU编码(NVENC H.265) |
---|---|---|
速度 | 慢(30fps以内) | 快(可达100\~300fps)(rtx 4090举例) |
文件体积 | 小(压缩更高) | 大(体积约大15%\~30%) |
编码质量 | 更细致(可调参数多) | 一般,但 P1\~P4 仍可接受 |
多任务能力 | 差(CPU打满) | 强(GPU支持多任务转码) |
实际观感差异 | 微小(高码率下不明显) | 一般用户难区分 |
如果对画质细节没那么高要求,例如就是平常看的电影视频,果断用gpu加速吧;
如果对文件大小特别敏感,例如在线播放服务器硬盘空间和带宽费用高昂的情况下,不建议使用gpu加速,毕竟生成的文件更大。
原创文章,作者:平凡老赵,未经允许不得转载,出处:https://www.pfjsb.com/kfyw/cpu-gpu-transform-video.html