北京世纪博冠科技发展有限公司 首页 联系我们
首页 公司简介 产品介绍 解决方案 技术支持 联系我们
264的技术优势及其在H.323系统中的应用

一、引言
    近年来,随着我国通信网络基础设施的快速建设,视讯业务由于可以为处于多点的与会者提供音视频等多种信息,节省大量费用,提高工作效率,因而发展迅速,并有望成为 NGN 的主要业务。视讯会议系统从产生至今,发展了多种适于各类通信网络的系统,目前传输多媒体信息的主要有 H.323 、 H.324 和 H.320 等系统。 IP 技术的开放性特点使得它非常适合承载多种业务,随着 IP 的安全和 QoS 等问题的逐步解决,以 IP 作为承载网的优势将更加明显,下一代网络也将采用 IP 技术作为承载网技术。因此,本文以适用于在 IP 网上提供多媒体业务的 H.323 系统为主进行阐述。 H.264 是由 JVT 为实现视频的更高压缩比,更好的图像质量和良好的网络适应性而提出的新的视频编解码标准。事实证明, H.264 编码更加节省码流,它内在的抗丢包、抗误码能力和良好网络适应性使它非常适于 IP 传输, H.264 有望成为 H.323 系统中首选的视频标准。
    H.323 系统对视频编解码标准提出了以下三个主要要求:
( 1 )一些 IP 网络接入方式如 xDSL 可提供的带宽有限,除去音频、数据占用的带宽,传输视频的可用带宽就更少,这就要求视频编解码压缩率高,这样就可以在一定的比特率下具有更好的图像质量。
( 2 )抗丢包性能和抗误码性能好,适应各种网络环境,包括丢包和误码严重的无线网络。
( 3 )网络适应性好,便于视频流在网络中传输。

二、 H.264 适于 H.323 系统的三个技术优势

    H.264 在制定时充分考虑了多媒体通信对视频编解码的各种要求,并借鉴了以往视频标准的研究成果,因而具有明显的优势。以下将结合 H.323 系统对视频编解码技术的要求,阐述 H.264 的三个优势。

1. 压缩率和图像质量方面

    对传统的帧内预测、帧间预测、变换编码和熵编码等算法的改进,使 H.264 的编码效率和图像质量在以往标准的基础上进一步提高。
    ( 1 )可变块大小:帧间预测时可以灵活选择块的大小。在宏块( MB )划分上 H.264 采用了 16 × 16 , 16 × 8 , 8 × 16 , 8 × 8 四种模式;当划分为 8 × 8 模式时,又可进一步采用 8 × 4 、 4 × 8 、 4 × 4 三种子宏块划分模式进一步划分,这样可以使运动物体的划分更加精确,减小预测误差,提高编码效率。帧内预测一般采取两种亮度预测模式: Intra_4 × 4 和 Intra_16 × 16 。 Intra_4 × 4 适合图像中细节丰富的区域,而 Intra_16 × 16 模式更适合粗糙的图像区域。
    ( 2 )高精度运动估值:在 H.264 中亮度信号运动补偿预测的精度是 1/4 像素。如果运动矢量指向参考图像的整像素位置,预测值就是该位置上参考图像像素的值;否则使用 6 阶 FIR 滤波器的线性内插获得 1/2 像素位置的预测值,通过取整数和 1/2 像素位置像素值均值的方式获得 1/4 像素位置的值。显然采用高精度运动估计会进一步减小帧间预测误差。
    ( 3 )多参考帧运动估值:每一个 M × N 亮度块都要经过运动补偿预测得到运动矢量和参考图像索引,子宏块中的每个子宏块划分都会有不同的运动矢量。选择参考图像过程是在子宏块层次上进行的,因而一个子宏块中的多个子宏块划分在预测时使用相同的参考图像,而同一个 slice 的多个子宏块之间选择的参考图像可以不同,这就是多参考帧运动估值。
    ( 4 )参考图像的选取更加灵活:参考图像甚至可以是采用双向预测编码方式的图像,这就允许选取与当前图像更加匹配的图像为参考图像进行预测,从而可以减小预测误差。
    ( 5 )加权预测:允许编码器以一定的系数对运动补偿预测值进行加权,从而在一定的场景下可以提高图像质量。
    ( 6 )运动补偿循环内的消除块效应滤波器:为消除在预测和变换过程中引入的块效应, H.264 也采用了消除块效应滤波器,但不同的是 H.264 的消除块效应滤波器位于运动估计循环内部,因而可以利用消除块效应以后的图像去预测其他图像的运动,从而进一步提高预测精度。

2. 抗丢包和抗误码方面

    参数集、片的使用、 FMO 、冗余片等关键技术的使用可以大大提高系统的抗丢包和抗误码性能。
    ( 1 )参数集:参数集及其灵活的传送方式会大大降低因关键的头信息丢失而造成错误发生的可能。为保证参数集可靠地到达解码器端,可以采用重发的方式多次发送同一参数集,或传送多个参数集。
    ( 2 )片( slice )的使用:图像可以划分成一个或几个片。将图像划分为多个片,当某一片不能正常解码时的空间视觉影响就会大大降低,而且片还提供了重同步点。
    ( 3 ) PAFF 和 MBAFF :当对隔行扫描图像进行编码时,由于两个场之间存在较大的扫描间隔,这样,对运动图像来说帧中相邻两行的空间相关性相对于逐行扫描时就会减小,这时对两个场分别进行编码会更节省码流。对帧来说,存在三种可选的编码方式,将两场合并作为一帧进行编码或将两场分别编码或将两场合并起来作为一帧,但不同的是将帧中垂直相邻的两个宏块合并为宏块对进行编码。前两种称为 PAFF 编码,对运动区域进行编码时场方式有效,非运动区域由于相邻两行有较大的相关性,因而帧方式会更有效。当图像同时存在运动区域和非运动区域时,在 MB 层次上,对运动区域采取场方式,对非运动区域采取帧方式会更加有效,这种方式就称为 MBAFF 。
    ( 4 ) FMO :通过 FMO 可以进一步提高片的差错恢复能力。通过片组( slice group )的使用, FMO 改变了图像划分为片和宏块的方式。宏块到片组的映射定义了宏块属于哪一个片组。利用 FMO 技术, H.264 定义了七种宏块扫描模式。
       ( 1 )帧内预测: H.264 借鉴了以往视频编解码标准在帧内预测上的经验,值得注意的是,在 H.264 中, IDR 图像可以使参考图像缓存无效,之后的图像在解码时不再参考 IDR 图像之前的图像,因而 IDR 图像具有很好的重同步作用。在一些丢包和误码严重的信道中,可以采取不定期传送 IDR 图像的方式进一步提高 H.264 的抗误码和抗丢包性能。
       ( 2 )冗余图像:为提高 H.264 的解码器在发生数据丢失时的顽健性,可以采用传送冗余图像的方式。当基本图像丢失时,可以通过冗余图像重构原图像。
       ( 3 )数据划分:由于运动矢量和宏块类型等信息相对于其他信息具有更高的重要性,因而在 H.264 中引入了数据划分的概念,将片中语义彼此相关的语法元素放在同一个划分中。在 H.264 中有三类不同的数据划分,三类数据划分分开传送,若第二类或第三类划分的信息丢失,使用差错恢复工具仍然可以通过第一类划分中的信息对丢失信息进行适当恢复。
       ( 4 )多参考帧运动估值:多参考帧运动估值不但可以提高编码器的编码效率,还可以提高差错恢复能力。在 H.323 系统中,通过使用 RTCP ,当编码器得知有参考图像丢失时,可以选择解码器已经正确接收的图像作为参考图像。
       ( 5 )为阻止错误在空间上的蔓延,解码器端可以指定当 P 片或 B 片中的宏块在做帧内预测时不使用相邻的非帧内编码宏块作为参考。

3. 网络适应性方面

      为适应各种网络环境和应用场合, H.264 定义了视频编码层( VCL )和网络提取层( NAL )。其中 VCL 功能是进行视频编解码,包括运动补偿预测,变换编码和熵编码等功能; NAL 用于采用适当的格式对 VCL 视频数据进行封装打包。 H.264 编解码器的层结构如图 2 所示。
    ( 1 ) NAL Units :视频数据封装在整数字节的 NALU 中,它的第一个字节标志该单元中数据的类型。 H.264 定义了两种封装格式。基于包交换的网络(如 H.323 系统)可以使用 RTP 封装格式封装 NALU 。而另外一些系统可能要求将 NALU 作为顺序比特流传送,为此 H.264 定义了一种比特流格式的传输机制,使用 start_code_prefix 将 NALU 封装起来,从而确定 NAL 边界。
    ( 2 )参数集:以往视频编解码标准中 GOB\GOP\ 图像等头信息是至关重要的,包含这些信息的包的丢失常导致与这些信息相关的图像不能解码。为此 H.264 将这些很少变化并且对大量 VCL NALU 起作用的信息放在参数集中传送。参数集分为两种,即序列参数集和图像参数集。为适应多种网络环境,参数集可以带内传送,也可以采用带外方式传送。

三、在 H.323 系统中实现 H.264

    由于 H.264 是一种新的视频编解码标准,在 H.323 体系中应用 H.264 存在一些问题,比如如何在 H.245 能力协商过程中定义实体的 H.264 能力,因此必须对 H.323 标准进行必要的补充和修改。为此, ITU-T 制定了 H.241 标准。本文仅介绍与 H.323 相关的修改。
    首先,要规定如何在 H.245 能力协商过程中定义 H.264 能力。 H.264 能力集是一个包含一个或多个 H.264 能力的列表,每一个 H.264 能力都包含 Profile 和 Level 两个必选参数和 CustomMaxMBPS 、 CustomMaxFS 等几个可选参数。在 H.264 中, Profile 用于定义生成比特流的编码工具和算法, Level 则是对一些关键的参数要求。 H.264 能力包含在 GenericCapability 结构中,其中 CapabilityIdentifier 的类型为 standard ,值为 0.0.8 .241.0.0.1 ,用于标识 H.264 能力。 MaxBitRate 用于定义最大比特率。 Collapsing 字段包含 H.264 能力参数。 Collapsing 字段第一个条目是 Profile , ParameterIdentifier 类型为 standard ,值为 41 ,用于标识 Profile , ParameterValue 类型为 booleanArray ,其值标识 Profile ,可以为 64 、 32 或 16 ,这三个值依次表示 Baseline 、 Main 和 Extended 三个 Profile ; Collapsing 字段第二个条目是 Level , ParameterIdentifier 类型为 standard ,值为 42 ,用于标识 Level , ParameterValue 类型为 unsignedMin ,其值标识 H.264 AnnexA 中定义的 15 个可选的 Level 值。其他的几个参数作为可选项出现。
    其次,由于 H.264 中图像的组织结构与传统的标准不同,一些原有的 H.245 信令不在适用于 H.264 ,如 MiscellaneousCommand 中的 videoFastUpdateGOB 等,因此 H.241 重新定义了几个信令提供相应功能。
    最后, H.264 的 RTP 封装参考 RFC 3550 ,载荷类型( PT )域未作规定。

四、结束语

    作为一种新的国际标准, H.264 在编码效率、图像质量、网络适应性和抗误码方面都取得了成功。但随着终端和网络的快速发展,对视频编解码的要求在不断提高,因此 H.264 仍在继续地完善和发展以适应新的要求。现在对 H.264 的研究主要集中在如何进一步降低编解码时延、算法优化和进一步提高图像质量上。目前,使用 H.264 进行编解码的视频会议系统越来越多,大多数做到了在 Baseline Profile 上的互通。随着 H.264 自身的不断完善和视频通信的不断普及,相信 H.264 的应用将越来越广泛。

 
    联系我们 信息反馈 常见问题 诚聘英才    

北京世纪博冠科技发展有限公司         北京市海淀区上地六街28号207室