H.264简介
H.264是由ITU-T视频编码专家组(VCEG)和ISO/IEC动态图像专家组(MPEG)联合组成的联合视频组(JVT,Joint Video Team)提出的高度压缩数字视频编解码器标准。这个标准通常被称之为H.264/AVC。
H.264主要特点是:
(1)码率低:在同等图像质量下,采用H.264技术压缩后的数据量约有MPEG-2的1/2。
(2)计算复杂度高:H.264获得优越性能的代价是计算复杂度高,相当于MPEG-2的2~3倍,大大增加了H.264编码器的实现难度。
(3)容错能力强:H.264码流具有较强的抗误码特性,可适应丢包率高、干扰严重的信道中的视频传输,如IP和无线网络的应用。
(4)网络适应性强:H.264提供的网络适应层,使得H.264文件可在不同网络上传输。
H.264采用了若干先进技术,更加灵活,并达到更高的编码效率:
(1)分层设计
视频编码方案由两部分组成:
视频编码层VCL(Video Coding Layer)——为了独立网络传输,进行高效的编解码。
网络抽象/提取层NAL(Network Abstraction Layer)——为了支持视频在不同网络之间传输。所有的数据都包含于NAL单元中。
(2)增加了帧内预测(Intra Prediction)
H.264根据邻近块的值来预测当前宏块的值,然后再对预测值和原始值的差值进行变换、量化和熵编码。由于对预测误差进行编码,因此编码效率更高。
H.264支持的帧内编码模式:亮度块:4x4与16x16编码模式,色度块:8x8编码模式。
帧内预测以Slice为边界
(3)帧间预测(高精度运动估计和运动补偿技术、多帧预测)
①不同大小和形状的宏块分割
②多参考帧预测估计:最多可选择16个不同参考帧。
③高精度运动估计和运动补偿技术:
在H.264中,支持1/4或1/8像素精度的运动估计,运动矢量位移精度的提高,使得帧间预测后的残差减小,编码效率得到较大的提高。
(4)整数DCT变换、Hadamard变换编码
(5)量化处理
H.264标准支持52个量化步长,对应于不同的量划参数(QP),QP值每增加6,Qstep值增加一倍。量化步长范围很广,为编码兼顾比特率和编码质量提供了灵活度和准确度。
(6)消块滤波器
由于在DCT变换之前对图像在块边缘处进行了截断处理,水平和垂直边缘处往往会出现视觉偏差。截断操作在频域引起振荡。H.264在运动预测环节中使用垂直和水平两个方向的去块效应的滤波器来消除由于分块编码造成的块效应。
(7)熵编码(CAVLC和CABAC)
基于上下文的自适应可变长编码(CAVLC)–基本
基于上下文的自适应二进制算术编码(CABAC)–可选
实验要求
1.选择一个.mp4或者.264文件。
2.在码流分析仪软件中打开该文件,从几个层次进行分析:
(1) 分析SPS和PPS里都包含哪些主要的信