图像、帧、片、NALU 是学习 H.264 的人常常感到困惑的一些概念,我在这里对自己的理解做一些阐述,欢迎大家讨论:
H.264 是一次概念的革新,它打破常规, 完全没有 I 帧、P帧、B 帧的概念,也没有 IDR 帧的概念。对于 H.264 中出现的一些概念从大到小排序依次是: 序列、图像、片组、片、NALU、宏块、亚宏块、块、像素。这里有几点值得说明:
(1)、在 H.264 协议中 图像是个集合概念,顶 场、底场、帧都可以称为图像(本文图像概念时都是集合概念)。因此我们可以知道,对于 H.264 协议来说,我们平常所熟悉的那些称呼,例如: I 帧、P 帧、B 帧等等,实际上都是我们把图像这个概念具体化和细小化了。我们 在 H.264 里提到的“帧”通常就是指不分场的图像;
(2)、如果 不采用 FMO(灵活宏块排序) 机制,则 一幅图像只有一个片组;
(3)、如果 不使用多个片,则一个片组只有一个片;
(4)、 如果不采用 DP(数据分割)机制,则一个片就是一个 NALU
H.264 是一次概念的革新,它打破常规, 完全没有 I 帧、P帧、B 帧的概念,也没有 IDR 帧的概念。对于 H.264 中出现的一些概念从大到小排序依次是: 序列、图像、片组、片、NALU、宏块、亚宏块、块、像素。这里有几点值得说明:
(1)、在 H.264 协议中 图像是个集合概念,顶 场、底场、帧都可以称为图像(本文图像概念时都是集合概念)。因此我们可以知道,对于 H.264 协议来说,我们平常所熟悉的那些称呼,例如: I 帧、P 帧、B 帧等等,实际上都是我们把图像这个概念具体化和细小化了。我们 在 H.264 里提到的“帧”通常就是指不分场的图像;
(2)、如果 不采用 FMO(灵活宏块排序) 机制,则 一幅图像只有一个片组;
(3)、如果 不使用多个片,则一个片组只有一个片;
(4)、 如果不采用 DP(数据分割)机制,则一个片就是一个 NALU