视频压缩中,每帧都代表着一幅静止的图像。而在进行实际压缩时,会采用各种算法以减少数据容量,其中IPB帧就是最常见的一种。
I帧:镇内编码帧(intra picture) I帧通常是每个GOP(MPEG所使用的一种视频研所技术)的第一帧,经过适度地压缩,作为随机访问的参考点,可以当成静态图像。
p帧:前向预测编码帧(predicive-frame),通过将图像序列中前面已编码帧的时间冗余信息从分去除来压缩传输数据量的编码图像,也称为预测帧。
B帧:双向预测内插编码帧(bi-directional interpolated prediction frame), 既考虑源图像序列后面的已编码帧之间的时间冗余信息,来压缩传输数据量的编码图像,也称为双向预测帧。
从解码的角度来理解IPB帧
I帧自身可以通过视频解压算法解压成一张单独的完整视频画面,所以I帧去掉的是视频帧在空间维度上的冗余信息。
P帧需要参考其前面的一个I帧或者P帧来解码或一张完整的视频画面。
B帧则需要参考其前一个I帧或者P帧及其后面的一个P帧来生成一张完整的视频画面,多以P帧与B帧去掉的是视频帧在时间维度上的冗余信 息。
IDR帧:IDR帧就是一种特殊的I帧,即着一帧之后的所有参考帧只会参考到这个IDR帧,而不会再参考前面的帧。再解码器中,一旦搜到一个IDR帧,就会立即清理参考帧缓冲区,并将IDR帧作为被参考的帧。
GOP的概念:
连个I帧之间形成的一组图片,就是GOP(Group Of Picture) 的概念。通常再为编码器设置参数的时候,必须设置gop_size的值,其代表的是两个I帧之间的帧数目。