众所周知,高清视频相关于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解码”最为耗费运算资源,这方面远高于其他三步(简略的说,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依然承当必定的处理使命,因而占用率依然要高出不少。