H.264有四种画质级别,分别是BP、EP、MP、HP,想要说明H.264 HP与H.264 MP的区别就要讲到H.264的技术发展了
H.264 视频编码技术在视频采集、后期制作等网络视频服务领域的应用,在有限的带宽资源下进一步提高图像质量。H.264有四种画质级别,分别是BP、EP、MP、HP,想要说明H.264 HP与H.264 MP的区别就要讲到H.264的技术发展了
H.264/AVC是由ITU-TVCEG与ISO/IECMPEG组成的联合专家行动组JVT共同制定并于2003年5月发布的视频编解码标准,在ITU-T体系内被称为H.264,在ISO/IEC体系内被称为MPEG4part10-AVC,所以通常被称为H.264/AVC或简称H.264。
H.264 视频编码国际标准的技术发展
H.264 是由ITU-T 的VCEG(视频编码专家组)和ISO/IEC 的MPEG(活动图像编码专家组)联合组建的联合视频组(JVT:joint video team)提出的一个新的数字视频编码标准,它既是ITU-T 的H.264,又是ISO/IEC 的MPEG-4 的第10 部分。
H.264标准从1998 年1 月份开始草案征集,1999年9月,完成第一个草案,2001年5月制定了其测试模式TML-8,2002年6月的 JVT第5次会议通过了H.264的FCD板。到2003 年7 月,整套H.264 (ISO/IEC 14496-10)规范定稿。2005年1 月,MPEG 组织正式发布了H.264 验证报告,从各个方面论证了H.264 的可用性以及各种工具集的效果,从标准的角度,印证H.264 的成熟性。
从标准制定到颁布,H.264 一直是ITU、MPEG、DVD、DVB、3GPP 等工业化组织共同推进的视频编码国际标准。
其实国内业界通常所说的MPEG-4 是MPEG-4 的第2 部分。国内普遍采用的MPEG-4 编码技术在3Mbps 的带宽下尚达不到标清的图像质量,而H.264 编码技术可以在2M 带宽下提供要求的图像效果。因而运营商希望引入更先进的H.264 编码技术,在有限的带宽资源下进一步提高图像质量。
在众多行业巨擘的推动下,H.264 技术的应用将迅速进入到视频服务、媒体制作发行、固定及移动运营网络、平台开发、设备终端制造、芯片开发等多个领域。
H.264/AVC标准制定的目标
H.264/AVC标准制定的目标是能够在相对上一代广泛使用的MPEG2视频编码标准降低一半以上码率的前提下提供相当的图像质量,同时覆盖到更大范围的码率、帧率及分辨率等应用场合,并提高对于网络传输的适应性,即能在各种不同条件网络和系统上(例如组播、存储、RTP/IP包网络、无线网络)工作。
H.264有四种画质级别,分别是BP、EP、MP、HP:
1、BP-Baseline Profile:基本画质。支持I/P 帧,只支持无交错(Progressive)和CAVLC;
2、EP-Extended profile:进阶画质。支持I/P/B/SP/SI 帧,只支持无交错(Progressive)和CAVLC;
3、MP-Main profile:主流画质。提供I/P/B 帧,支持无交错(Progressive)和交错(Interlaced),也支持CAVLC 和CABAC 的支持;
4、HP-High profile:高级画质。在main Profile 的基础上增加了8x8内部预测、自定义量化、无损视频编码和更多的YUV 格式;
H.264 使图像压缩技术上升到了一个更高的阶段,能够在较低带宽上提供高质量的图像传输,该优点非常适合国内运营商用户量大、接入网/骨干网带宽相对有限的状况。在同等的画质下,H.264 比上一代编码标准MPEG2 平均节约64%的传输码流,而比MPEG4 ASP 要平均节约39%的传输码流。
H.264标准档次
H.264标准可分为三档:
基本档次(其简单版本,应用面广);
主要档次(采用了多项提高图像质量和增加压缩比的技术措施,可用于SDTV、HDTV和DVD等);
扩展档次(可用于各种网络的视频流传输)。
H.264不仅比H.263和MPEG-4节约了50%的码率,而且对网络传输具有更好的支持功能。它引入了面向IP包的编码机制,有利于网络中的分组传输,支持网络中视频的流媒体传输。H.264具有较强的抗误码特性,可适应丢包率高、干扰严重的无线信道中的视频传输。H.264支持不同网络资源下的分级编码传输,从而获得平稳的图像质量。H.264能适应于不同网络中的视频传输,网络亲和性好。
H.264的技术亮点
在技术上,H.264标准中有多个闪光之处,如统一的VLC符号编码,高精度、多模式的位移估计,基于4×4块的整数变换、分层的编码语法等。这些措施使得H.264算法具有很的高编码效率,在相同的重建图像质量下,能够比H.263节约50%左右的码率。H.264的码流结构网络适应性强,增加了差错恢复能力,能够很好地适应IP和无线网络的应用。
(1) 4×4块的整数变换
H.264与先前的标准相似,对残差采用基于块的变换编码,但变换是整数操作而不是实数运算,其过程和DCT基本相似。这种方法的优点在于:在编码器中和解码器中允许精度相同的变换和反变换,便于使用简单的定点运算方式。也就是说,这里没有“反变换误差”。变换的单位是4×4块,而不是以往常用的8×8块。由于用于变换块的尺寸缩小,运动物体的划分更精确,这样,不但变换计算量比较小,而且在运动物体边缘处的衔接误差也大为减小。H.264为了提高码率控制的能力,量化步长的变化的幅度控制在12.5%左右,而不是以不变的增幅变化。变换系数幅度的归一化被放在反量化过程中处理以减少计算的复杂性。为了强调彩色的逼真性,对色度系数采用了较小量化步长。
(2) 帧内预测
在先前的H.26x系列和MPEG-x系列标准中,都是采用的帧间预测的方式。在H.264中,当编码Intra图像时可用帧内预测。对于每个4×4块(除了边缘块特别处置以外),每个像素都可用17个最接近的先前已编码的像素的不同加权和(有的权值可为0)来预测,即此像素所在块的左上角的17个像素。显然,这种帧内预测不是在时间上,而是在空间域上进行的预测编码算法,可以除去相邻块之间的空间冗余度,取得更为有效的压缩。
(3) 统一的VLC
H.264中熵编码有两种方法,一种是对所有的待编码的符号采用统一的VLC(UVLC :Universal VLC),另一种是采用内容自适应的二进制算术编码(CABAC:Context-Adaptive Binary Arithmetic Coding)。
(4) 分层设计
H.264的算法在概念上可以分为两层:视频编码层(VCL:VIDEo Coding Layer)负责高效的视频内容表示,网络提取层(NAL:Network Abstraction Layer)负责以网络所要求的恰当的方式对数据进行打包和传送。在VCL和NAL之间定义了一个基于分组方式的接口,打包和相应的信令属于NAL的一部分。这样,高编码效率和网络友好性的任务分别由VCL和NAL来完成。VCL层包括基于块的运动补偿混合编码和一些新特性。与前面的视频编码标准一样,H.264没有把前处理和后处理等功能包括在草案中,这样可以增加标准的灵活性。
(5) 高精度、多模式运动估计
H.264支持1/4或1/8像素精度的运动矢量。在1/4像素精度时可使用6抽头滤波器来减少高频噪声,对于1/8像素精度的运动矢量,可使用更为复杂的8抽头的滤波器。在进行运动估计时,编码器还可选择“增强”内插滤波器来提高预测的效果。在H.264中,允许编码器使用多于一帧的先前帧用于运动估计,这就是所谓的多帧参考技术。例如2帧或3帧刚刚编码好的参考帧,编码器将选择对每个目标宏块能给出更好的预测帧,并为每一宏块指示是哪一帧被用于预测。
(6) 面向IP和无线环境
H.264 草案中包含了用于差错消除的工具,便于压缩视频在误码、丢包多发环境中传输,如移动信道或IP信道中传输的健壮性。
为了抵御传输差错,H.264视频流中的时间同步可以通过采用帧内图像刷新来完成,空间同步由条结构编码(slice structured coding)来支持。同时为了便于误码以后的再同步,在一幅图像的视频数据中还提供了一定的重同步点。另外,帧内宏块刷新和多参考宏块允许编码器在决定宏块模式的时候不仅可以考虑编码效率,还可以考虑传输信道的特性。