PureVideo的对手来了——AVIVO视频加速技术解析
技术大讲堂
一向以高静态画质、高视频播放质量为炫耀资本的ATi显卡,在NVIDIA发布支持PureVideo技术的NV4X系列显卡之后,一下子失去了往日的荣光。不过,在今年10月5日,ATi发布Radeon X1000系列显卡时,我们又看到了一个新的名词——AVIVO。看来,不甘雌伏的ATi拿出了自己的“法宝”,PureVideo的对手来了。
A平台还是A计划?
AVIVO就是Advanced VIVO的缩写,即高级视频输入输出。和我们通说的VIVO相比,它的变化就在Advanced这个词语上。从ATi对AVIVO的介绍中可以看出,AVIVO不仅代表了一种显示方面的技术,它更像是一个平台。
从逻辑架构来看,AVIVO平台是一条包含视频采集、编码、解码、处理和显示等五个环节的Video Pipeline(视频流水线)。而从硬件架构来说,AVIVO则包括具备AVIVO能力的视频捕捉卡和显卡。例如,只要采用ATi Theater 550芯片的产品,包括ATi自家的HDTV Wonder,都是符合AVIVO标准的视频捕捉卡。而符合AVIVO标准的显卡,则当数最新发布的Radeon X1000系列产品。
在PC平台上,目前微软倡导的媒体中心PC越来越受到消费领域的关注,ATi适时推出AVIVO平台也正是这种思路的延伸。从本质上来说,AVIVO就是媒体中心PC领域的迅驰,它不仅是一个A平台,还是一个有着长远目光的A计划。

视频捕捉的特色
作为视频处理流水线的第一道环节,视频捕捉的重要性自然非同小可。不管信号源是数字信号还是模拟信号,只有高质量的捕捉才有后面回放的优秀表现。在视频捕捉部分,AVIVO具备五个特色:1.自动增益控制;2.高级3D梳状滤波器;3.12bit模数转换;4.硬件降噪;5.多路消隐。
首先值得注意的是3D梳状滤波器的引入。色彩领域的光学三原色是红、绿、蓝,但在模拟视频信号中,却不是用三原色来传递信号。这是因为要考虑频带压缩、减少干扰对图像信号的影响,因此信号在传输过程中是以一个亮度信号和两个色差信号的形式存在。
众所周知,模拟信号是连续的波形信号(可以想象成正、余弦的那种波形),这种信号在传播时,亮度信号和色差信号都是调制在波形上。在视频捕捉部分,我们就需要对亮度信号和色差信号(以下简称Y/C信号)进行分离。分离的方法很多,梳状滤波就是其中之一。
小知识:3D梳状滤波
最原始的滤波方法是只允许色度信号通过或亮度信号通过,以此来分离Y/C信号,这种色度和亮度的分离不够彻底。因此,人们对同一行内相邻的采样点取平均值,尽量避免一些偶然误差,提高了色亮分离度,图像的水平清晰度从而得到了提高。
由这个思路拓展开来,除对行内的采样点进行运算外,如果把相邻列的采样点也一起进行运算,那么色/亮分离度就会更高,垂直清晰度也会得到提高。对于单帧画面而言,这种考虑行和列两个方向的2D梳状滤波就已经差不多了。但对于视频这种运动画面来说,如果再加上帧与帧之间的采样点,那么图形的清晰度就会更高,这就是3D梳状滤波。
AVIVO平台的视频捕捉部分将3D梳状滤波作为基本要求,显然是对自己捕捉芯片能力的信任,同时也保障了良好的图像画质。
12位的模数转换器也是AVIVO的自豪之处,模数转换器的位数决定着模数转换中采样的精度,位数越高则精度越高。更高的模数转换精度,将会保留输入信号中更多的细节,并对最后显示效果的平滑程度有帮助。不过,较高的模数转换精度也会带来更多需要处理的数据。
和前面两个特点相比,自动增益控制和硬件降噪属于更基本,也更有必要的技术。举个例子来讲,在老电视机上切换不同的频道,音量的差异可能很大,有的频道声如雷鸣,有的却如蚊虫低语,自动增益控制的含义就是对这些差异过大会影响主观感受的因素,进行适当的削减。至于硬件降噪,则是直接消除图像中的噪点。
在视频捕捉部分的特色中,绝大多数是针对模拟信号的技术,只有多路消隐是针对数字信号源的。在数字信号传输中,因为受到诸如建筑物和地形等因素的影响会产生规律性的回声或者信号扭曲,而多路消隐就是解决这种问题的技术。

视频编解码的进步
视频的编解码和视频捕捉是一对无法分开的“孪生兄弟”,要捕捉以模拟方式输入的信号,就必须对它进行编码,并用合适的数字视频格式保存好;而对于输入的数字信号,如果不符合用户在格式上的要求,那么就可能要先解码,然后再编码成合适的数字视频格式,这个“解码→再编码”的过程被称为转码。因为各种编码格式都是用于视频的存储和传输,因此在视频播放前我们还要对它们进行解码处理。
AVIVO在硬件层面上支持对H.264、MPEG2、MPEG4、WMV9、VC-1、DivX和WMV9 PMC的解码,并支持前五种类型的编码和转码。就目前而言,包括DVD在内的视频都属于MPEG2格式,AVIVO对MPEG2的完美支持保证了它在应用领域的领先地位(PureVideo对MPEG2编码支持不完全)。
AVIVO最大的亮点是对H.264的支持。在未来的高清视频中,H.264占有重要的地位,它可以提供比MPEG2更高的压缩率来缩减文件尺寸,也能在适当的码率下提供更高质量的视频。包括蓝光、HD-DVD在内的下一代载体都表示将考虑把H.264作为主流编码器。美中不足的是,Radeon X1000系列显卡对H.264的编解码并不能做到完全硬件支持。
从ATi公布的资料来看,H.264的解码对CPU的占用率是相当高的。不过,目前已经有测试表明,AVIVO技术可以大幅度降低CPU的占用率(降低幅度接近2/3),看来和PureVideo相比,AVIVO在对H.264的支持程度上将占据上风。


反交错与缩放
在视频流水线倒数第二个处理环节,ATi的AVIVO技术主要强调的是反交错和缩放两项技术。反交错是一项很重要的技术,由于历史的原因,我们在模拟显示器上使用过隔行显示这样一种很让人烦恼的模式,但为了兼容老设备,我们不可能直接转为全逐行的模式。于是在隔行和逐行之间,就产生了交错这样一种破坏画质的现象。
解决交错现象的基本办法主要有两个:Bob(单场插值)和Weave(场合并)。其中Bob 以两倍于画面的速率播放影片内容,而各个画面只显示某一场。Bob模式其实就是简单的复制,把奇数场的信号复制到偶数场去;Weave模式是将奇数场和偶数场在帧缓存中直接相加,即两个连续的场合并为一帧。
被AVIVO采用的Vector Adaptive反交错,其实就是上述两种方式的增强版。在帧缓冲区内多缓冲几个场,用Weave先将场还原为帧,然后对这几帧画面进行对比分析,最终可供选择的模式主要也就是三种,Bob、Weave或者对帧(场)图像进行加权平均计算后输出。从这一点来看,AVIVO和PureVideo的反交错方法几乎一样,差别只在具体算法的深度和算法的优化上。
缩放其实是很考验显卡的部分,缩放算法做得不好,在缩放以后就容易出现色斑和马赛克现象。在缩放部分,AVIVO采用的是高级视频缩放(Advanced Video Scaling)技术。

10bit显示引擎
AVIVO作为一个提供视频流水线的平台,前面所有工作的最终目的还是能获得一个良好的视频输出效果。在输出部分,AVIVO推出了全新的10bit显示引擎。这意味着到最终输出,我们将得到全程都是10bit的效果。
在显示部分,我们可能还会遇到色域校正、白平衡校正、色域空间的转换,比如从RGB到YPrPb等,这些过程全是10bit色彩的过程。如果说这些校正都不能让你感到吃惊的话,那么最终色彩能做到10bit输出,这就足以让大家吃惊了吧。
目前LCD面板还存在6bit与8bit共存的现象,大多数显卡的色彩输出也是以8bit方式进行。相比之下,AVIVO的10bit色彩输出就大大地向前迈进了一步。8bit输出意味着RGB三原色每个通道有28级色阶,也就是整体能显示1670万色。而10bit的色彩输出可以达到10亿色的输出,这个进步确实令人振奋。
在色彩上和2D显示上,ATi一直都有相当明显的优势。在同为8bit的年代,NVIDIA为了在色彩上追上ATi,苦心孤诣地设计出数字震动等调节功能,历经多次修正才基本和对手打平。这一次ATi利用10亿色输出又一次走在了前面。看来,在这色彩和显示效果上,NVIDIA还要加油才能赶上了。

结语
R300显示核心发布之后,ATi在显卡领域总是处于被动地位,到NV40面世时,NVIDIA又拿出PureVideo技术向ATi的传统优势项目叫板。这次Radeon X1000系列显卡的推出,在性能上尽管没有占到太大的便宜,但是通(4350801)过AVIVO,ATi还是有力地还击了对手。
AVIVO技术包含的要点不少,但是真正有重大意义的还是H.264和10bit显示引擎,其他技术只是老技术整理以后重新包装过而已。但从整体上来说,ATi推出AVIVO这个概念,无疑比NVIDIA的PureVideo更具备战略性眼光。