三大主流高清视频编解码技术浅析

出处:elecfans 发布于:2017-08-28 13:53:49

众所周知,相对于rmvb、DVD等标清视频,播放起来对于电脑硬件要求的提升是无疑的。

一、下面我们先来看看高清视频究竟从哪些方面提升了要求:

(一)首先便是视频流量的加大。这是为直观的一个提升元素,我们可以参照下面的表格,表格中只是简单的提出了“视频源”的流量对比,但其实高清视频的“不同格式”更决定了流量的不同。

可以看出,DVD视频的数据流量只有约9.5Mb/s,但是的蓝光可以达到40Mb/s以上,提升了4倍以上,无疑这是硬件配置提升的一个主要原因,因为需要处理的数据量增大了很多。

(二)其次便是编码格式的复杂度。我们知道每种编码格式都有其自身的算法,的算法可以将视频压缩到更小的体积,但是还原这种算法却需要更强的计算能力。H.264高清编码格式就是典型的代表。也许有些读者会碰到一些高清视频,但是播放要求并不高,那可能它就是采用一些简单的算法,比如Mpeg2的高清编码格式,但是遇到类似H.264编码格式,就会出现无法流畅播放的情况。

现在看来,H.264因为的算法取得了广泛的支持,它的算法虽然复杂,但是能获得的压缩同时视频细节损失很小,因此想要在未来流畅的播放高清视频,H.264编码视频是必须通过的一个考验。当然我们也不能忽视VC-1编码,它是微软力推的编码格式,也受到了广泛的支持,其要求虽然略低,但同样造成了目前很多主流电脑的“播放困难”。至于Mpeg2高清编码,其要求很低,未来发展的前景也不突出。

我们再来了解一下,这些编码在电脑上是如何被处理器的。视频编码的处理一般分为几个步骤,每个步骤会完成相应的任务,而解码的时候也会存在这些步骤,从而达成影片的顺利播放。那么谁来处理这些工作呢,早期在电脑上,解码播放的大部分步骤都是CPU来处理,也就是处理器软件解码(以下简称软解)播放,这也就是CPU占用率为什么会很高的原因。

简单的来说,目前任何一台主流电脑或者说哪怕几年前的电脑,使用处理器软解播放之前所有的标清视频都没有任何问题。而高清视频中,Mpeg2高清编码的视频要求,VC-1编码的视频其次,而要求的H.264高清视频可能会导致很多老式的电脑都无法流畅播放。

虽然现在硬件发展速度飞快,用户可以采用四核处理器把软解播放高清的CPU占用率控制在50%以下,但这类处理器的价格却很高,装机成本大幅增加。而双核处理器虽然便宜了不少,但软解播放的CPU占用率又可能会很高,甚至高到无法流畅播放的程度。

如果想要减轻CPU的负担,则必须有另一个配件来接手编码处理工作,显卡自然成为了选择,也就是用显卡里的引擎替代CPU完成视频解码的处理任务,从而释放CPU的负载。CPU作为通用处理器,进行视频解码这类事效率有限,但是显卡却可以直接硬件集成视频解码引擎,从而达到极高的功效。

二、高清视频的编码流程

那么究竟高清编码的步骤有哪些,哪些又是负载的部分呢?以H.264视频举例而言,分为四个主要部分(见下图)。图中的四个方块基本就是H.264解码的四个主要步骤,也是资源消耗的主要四个部分,其中又以步的“”为消耗运算资源,这方面远高于其他三步(简单的说,CAVLC/CABAC是H.264编码规范中两种不同的算法,际俏了提高压缩比,其中CABAC比CAVLC压缩率更高,但解码时自然也要求更高)。

三、高清视频的解码流程

我们下面来看看主流的3种编码格式,包括Mpeg2、VC-1、H.264的解码流程对比(见下图)。可以看出,几种编码格式还是有不少区别的,这也是造成几种编码格式要求不同的原因,H.264编码格式为复杂,因此系统要求,VC-1略有降低,但是也比Mpeg2高得多。

其它编码格式与H.264类似。

四、高清解码资源消耗分析

那么究竟哪个步骤为消耗CPU占用率呢?下面的测试对比应该能说明问题(见下图)。对比的视频包括Mpeg2和H.264(AVC),其中上面我们讲到的四个步骤都有涉及。显而易见,“流处理”是所有编码格式中为消耗处理器运算的部分,但是Mpeg2视频的这部分还并不会造成很大的困扰,因为CPU的占用率还不到2%。

但是对于H.264来说,问题就出现了,20Mb/s编码率的视频流处理过程就会达到不小的CPU占用率,40Mb/s的高编码率视频更为夸张,流处理的过程CPU占用率上升极快,加上别的处理,总CPU占用率很高毫不奇怪。

上文已经提到,这四个步骤的处理配件不同,主要是CPU和显卡。在之前,CPU因为处理了更多的步骤,所以占用率高居不下,因此如果显卡能承担越多的解码步骤,CPU就能释放更多的负载,以保证视频播放的流畅。

下图H.264的解码过程很好的说明了问题。如果显卡不承担任何步骤(图解行),那么CPU占用率很高,甚至根本无法流畅播放;如果显卡能实现后两个步骤的解码处理(图解第二行),CPU可以获得部分解放,但是对于比较关键的、负载的“流处理”,部分显卡还不能实现,所以CPU占用率有所下降,但是仍然偏高。

通过具有H.264硬件解码引擎的显卡,就可以完成H.264编码的全部4个处理步骤(图解第三行),也就是实现全程解码,这就是它们能让H.264高清视频播放的CPU占用率大幅度下降的根本原因。既然显卡完成了所有的高清解码处理,那么CPU自然就空闲了。而我们所谓的部分解码,就是CPU仍然承担一定的处理任务,因此占用率仍然要高出不少。

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

相关技术资料
广告
上传BOM文件: BOM文件
*公司名:
*联系人:
*手机号码:
QQ:
应用领域:

有效期:
OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:

0571-85317607

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!