泡泡网显卡频道 PCPOP首页      /      显卡     /      评测    /    正文

关公战秦琼!4套CPU/GPU决战视频转码

三款视频转码软件的速度差异分析

    据了解,目前的CUDA Encoder主要模块实际上是由NVIDIA自己编写的,然后透过CUDA API的方式把这些模块提供给诸如Cyberlink、Nero、BIT等公司完成软件整合。因此在输出码率相近、设置相同的情况下,几款CUDA转码软件输出视频的画质不会有太大区别,而且“编码”效率也应该是差不多的。

    因此,我们完全不用担心视频输出画质的问题,只关心速度就够了。由于编码器相同,那么转码软件的速度差异就主要体现在视频“解码”这一环节了。


MediaCoder的视频编码和分辨率缩放由GPU完成,视频解码依然靠CPU

    Badaboom使用CUDA进行解码,因此对CPU的要求很低,如果使用高端显卡则速度会有很大的提升;MediaCoder和MediaShow使用CPU进行软解码,对于CPU的依赖性非常大,由于MediaCoder还使用GPU进行分辨率缩放处理,因此对于GPU的利用率比MediaShow更高,进一步减轻了CPU的负担消除瓶颈,速度自然更快。


Badaboom视频解码和编码都由GPU完成

    也许有人会问,视频解码很消耗资源吗?现在随便一颗主流双核都可以软解高清视频,解码也会成为速度瓶颈?话是没错,但要知道我们平常看片是用24fps 1X普通倍速解码视频,此时的CPU占用率不会很高,但在视频转换过程中,解码速度动辄上百帧,此时CPU资源消耗就不容小视了。转码速度越快、解码所消耗的CPU资源就越高,因此解码器效率的高低会对转码速度造成很大幅度的影响。

视频转码的瓶颈在哪?CUDA加速的奥秘解析:

    通过任务管理器监控MediaCoder的几大模块,我们就可以进一步了解CUDA是如何加速视频转换的。下图就是MediaCoder在视频转换过程中的四大进程:


纯CPU转码时各进程所占CPU百分比

    可以看到,CPU占用率最高的就是X264编码器,达80-90%,解码器次之10%左右,而主程序和音频编码器在前两者面前几乎就是微不足道的。


开启CUDA转码时各进程所占CPU百分比

    显而易见,编码器是视频转换过程最大的瓶颈,将X264编码器换为CUDA Encoder之后,编码器本身的CPU占用率下降不少,而解码器的CPU占用率上升不少,也就是说编码器节省出来不少CPU资源给解码器用,此消彼长之后达到了一个更为合理的平衡状态。由于GPU参与运算,消除了解码器等待编码器这一严重的瓶颈,从而使得转码效率大大提高。

0人已赞

关注我们

泡泡网

手机扫码关注