微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 消费类电子 > H.264集多项优势 成为行动装置视讯编码技术主流

H.264集多项优势 成为行动装置视讯编码技术主流

时间:04-03 来源:中电网 点击:

视讯压缩规格,对于多媒体影像播放相当重要,因此也是相关厂商的兵家必争之地,除显示技术外,规格之争往往牵涉到权利金实际利益,不过后者不在本文的探讨范围,此处仅就技术部分进行分析。

视讯压缩标准,通常由微软(Microsoft)、ITU与ISO/MPEG-Committee…等组织提出,而不同影像压缩技术,通常与当代主流媒体绑定。

例如,ITU先后制定了H.261、H.263与H.263++…等规格,ISO/MPEG-Committee也曾推出MPEG1/4技术,1993年MPEG1规格制定完成时,使用MPEG1压缩标准的VCD激光视盘规格也同时推出。1994年ITU与ISO/MPEG-Committee合作推出MPEG2/H.262规格,成为DVD激光视盘与ATSC广播系统所采用的压缩标准。

而在2002年,ITU与ISO/MPEG-Committee再度合作,推出H.264/MPEG-4-Part10规格,其压缩效能可达MPEG2的3倍,不过约略同时,微软也将其研发的WMV-9(VC-1)压缩技术,搭配Window Media player播放软件,在个人计算机平台大量使用。H.264与VC-1压缩技术在许多评比中都互有胜负,如果不以某项特性深入探究,可谓难分轩轾。

由于压缩格式与主流媒体绑定的特性,许多人都认为次世代的蓝光规格(Blu-Ray)为决定H.264与VC-1胜负关键,结果蓝光阵营宣布两者都支持。

但前文提及,新一代视讯需求,除了高流量、高分辨率应用外,因为网络串流播放与下载需求,低流量时,能够维持较佳质量(包含播放画质与传输错误率)视讯格式,会更符合全面性需求,在此点上,H.264就比VC-1有更大应用弹性,因此确立了H.264目前几乎全面胜出的领先地位。
H.264设计之初即考虑全面应用

H.264规格发起在2001年12月,ITU-T VCEG及ISO MPEG共同组成的联合视讯小组(Joint Video Term;JVT),研究并订定新的视讯压缩格式,此新格式在ITU-T组织里称为H.264,而ISO组织中,则加入MPEG-4 Part-10(ISO/IEC 14496-10)并将其命名为Advanced Video Coding (AVC),现在通常合并称为H.264/AVC,不过H.264还是比较普遍的说法。

H.264标准在2003年3月正式制定出来。最初的目标是希望新的编/译码器,能够在比以前的视讯压缩标准(如MPEG2或H.263)低很多的编码率下,提供更好的视讯质量;同时,不需增加过多复杂的编码工具,以免相对应的硬件难以设计实现。另外1个目标是强化应用弹性,让H.264的应用范围,可从影像质量要求最低的视讯电话(video telephony)进而延伸到较高画质的串流视讯(streaming video),甚至目前最高画质的HD影片都能适用。

这是由于H.264设计时,与当时视讯压缩格式相比,首次加入视讯编码层(Video Coding Layer;VCL)与网络提取层(Network Abstraction Layer;NAL)概念,以往视讯标准着重在压缩效能部分,而H.264则包含一个内建的NAL网络协议适应层,藉由NAL来提供网络状态,让VCL有更好的编/译码弹性与纠错能力,使得H.264比一般压缩格式适用于多媒体串流(multimedia streaming)甚至行动电视(mobile TV)相关应用上。

H.264依据使用的编码种类,来提供3种编码架构(Profile),分别为Baseline Profile、Main Profile及Extension Profile,而其相对应的影片尺寸与位率层级由Level 1到Level 5.1,涵盖小画面与高分辨率画面应用范围。

Baseline Profile主要是着重于低位率的应用,如通讯用的视讯影像,因其运算复杂度较低,所以也适合用于个人随身的多媒体播放器。Main Profile则提供交错式影片(interlaced content)编码,通常适合应用在HDTV数字电视广播上,而且非常容易与在传统的MPEG2 Transport/Program Stream传送的H.264比特流整合。Extension Profile则有包含高抗错性编码工具(error resilient tools)特性,主要针对IPTV或是MOD(Multimedia On Demand)…等应用。

此外,为提供更细致的影像质量与细节,JVT于2004年7月时,再度订定了1个新的精确度扩展规范(fidelity range extensions profile;FRExt),此规范能提供更高的像素精度和支持更高的色度精度,提供更高精度视讯编码,以满足高分辨率影像需求,以避免舍弃过多的细节。

图说:H.264运作模式。

H.264先进压缩技术 解编码格式复杂多元

H.264视讯编码标准,由于加入许多传统标准没有的编码技巧,使得其展现出优越的压缩效能,与大幅提高编码效率。但这些编码技巧也带来运算复杂度与整体编码时间延长。

换言之,H.264为达到设计之初利用更低流量,却有更佳画质的需求,因此压缩率与算法都相当精密复杂,几个比较重要的特色如可变的区块编码(variable block size)、画面内预测(intra prediction)、多重参考画面(multiple reference frame)、分数点运动补偿(fraction pel motion compensation)、嵌入式去方块滤波器(in-loop deblock filter)、整数离散余弦转换(integer discrete cosine transform;IDCT)和新的熵值编码(content adaptive binary arithmetic code;CABAC),相当复杂。

而H.264处理模式因此也有许多步骤,基本上,1张影像画面开始会先被分割成相同大小且单位为16×16像素点的巨区块(macroblock),各巨区块间相互不重迭,接着将这些巨区块作画面内(intra)与画面间(inter)模式预测,这2种预测模式是用来消除空间及时间上的冗余,然后把预测区块与原区块相减后的剩余值去做转换、量化及熵编码。

由上述处理模式,进一步探究,H.264在压缩模式上,具有7种画面预测区块大小类型的巨区块,即16×16、16×8、8×16、8×8、8×4、4×8、4×4…等类型,而依照压缩软件设定的不同,参考画面最多可往前31张以及往后31张。接着进行画面预测运算。

其中画面内预测算法(又称框内预测)是利用周围邻近、与先前已编码过的点,来对目前区块作预测,这是传统标准没出现过,H.264所新增的编码技术,其做法主要是利用空间上的关连性,进而达到降低信息量目的。

其算法主要分成3个部分:亮度4×4区块(Intra4×4或I4)、亮度16×16区块(Intra16×16或I16 )及彩度8×8区块(Chroma8×8或C8 )。Intra4×4是个别预测每1个4×4大小的亮度区块,由于它分的区块较小,适合用来处理较重要的细节也就是画面较复杂的区域;而Intra16×16是处理1个完整的16×16亮度区块,相较于Intra4×4,适合用在较平滑的区域;Chroma8×8则是针对彩度方面鞔怼?br>
再者是画面间预测模式。动态影像的每张画面与其前后画面相关性是很大的,可以藉由参考先前的画面来预测目前画面,如此一来就不必储存每张画面信息,也可使传输的数据量大幅降低,这就是画面间预测的主要概念,利用画面间的预测,来节省时间上的冗余,使压缩率更为提升。

H.264算法会依照画面的复杂程度,来选取适合的区块大小,在运动复杂的区域选用较小区块,也就是说使用较多的移动向量来描述区域信息,换句话说,在平滑的区域选用较大区块,就可以用较少的移动向量来描述区域,如此可使在区块比对过程中减少误差,及在描述移动向量的位率间取得平衡。

此外,H.264的移动向量,可以精确到1/4像素,此点特性相当重要。因为在传统的视讯编码系统里面,为达到高压缩目的,往往在为了降低时间上的重复性,都会利用运动估测方式降低信息量,然而运动估测做法,也往往是编码系统中运算复杂度最高的部分。在H.264中,除在分数点的运动补偿采与先前标准一样的1/2像素点运动补偿外,另外增加了1/4 像素点运动补偿,大幅提升在时间轴上预测的准确性。

而在进行转换时,初始版本H.264的离散余弦变换(Discrete Cosine Transform;DCT)处理是以4×4矩阵为转换基本单元,采用整数作为转换系数,因此在进行反转换时,不会有采用小数运算方式的缺点,即还原后无法匹配的问题,让解编码的精确度可大幅提高。在量化技术上,H.264仅采用加法与乘法,没有除法运算,整数转换对硬件而言,运算速度不仅较浮点数快,且运算复杂度较低,能降低对应的译码硬件的制作成本。

H.264在针对量化过的转换系数数据方面,则提供了CAVLC(Context Adaptive Variable Length Coding)与CABAC(Context Adaptive Binary Arithmetic Coding) 2种编码方式。H.264为内容适应性(context-adaptive)编码技术,依据编码内容来统计某些码字(code-word)出现机率,而产生1组最适合于目前影像的编码表。换言之,可自动根据编码内容来统计特定代码出现机率,进而产生最适合于目前影像的编码表,明显与传统MPEG2/4的固定编码方式明显不同,可以有效提高压缩比,不过要使用额外的频宽来传送这些编码表。

CABAC的编码方式要比CAVLC来得复杂,但在二熵编码法中,CABAC能比CABLC节省10~15%位率。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top