视频通信中H.264在互联网抗误码问题中的应用
扫描二维码
随时随地手机看文章
随着宽带网络的发展,基于IP的视频应用得到了越来越多的关注。基于IP的视频应用,必须解决吞吐量,传输时延,时延抖动,误码率等四个QoS问题。但是,由于视频应用中大多采用了高压缩率的编码技术,其对传输误码的要求尤为苛刻,而Internet的本质是尽力而为的网络,不提供传输的QoS保证,因此提高视频应用对传输误码的抗干扰和恢复能力一直是多媒体通信领域的研究热点。
视频通信系统通常由五部分组成:视频源编码、复用/包封装/信道编码、信道传输、解复用/解包/信道解码和视频解码。
视频通信中的错误恢复由于以下原因显得尤为重要:(1)由于在源编码器中采用了空间和时间预测编码以及可变长编码(VLC),压缩的视频流对传输中的错误特别敏感; (2)视频源和网络环境通常是时变的,因此基于某些统计模型设计出一个“优化”的解决方案是很困难的,甚至是不可能的; (3)视频源码率通常很高,对于某些实时应用而言,编解码器不可能过于复杂。
传统上,抗误码的机制分为三类:在编码器和信道编码中引入冗余,使编码流对传输错误具有更强的抗干扰能力;解码器根据错误检测的结果对错误进行隐藏;通过编码器、传输信道和解码器之间进行交互,编码器根据检测到的错误信息调整自身的操作。后面讲针对错误恢复技术进行探讨。
编码器中的错误恢复编码错误恢复编码的设计旨在于使用最小的冗余来获得错误恢复的最大增益。有很多方法用于添加冗余比特,一些有益于防止错误扩散,另一些用于协助解码器通过错误监测更好地进行错误隐藏,还有一些目标在于保证基本级别的视频质量,以保证发生传输错误时图像质量不会极度恶化。 编码流对传输错误敏感的一个主要原因就是使用了时间预测和空间预测。一旦有误码发生,在解码器上重构的帧将会与原图像有较大差别,这样会导致使用这一帧作为参考帧的后续帧重构时产生错误。
阻止时域错误扩散的一个方法是周期的插入帧内编码的帧或宏块,对于实时应用,使用足够数量的帧内编码的宏块是一个有效的错误恢复工具。对于帧内编码宏块的数量和位置的确定,目前所知最好的方法是使用基于丢包率的率失真优化方案。另一个限制错误扩散的方法就是将数据分成多个段,仅在同一段内部进行时间和空间预测,即独立的段预测。 分层编码(LC)是指将视频编码成一个基本层和一个或多个加强层。基本层提供了一个较低的但可接受的质量,每个附加的加强层逐步地提高质量。
H.264中的网络适配层设计和新的错误恢复技术H.264 是由MPEG和ITU组成的联合视频专家组JVT推出的。H.264包含了 VCL(视频编码层)和NAL(网络抽象层)。VCL包括核心压缩引擎和块/宏块/片的语法级别定义,它被设计成尽可能地独立于网络。NAL将VCL产生的比特字符串适配到各种各样的网络和多元环境中,它覆盖了所有片级以上的语法级别,并包含了以下机制:包含对每个片解码时所需要的参数数据;防止了起始码冲突; 对附加增强信息(SEI)的支持;将编码片的比特字符串在基于比特流的网络上进行传送的实现框架。
将NAL 与VCL分离的主要目的有两个。首先,建议中定义了一个VCL信号处理与NAL传输的接口,这样就允许VCL和NAL工作在完全不同的处理器平台上。其次,VCL和NAL都被设计成适应于异质传输环境,网关不需要因为网络环境不同而对VCL比特流进行重构和重编码。由于在IP网络环境中,绝大部分视频应用所采用的网络协议层次是RTP/UDP/IP,因此在以下描述中主要基于这个传输框架。下面首先对H.264中新增的三个错误恢复工具进行功能分析,然后分析NAL层的基本处理单元NALU以及它的RTP封装、聚合和拆分的方法。
H.264中的错误恢复工具H.264 包括了大量的错误恢复工具,其中帧内编码模式的内插、RPS和数据分割等工具,已应用于以前的视频压缩方案中,故只介绍H.264对它们的改进,但有些工具是全新的或者是用一种创新的方法实现的,如参数集、灵活宏块排序(FMO)、冗余分片(RS),下面将作详细的分析。 H.264 对帧内编码模式内插的改进主要体现在,对何时使用、使用哪种级别、使用多少数量、在什么位置使用等问题的确定上。H.264使用RDO(率失真优化)的方法确定上述要素,经实验验证,这种方法取得了很好的效果。
对于RPS,H.264的可选择范围更广,并可以使用前向或后向的参考帧,且数量可多达15帧。 在H.264 中,使用了三种不同类型的数据分割:(1)帧头信息,包括宏块类型、量化参数和运动矢量,这种分割类型最重要,叫A型分割;(2)帧内分割,又称B型分割,包括帧内编码块模式和帧内系数,该型数据分割要求给定分片的A型分割有效,相对于帧间信息,帧内信息能更好地阻止漂移效应,因此它比帧间分割更为重要;(3)帧间分割,即C型分割,它仅包括帧间编码块模式和帧间系数,一般情况下它是编码分片的最大分区,帧间分割是最不重要的,它同样要求给定分片的A 型分割有效。