H.264转码加速:NVENC大战Quick Sync

在GPU通用计算刚刚进入桌面平台时,NVIDIA以及AMD都把视频转码加速功能当作重点,因为这几乎是GPU计算带给普通消费者最直接、最有感触的功能了,比如MediaCoder、BadaBoom、MediaEspresso等软件都支持NVIDIA的CUDA加速以及AMD的Stream加速。

GPU转码加速的好处是速度快,但是画质也低了,无法与单纯的CPU转码相媲美,随着技术的进步,GPU转码的画质才慢慢提升上来。再往后Intel也加入战场,SNB架构的GPU部分增加了专用的QuickSync单元,无论转码速度还是画质都要比A/N两家的GPU加速效果要好。

AMD在最新一代的GCN架构中增加了专用的VCE(VideoEncodecEnigine)引擎,支持1080P60fps视频转码,而且支持完整的H.264规范(前一代转码只支持H.264Baseline),唯一的问题是软件支持度不够好,发布5个多月了才有MediaEspresso支持。

H.264转码加速:NVENC大战Quick Sync

AMD的VCE引擎

IvyBridge处理器中,Intel也将转码单元QuickSync做了升级,虽然Intel官方资料中并没有提及具体的变化,但是我们之前也做过测试,发现转码速度变快了。此外,IVB的QuickSync也统一到了MediaSDKAPI下。

H.264转码加速:NVENC大战Quick Sync

再有一个新选手就是NVIDIA的NVENC编码引擎了,它是Kepler架构新增的功能,按照NVIDIA给出的资料来看,NVENC比自家的CUDA编码还要优秀,因为它跟QuickSync一样属于是专用的编码加速单元,而CUDA加速则是比较通用的,速度上不如专用单元快。

H.264转码加速:NVENC大战Quick Sync

NVENC编码加速功能

早前我们也打算把NVENC编码加速专门测试一下,只是一直没能成行,不过首发测试中也做了MediaEspresso转码加速测试,GTX680转码一段视频需要32秒,GTX580和HD7970分别需要40、45秒,也就是在GPU计算性能更差的情况下,GTX680的转码速度依然要高于GTX580、HD7970,NVENC功不可没。

法国Hardware.fr网站最近做了详细的NVENC编码加速测试,并与IntelQuickSync做了对比,虽然没能对比AMD的VCE编码引擎(软件支持是AMD的软肋啊),但是本文的测试方法和结果依然值得推荐,特别是画质对比方面专业得多,小编受益匪浅啊。

测试软件及方法:

H.264转码加速:NVENC大战Quick Sync

MediaEspresso也有bug和限制,比如GOP固定限制,对比测试并非以其为主要手段

讯连科技的MediaEspresso6.5软件支持QuickSync以及NVENC加速。CPU为Corei5-3570K(HD4000显卡),主板为华硕P8Z77Pro-V。对比的显卡主要是GTX670、GTX680、GTX480,虽然GTX480是上上代的显卡了,不过CUDA编码加速实际上对显卡要求并不高,即便是GTX450与高端显卡的差距也非常小。

另外,软件编码使用的是Build2197版本的H.264,分别测试了1-pass和2-pass。

画质对比

画质对比值得着重说一下。平时我们做画质对比主要是用肉眼看,这种方法虽然直观一些,但是误差太大,而且不同的截图差别也不一样,不够有说服力。

Hardware.fr用的是PSNR和SSIM数值,PSNR(Peaksignal-to-noiseratio,峰值信号噪点比例)是信号强度与噪点强度的比值,可以用来衡量有损压缩编码过程中的失真度。而SSIM(structuralsimilarityindex,结构相似指数)也是用来衡量两张图片之间的相似度。

有兴趣的可以参考上面的维基百科解释研究一下,总之,PSNR和SSIM是科学的测量方法,要比肉眼查看可靠得多,说服力也足够强。

H.264转码加速:NVENC大战Quick Sync

上面就是几种编码方案的PSNR和SSIM结果。

虽然速度更快,但是NVENC引擎的转码画质与CUDA转码是一样的,丝毫没有降低。

上面的计算只是基于平均状况,并不是全部内容,再来看一下500张逐帧截图中的SSIM指数吧。

H.264转码加速:NVENC大战Quick Sync

这里只是一张图片,推荐去原文看对比,因为他们做的是网页特效,下面的六个选项是可以点击选中或者取消的,方便对比任意几种编码方案的结果,鼠标指上去还会显示各个方案的具体SSIM数值,这是单一截图展示不了的。

由于软件的Bug和限制,N卡和QuickSync转码的截图中每隔30帧就会出现一次剧烈波动(场景太复杂),0到187帧之间的场景容易压缩,因此SSIM比较稳定,188到243帧以及244到350帧之间波动就非常大,SSIM指下降的厉害。

虽然QuickSync在复杂场景中SSIM有所下降,但是依然要领先与NVIDIA显卡,H.2641-pass编码依然有明显优势。

那么实际画质是如何呢?来看一下317张截图的真实截图对比吧。

H.264转码加速:NVENC大战Quick Sync

这里依然去原文查看,因为他们作出了动态效果,最下面是各种编码方案的画质选择,点击左侧部分,转码后的截图就会出现在网页左边,右边则是另一种方案的画质截图,比如上图中我选择了原图与GTX670(NVENC)编码,效果就是这个样子。

(ps,这里有点瑕疵,出现了两个GTX670选项,实际上应该是一个GTX670和一个GTX680)

结果是:NVIDIAGPU加速编码的画质损失依然是最严重的,而最新的H.264编码做的比较好,特别是2-pass画质十分接近原始画质。

转码速度及功耗

使用的影片是720P分辨率的《阿凡达》,结果如下:

H.264转码加速:NVENC大战Quick Sync

(说下表格的数据,第一列是转码时间,之后是待机功耗,第三列是转码时的功耗,最后一列是功耗差值)

来看NVENC,其转码速度明显优于GTX480,性能高了133%之多。功耗方面,固定转码单元的GTX680比GTX480只低了21W,从差值上看也只有11W,并没有表现出比预期更明显的优势。

总的来看,QuickSync依然是最好的编码加速方案,功耗和转码性能上都排名第一。另外,H.2641-pass编码速度要比CPU还快,画质也高一些,而2-pass编码的速度不出意外地倒数第一,但是画质上傲视群雄。

H.264转码加速:NVENC大战Quick Sync

如果以W(功耗)/H(时间,小时)为基础来看(转码功耗乘以时间(s)再除以3600,上图中的法文符号”,”在英文中是”.”,也就是说上图中的数值是6.87、8.95这样的小数而非整数),QuickSync转码每小时消耗了0.83W电力,而GTX670、GTX680消耗的电力在3.10、3.24左右,其他方案消耗的就更高了,GTX480效费比最差。

总结:

原文的总结有三段,其实意思可以归纳为三句话:

无论转码速度还是转码效率,QuickSync依然是最佳的方案,NVIDIA的NVENC要胜过前代的CUDA方案,但还是比不过Intel。

H.264软件转码中1-pass速度要超过CPU转码,2-pass虽然速度最慢,但是画质是最好的,适合对画质有较高要求的场合。

至于AMD,技术上是好的,软件支持是杯具的。

泊祎回收网遵循行业规范,任何转载的稿件都会明确标注作者和来源;

发布者:泊祎回收网,转载请注明出处:https://www.huishou5.net/dianzi/134231.html

(0)
打赏 微信扫一扫 微信扫一扫
泊祎回收网泊祎回收网
上一篇 2021年7月23日
下一篇 2021年7月23日

相关推荐

电话

联系我们

1388-0022-916

在线咨询:点击这里给我发消息

邮件:1395700887@qq.com

工作时间:周一至周日,9:30-18:30,节假日无休

微信
微信
分享本页
返回顶部