H.264 学习笔记(一)
1、 H.264 并不明确地规定一个编解码器如何实现,而是规定了一个编了码的视频比特流的句法,和该比特流的解码方法。
2、 H.264 编码器的功能组成分别见图0-1:
图0-1
3、 编解码以宏块为单位进行,编码解码都是以宏块为单位,逐个宏块编解码,然后组合为 一帧图像。
4、 视频质量:大体上可分为主观视频质量评定和客观视频质量评定两种估计方法。主观的视频质量评分更接近人的真实视觉感受,但需耗费人力和时间,成本较高。客观质量的测定方法速度快、易实行,但往往不会太符合人眼的视觉感受,只能说大体上的质量。客观质量测定方法应致力于改进其测试标准和测试方法,使其符合人的视觉感受。最常用的测试标准是峰值信号与噪声之比(PSNR)
一般讲,PSNR 愈高视频质量愈高;反之亦然。
5、 宏块、片:一个编码图像通常划分成若干宏块组成,一个宏块由一个16×16 亮度像素和附加的一个8×8 Cb和一个8×8 Cr 彩色像素块组成。每个图象中,若干宏块被排列成片的形式。I 片只包含I 宏块,P 片可包含P 和I 宏块,而B 片可包含B 和I 宏块。
6、 档次和级:H.264 规定了三种档次,每个档次支持一组特定的编码功能,并支持一类特 定的应用。
1)基本档次:利用I 片和P 片支持帧内和帧间编码,支持利用基于上下文的自适应的变长编码进行的熵编码(CAVLC)。主要用于可视电话、会议电视、无线通信等实时视频通信;
2)主要档次:支持隔行视频,采用B 片的帧间编码和采用加权预测的帧内编码;支持 利用基于上下文的自适应的算术编码(CABAC)。主要用于数字广播电视与数字视频存储;
3)扩展档次:支持码流之间有效的切换(SP 和SI 片)、改进误码性能(数据分割),但不支持隔行视频和CABAC。
7、 编码器输出的比特码流中,每个比特都隶属某个句法元素,也就是说,码流是由一个个句法元素依次衔接组成的句法元素被组织成有层次的结构,分别描述各个层次的信息。图0-2 表现了这种结构。在H.264 中,句法元素共被组织成 序列、图像、片、宏块、子宏块五个层次。
图0-2