关键词:H.264 QoS 抗误码 一、前言
在过去的20年里,Internet、移动通信和多媒体通信获得了前所未有的发展,并获得了巨大的商业成功。移动通信和多媒体技术的融合正在加速进行,诸如网络架构、低功耗的集成电路、功能强大的数字信号处理芯片、高效的压缩算法等方面的研究成果不断涌现。面向无线网络和因特网的视频图像编码与传输技术已成为当今信息科学与技术的前沿课题。
2003年,ISO/IEC的运动图像专家组(MPEG)与ITU-T的视频编码专家组(VCEG)联手制定了最新的第三代视频编码标准H.264/AVC[1]。其主要目的就是为了提供更高的编码效率和更好的网络适应性。在相同重构图像质量下,与H.263+和MPEG-4 ASP标准相比,能节约50%的码流;采用分层模式,定义了视频编码层(VCL)和网络提取层(NAL),后者专为网络传输设计,能适应不同网络中的视频传输,进一步提高网络的“亲和性”。H.264引入了面向IP包的编码机制,有利于网络中的分组传输,支持网络中视频的流媒体传输;具有较强的抗误码特性,特别适应丢包率高、干扰严重的无线视频传输的要求。
二、视频通信容错算法的回顾
目前视频编码压缩标准主要有MPEG-x和H.26x两大系列,这些压缩算法都是基于宏块的[2],分别从三个方面改善编码效率:
(1)运动估计/运动补偿(MP/MC)消除视频时间冗余;
(2)图像差值的离散余弦变换(DCT)消除空间冗余;
(3)量化系数的可变长编码(VLC)消除统计冗余。
实践表明,通过上述方法,视频编码标准获得了极高的压缩效率。但压缩后的码流在Internet,特别是无线信道上的传输仍然存在着一些棘手的问题,其中比较突出的一点是:一方面,这些压缩后的码流对信道比特误码非常敏感;而另一方面,无线信道由于多径反射和衰落引入了大量的随机误码和突发误码,影响了码流的正常传输。尤其是当采用了VLC方案后,码流更加容易受到误码的影响,结果在解码端将失去与编码端的同步,导致在遇到下一个同步码字之前无法对VLC 码字进行正确的解码;同时预测编码技术会将错误扩散到整个视频序列中,极大地降低重建图像的质量。因此,为了实现良好质量的视频传输,必须结合实际应用信道的传输特性,采取一定的容错措施。
根据在视频传输系统中位置的不同,容错算法[3]主要可分为基于编码器的容错算法,基于解码器的容错算法和基于反馈信道的容错算法。其中:
(1)基于编码器的容错算法,通过再编码比特流中添加冗余信息,这些冗余信息被添加在信源或信道编码器中,降低了编码的效率,增加了实现的复杂度,以换取编码的容错性能,大致包括:分层编码、多描述编码、独立分段编码、再同步编码和前向纠错编码(FEC)等。
(2)基于解码器的容错算法,是指利用被损坏的宏块与其相邻的宏块之间的相关性来完成恢复工作的,这部分工作包括错误检测和错误恢复。对于错误的检测,一般采用针对语法的检错和嵌入数据的检错;对于错误恢复,可采用时域和空域的错误隐藏方法。
(3)基于反馈信道的容错算法,指利用解码器获得误码信息,并通过反馈信道,传送给编码器进行误码处理的一种方式。主要包括:误码跟踪,有条件的ARQ,帧内/帧间编码模式选择和参考图像选择模式等。