H.264的常用名词

VCL:包括核心压缩引擎和块,宏块和片的语法级别定义,设计目标是尽可能地独立于网络进行高效的编码。

NAL:负责将VCL产生的比特字符串适配到各种各样的网络和多元环境中,覆盖了所有片级以上的语法级别。   

NALU:(Network Abstract Layer Unit)网络抽象层单元。
RBSP:(Raw Byte Sequence Payload)原始字节序列载荷。
SODB:String Of Data Bits (原始数据比特流, 长度不一定是8的倍数,故需要补齐,是由VCL产生)。

PTS :PTS主要用于度量解码后的视频什么时候被显示

DTS :DTS主要是标识内存中的Bit流什么时候开始送入解码器进行解码

GOP:是画面组,一个GOP是一组连续的画面。
GOP一般有两个数字,如M=3,N=12.M制定I帧与P帧之间的距离,N指定两个I帧之间的距离。

IDR

一个序列的第一个图像叫做 IDR 图像(立即刷新图像),IDR 图像都是 I 帧图像。

I和IDR帧都使用帧内预测。I帧不用参考任何帧,但是之后的P帧和B帧是有可能参考这个I帧之前的帧的。IDR就不允许这样。

  • 核心作用 : H.264 引入 IDR 图像是为了解码的重同步,当解码器解码到 IDR 图像时,立即将参考帧队列清空,将已解码的数据全部输出或抛弃,重新查找参数集,开始一个新的序列。这样,如果前一个序列出现重大错误,在这里可以获得重新同步的机会。IDR图像之后的图像永远不会使用IDR之前的图像的数据来解码。

档次和级

–H.264规定了三种档次,每个档次支持一组特定的编码功能,并支持一类特定的应用。
–1)基本档次:利用I片和P片支持帧内和帧间编码,支持利用基于上下文的自适应的变长编码进行的熵编码(CAVLC)。主要用于可视电话、会议电视、无线通信等实时视频通信;
–2)主要档次:支持隔行视频,采用B片的帧间编码和采用加权预测的帧内编码;支持利用基于上下文的自适应的算术编码(CABAC)。主要用于数字广播电视与数字视频存储;
–3)扩展档次:支持码流之间有效的切换(SP和SI片)、改进误码性能(数据分割),但不支持隔行视频和CABAC。主要用于网络的视频流,如视频点播
–图3为H.264各个档次具有的不同功能,可见扩展档次包括了基本档次的所有功能,而不能包括主要档次的。每一档次设置不同参数(如取样速率、图像尺寸、编码比特率等),得到编解码器性能不同的级。

                                            

猜你喜欢

转载自blog.csdn.net/QQ2558030393/article/details/89366546