H264基本概念之宏块片和片组

Posted tgww88

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了H264基本概念之宏块片和片组相关的知识,希望对你有一定的参考价值。

一、宏块(Macro Block):一个编码图像首先要划分成多个块(4 X 4像素)才能进行处理,显然宏块应该是整数个块组成,通常宏块大小为16 X 16个像素。宏块分为I、P、B宏块,I宏块只能利用当前片中已解码的像素作为参考进行帧内预测;P宏块可以利用前面已解码的图像作为参考图像进行帧内预测;B宏块则是利用前后向的参考图形进行帧内预测。

 

二、片(Slice):一帧视频图像可编码成一个或多个片,每片包含整数个宏块,即每片至少一个宏块,最多时包含整个图像的宏块。

        片的目的:为了限制误码的扩散和传输,使编码片相互间相互独立。片共有5种类型:I片(只包含I宏块)、P片(P和I宏块)、B片(B和I宏块)、SP片(用于不同编码流之间的切换)和SI片(特殊类型的编码宏块)。

       片的句法结构如下图所示,片头规定了片的类型、属于哪个图像、有关的参考图像等;片的数据包含了一系列宏块和不编码数据。

 

三、片组是一个编码图像中若干宏块的一个子集,包含一个或若干个片。

        一般一个片组中,每片的宏块是按扫描次序进行编码的,除非使用任意块次序(一个编码帧中的片之后可以跟随任以解码图像的片)。另外一种片组,灵活宏块次序用灵活的方法把编码的宏块映射到相应的片组中。

以上是关于H264基本概念之宏块片和片组的主要内容,如果未能解决你的问题,请参考以下文章

x264代码剖析(十五):核心算法之宏块编码中的变换编码

x264代码剖析(十五):核心算法之宏块编码中的变换编码

H264——H264中的宏块(macroblock)片(slice)帧(frame)

H264中的宏块

H264帧内预测模式编号的编码过程

H264解析Demo11帧内预测编码_1_预测当前块的预测模式