探索高清解码背后的秘密

来源 :微型计算机 | 被引量 : 0次 | 上传用户:zybmc
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  依靠丰富的网络资源,高清视频回放已经成为当今电脑不可或缺的应用之一。由于高清节目的分辨率数倍于标清节目,所以要将它们压缩到可以接受的体积必须借助极为复杂的算法,这就意味着无论是编码过程还是解码过程对于大多数计算机来说都是一项相当严峻的考验。于是,如何在入门级配置情况下实现高清视频的流畅播放,就成了业界的焦点所在。
  在VCD和DVD刚问世的时候,许多厂商推出了各种各样硬件加速卡来解决VCD和DVD的回放问题。而在高清时代,硬件加速、高清解码的重任都被显卡承担了下来。自NVIDIAGeForce 6800显卡问世以后,整个显卡市场的战火蔓延到了高清视频加速领域,伴随着每一次显示芯片的更迭,显卡的高清视频加速功能也在不断进化。如今NVIDIA的PureVideo和ATI(现AMD,下同)的AVIVO都已经发展到了第二代,即便是英特尔的集成显卡也引入了被称作ClearVideo的视频加速功能。在这些硬件解码技术的帮助下,就算是主流配置的电脑也可以流畅播放720p的高清视频。
  不过话说回来,你可以别以为各大厂商的高清硬件加速功能都差不多;事实上NVIDIA、ATI和英特尔所选择的高清解码之路截然不同……不同的技术架构、不同的侧重方向以及不同的实现方式,这就导致PureVideo、AVIVO、ClearVideo三者之间巨大的差异,究竟--在高清视频背后隐藏有多少奥秘,未来高清加速又将何去何从?这就是我们今天要讨论的问题,不过在进入主题之前,我们还要先去了解一下各种高清标准,就权当主菜之前的热身吧。
  
  高清编码标准,谁是真正的硬件杀手?
  
  对高清视频有所了解的朋友们一定都听说过H.264、VC-1、MPEG-2等这些高清视频的专有名词吧。和所有的IT技术一样,业界对于高清视频的编码标准也有着较大的分歧,由此派生出了各种互不兼容的视频编码方案。在蓝光视频光盘和网络上,高清视频以MPEG-2 TS、H.264、VC-1等编码标准为主,其中MPEG-2 TS由于压缩比过低在竞争中处于劣势,很有可能退出新一轮视频编码标准的竞争,而VC-1和H.264将会是日后使用最为广泛的高清视频编码标准。
  从上面的介绍中我们不难看出,VC-1和H 264是当之无愧的硬件杀手,即便是双核Core 2 Duo E6300在不超频的情况下也可能被高码率的VC-1和H_264编码“秒杀”。虽然MPEG-2对于硬件来说要温和了许多,但是它的体积将会严重挑战小硬盘的“肚量”。
  面对三大高清标准的挑战,业界最大的三家显示芯片厂商又选择了怎样的应对之道呢?热身之后,主菜登场……
  
  硬件视频解码技术,并不是想象的“万金油”
  
  在众多显卡的宣传资料上,你不难发现似乎三家显示芯片厂商的硬件视频加速技术都像“万金油”一样好用,资料上说它们可以解决所有的视频编码问题。事实上又是怎么一回事呢?
  其实硬件视频加速技术很多时候只能支持少数几个标准的硬件加速,在播放视频的过程中更是需要播放器和编码器的配合,才能对特定编码标准进行硬件加速。而PureVideo、AVIVO和ClearVideo之间能够加速的编码标准也有着巨大的差异。
  
  Intel的ClearVideo技术
  作为整合图形领域份额最多的厂商,英特尔在GMAX3000整合图形核心中带来了称作ClearVideo的视频加速技术,由于整合图形核心面积和功耗所限,ClearVIdeo只能提供对MPEG-2视频标准的iDCT硬件加速。这就意味着我们在回放H.264或者VC-1视频的时候,整合图形核心的硬件加速功能(从某种程度上来说)完全派不上用场。据Intel透露,ClearVideo硬件解码加速功能在整合图形核心内部并没有单独的逻辑单元,而是通过对图形核心的矩阵单元重新编程来实现的。这意味着相对于PureVideo和AVIVO来说,C|earVideo技术的实现成本几乎可以忽略不计。在未来,英特尔也很可能通过改进驱动让ClearVide0技术支持H.264或者VC-1硬件解码加速,但当前来看ClearVideo与其它技术相比并不具备什么优势。在媒体播放器市场LWinDVD 7*、PowerDVD7等播放软件均支持ClearVideo的加速功能。
  
  NVlDIA的PureVideo技术
  第一代PureVide0技术出现在GeForce 6800显卡上面,但当时的PureVideo技术只能提供MPEG-2标清和高清视频的解码加速。到了GeForce 7系列显卡时,PureVideo被显著加强,NVIDIA为其加入了对H.264和VC-1视频编码的加速功能,并且开始提供对HDCP的支持。在GeForce8600/850018400显卡上,PureVide0技术被再度加强,这些显示核心内部的PureVide0逻辑单元被加入了BSP Engine(BitstreamStream ProcessorEngine)。
  在实际测试中,第二代PureVideo硬件视频加速引擎配合Core2 Duo E6600处理器,在回放20Mbps码率的H.264视频时CPU占用率始终低于10%,这与之前PureVideo 1~1.5版本时高达30-40%的CPU占用率形成了鲜明对比。值得注意的是,目前NVIDIA最高端的GeForce 8800系列显卡并没有集成第二代PuteVideo视频引擎(其中的原因很多人认为是,用户在选择高端显卡的时候一般都会选择商性能处理器,所PACPU性能不会是瓶颈,而高端显卡主要偏重于3D方面)。
  在软件支持度方面,NVIDIA拥有自己的PureVideo视频编码引擎;第三方播放软件如WinDVD 7、PowerDVD 7以及WMP 11都对PureVideo提供了支持。
  
  ATI的AVIVO技术
  ATI在Radeon X1000系列显卡中加入TAVIVO视频加速技术,AVIV0和PureVideo一样都是通过GPU内部的专用单元来实现的。第一代的AVIVO视频加速技术就已经直接提供了对H.264、MPEG2和VC-1的解码支持。但根据显卡档次的不同,ATI选择性地开放了硬件加速功能,例如Radeon x1300仅提供720p分辨率的硬件解码加速。第一代AVIVO技术和NVIDIA PureVideo 1-1.5技术相比,在视频解码性能上略胜一筹——AVIVO有着更低的CPU占用率,以及具各视频编码功能等。
  今年夏天ATI又陆续发布了Radeon HD 2000系列,AVIVO也升级到TAVIVO HD。此时为了便于区分,ATI将Radeon HD 2900、Radeon X1000系列显卡内部 的视频加速引擎称作AVP(Advance Video Processo~高级视频处理器),而最新研发的被运用在RadeonHD 2600/2400显卡上的视频加速引擎被称作了UVD(Unified Video Decoder,通用视频解码器)。
  和AVP相比,UVD和NVIDIA第二代PureVideo引擎一样都是真正意义上全面的硬件视频加速方案。UVD同样可以实现(H_264和VC-1视频)在熵编码阶段就介入对其进行硬件解码,进而实现超低的CPU占用率。
  软件支持方面,AVIVO已被WinDVD 7、PowerDVD7以及WMP 11等主流播放器所支持,ATI更是提供了AVIVOHD硬件加速编码器,为视频功能锦上添花。
  
  进阶阅读:加速能力与编解码过程的关系
  
  在上面的介绍中,我们已经对三家显示芯片厂商的技术有了一个大致的了解。下面我们再来重点谈谈不同的加--速架构会对最终结果产生怎样的影响,以及为什么会出现这样的情况。
  首先,让我们先来了解T视频加速的过程,这里我们用NVIDIA的H.264解码流程为例来介绍。
  首先是H.264视频解码层VCL(Video CodingLayer中的熵编码(Entropy coding)技术,该技术采用基于内容的自适应变长编码CAVLC(contex6basedAdaptive Variable Length Coding)与一致变字长编码CABAC(Context-based Adaptive Binary Arithmetic coding)两种关键编码方式。简单来说,(AVL)与CABAC就是H.264编码规范中的两种不同的算法,目的都是为了提高压缩比,其中CABAC的压缩率比CAVLC更高。CABAC是在H.264标准中新提出来的一种编码方式,目的是希望解决H.263?Annex E熵编码的不足;但话说回来,虽然CABAC很好地改进了之前的不足,但又再一次增加了计算量和复杂度。
  视频编码的最后一步是熵编码,因此,在解码过程中熵编码自然就变成了为第一步。H.264视频解码层VCL中的熵编码有很多用途,比方说用于量化变换系数、自适应块变换ABT(Adaptive Block Transform)、运动向量和其它编码信息的压缩技术中。而基于内容的自适应二进制算术编码主要是使编码和解码两边都能使用所有语法元素(变换系数、运动矢量)的概率模型,而这些计算恰恰是相当耗费资源的项目。因此,在解码的四个重要步骤当中,熵编码步骤是最消耗资源的。
  相关测试数据表明,在Without PV(关闭PureVideo硬件加速功能)模式下,CPU会负责视频解码的全部过程,此时CPU占用率会高达90%~100%;而使用PureVideo 2之后,由于CPU不再负责熵编码和逆变换,CPU占用率就能够降低到50%以下。
  结合到具体的产品上,在上文我们知道,第二代PureVideo和UVD最引人注目的便在于四个重要步骤全部由GPU进行处理,由此使得CPU占用率下降了很多。相关测试表明,使用上PureVideo 2或者UVD以后,整个视频解码过程基本不再依赖于CPU。当然,这样的工作模式不仅可以使CPU占用率下降,还能够提升系统性能(ATI的Radeon X2600/2400在处理H.264视频时CPU占用率甚至可以低于1%)。
  遗憾的是,当前英特尔ClearVideo硬件解码加速还不具备解码H.264等视频的功能。因此,使用Intel集成显卡来播放H.264编码或VC-1编码的高清视频节目时,不可避免地会给CPU带来巨大的计算压力,CPU使用率居高不下也就很好理解了。
  
  硬件加速功能的新舞台——也谈视频压缩
  
  三家显示芯片厂商除了在视频加速技术上的龙争虎斗之外,还在视频处理功能上展开了全面的较量。尽管PureVideo的问世早于ATI的AVIVO,但AVIVO却是首个提供硬件加速编码的芯片厂商。
  对于用户来说,高清视频摄录设备(HD DV)的普及是大势所趋。但是要对高清视频进行H264或者VC-1编码却是一件非常考验耐心的事情。完全采用软件压缩算法的H.264编码器,在Core2 Duo E6600上压缩1080p视频的速度还不到1FPS,这就意味着压缩一部影片需要一个漫长的等待过程!除此以外,由于H.264和VC-1问世不久,成熟可用的编码器也屈指可数,这在一定程度上限制了新一代编码标准和高清设备的普及速度。
  抓住高清编码契机的ATI在AVIVO问世初期就推出YAVIVOVideoConverter,通过这款软件用户能够显著提升视频编码速度,相对于传统的H.264编码器,ATI的AVIVO VideoConverter可以达到近2倍的性能提升。值得一提的是,新版本的AVIVO VideoConverter已经免费包含在了官方Catalvst驱动之中。
  除此之外,Intel的ClearVideo还首先提出了多视频流加速的概念——在ClearVideo技术的帮助下,Intel的整合图形核心能够在同一时间加速1个MPEG-2高清视频流和1个标清视频流,并且还能够实现叠加的画中画显示。这样的功能对于使用多头输出的用户来说很有吸引力。也许是看到了这—功能的巨大前景,NVIDIA在GeForce 860/8500GPU中也将多视频流画中画功能作为一个标准配置加人芯片当中,而ATI目前仍然没有提供相应的解决方案。
  
  未来,硬件视频加速何去何从?
  
  在我们深入了解了各家的硬件视频解码加速方案之--后,许多朋友可能会产生一个疑问——几乎所有硬件解码加速方案都以降低CPU占用率为根本目标,那么在日后四核甚至更多核心的CPU普及之后,这些硬件加速技术还有用武之地吗?
  这个问题要分两个方面来看。首先是尽管当前的硬件加速方案已经在很大程度上解决了高清视频回放的难题,但是高清视频并不仅仅是图像压缩技术——在处理视频信号的同时还要对高清视频附带的LPCM、DolbyTureHD等音频编码格式进行解码,这就仍然需要大量的CPU资源进行支撑。
  其二就是我们还处在一个高清和标清视频改朝换代的中间期,但新的技术又向我们走来。当我们刚为解决了Full HD(1920×1080p)问题而感到沾沾自喜的时候,各大电影发行公司正在酝酿新的4K标准(4096×21601,使用最高40bit的色彩精度,对于计算机系统来说无疑又将是一场梦魇。反过来说,CPU和GPU都暂时不会为“失业”的问题而苦恼,“各司其职”在今后相当长的一段时间内仍将是最好的选择。
其他文献
现在大家只花不到一百元就可以将数码设备的存储容量升级到GB级别,但存储卡的规格和接口种类繁多,对于拥有多种数码设备的现代人来说,几乎不可能做到一卡通用。举例来说,你的手机为了追求轻薄,所用的存储卡可能是microSD卡(TF卡),而你很早以前买的MP3播放器可能用的是MMC卡,数码相机可能用的是SD卡,同时你还需要一个闪存盘作为随身备份的工具。通常情况下,你只能为不同的应用分别购买不同的存储卡,但
随着sD卡的替代者——sDHc闪存卡的逐步上市,新一代数码相机、数码摄像机都开始支持这种大容量高速度的闪存卡。但是,早期支持SD卡的读卡器并不兼容sDHc卡,以至于用户买了sDHc卡居然没有读卡器可用。随着时间的推移市场上的品牌SDHC读卡器逐渐开始出现。    我不是粉饼盒宇瞻AM250读卡器    AM250是字瞻科技最新推出的读卡器,只有12.6mm厚,仅相当于一个女生的粉饼盒大小无论放在衣
这里是《微型计算机》与读者互动的平台,欢迎百家争鸣、畅所欲言。如果你关注lT行业发展,如果你眼界独到、观点犀利,欢迎在此留下你的声音。投稿邮箱:tiand@cniti.cn。    Windows 7会是下一个“小强”吗?  王 宏    纵观微软几代产品的历史,版本号为x.1的产品,往往拥有更为顽强的生命力,例如WindowsNT(v3.1、、Window s 98(v4.1)、WindowsX
Rome 775是九州风神继Winner6700之后推出的又一款针对Intel LGA 775平台的特色散热器,它不但采用了Winner6700的特色悬翼风扇,而且引入了九州风神的最新专利——DVT(De-Vibration Technology)减震技术。仔细看Rome 775的风扇设计,你就会发现它的与众不同之处。它的风扇不是直接用螺丝固定在风扇框上,而是通过四个橡胶钉来固定,这就是DVT减震
昂达9600GS0 384MB DDR3显卡基于65nm制程的G92核心,拥有96个流处理器并全面支持DirectX10和SM4.0,其默认杨c湿存频率达到600MHz/1800MHz。为了更好的控制核心温度,该显卡使用了大型热管散热器,散热效果更佳。显存方面,昂达9600GS0 384MBDDR3显卡采用了6颗现代1.0ns GDDR3颗粒,容量和位宽分别为384MB/192-bit。这款显卡的
自从价格大幅度下降到千元附近以后,GeForce g600 GT立即成为NVIDIA中端显卡产品线中的新一代明星。由于所采用的G94核心运用了新一代65纳米制程,功耗比以往降低了不少,各品牌厂家也很快推出了各种高规格版本的GeForce 96D0 GT那么,这些产品究竟有何特色,哪款性能最强,是否值得购买呢?微型计算机评测室收集了近期市场上的6款热门产品,为大家逐一进行介绍。    七彩虹iGAM
当一些人只是把GPhone当作是iPhone杀手时,谷歌却借由刚刚上市的T-Mobile G1手机向人们展示了它图谋移动互联网的野心,GPhone在这一市场中扮演的绝不是一条简单的鲶鱼……    广受关注的谷歌手机GPhone姗姗来迟。2008年9月23日,北美通信网络运营商T-Mobile召开了首款GPhone手机——G1的全球首映式!这款由HTC制造的手机,采用了谷歌和开放手机联盟(O p e
在上期的文章中,我们领略了“雪豹”10大诱人新功能中的5项(64位,GCD,OpenCL—新技术整装待发、玩转视频——QuickTime x、随心编辑——更强劲的PD支持、窗口缩放堆叠——改进的Expose以及更方便——增强的Stacks),本期文章中,我们将继续去探索“雪豹”的诱人之处。    六、人性化的趣味——中文输入法    Mac OS X是以单一版本支持多语言的方式发布,但其中文输入法
二和四的中间是什么?对处理器市场来说,这可不是单纯的加减乘除法……AMD三核产品的正式推出使得2008年整个处理器市场进入了又一个“激情燃烧的岁月”。    当地时间3月27日,AMD公司在美国正式发布三核羿龙处理器(Phenom X3),终于实现了在去年宣布这款产品时的诺言——要让三核处理器在2008年第一季度打入市场。戴尔、惠普和联想三大品牌整机巨头厂商在短短数日内先后推出或发布了相应的台式机
早在去年9月,世界上首款采用第二代垂直磁记录(PMR)技术的2.5英寸硬盘——希捷Momentus 5400.4就已经发布。由于同样采用第二代垂直磁记录技术的3.5英寸硬盘——Barracuda7200.11在性能上的提升比较明显,因此不少用户都对Momentus 5400.4颇为期待。但直到今年第一季度,该产品才正式上市铺货,让人望眼欲穿。  Momentus 5400.4共有4种容量可供选择,