第一章 前言
第三章 有关 SPS 和 PPS 的一切
第四章 有关 Slice 的一切
第七章 帧间编码
第八章 残差的熵编码: CAVLC 和 CABAC
在介绍 NALU 的时候,我们介绍过四种常见的 NALU,分别是 nalutype 等于 7 的 SPS,nalutype 等于 8 的 pps,还有 nalutype 等于 5 的 IDR 和 nalutype 等于 1 的普通 SPS 和 PPS 我们已经介绍过,这一章节,我们一起来看看 IDR 和 Slice。
这里要说明的是,其实 IDR 就是一种特殊的 Slice,翻看标准文档,IDR 和普通 Slice 只有一个地方不一样。
如上图,在判断是 IDR 的时候,需要多解析一个 idr_pic_id 的量。除此之外,IDR 的处理方式和普通 Slice 是完全一样的。
我们之前介绍过 SPS 和 PPS,SPS 和 PPS 中储存的信息是一些参数项,例如,图像的长宽,图像的 profile 信息等。那么在 Slice 中,存放的信息就是编码后的图像信息了,也就是说,解码 Slice,我们就能还原出来图像了。
一个 Slice 通常被分为两个部分,Slice Header 和 Slice Body,如下图:
Slice Header 中存放了这个 Slice 会用到的参数项,而 Body 中则存放了真正的图像信息。