在视频编码(如H.264、H.265等)中,视频帧通常根据其编码方式和参考关系分为以下几种主要类型:
1. I帧(Intra-coded frame,帧内编码帧)
又称关键帧(Key Frame)。
不依赖其他帧进行解码,可以独立解码显示。
使用帧内预测(利用同一帧内的空间冗余)进行压缩。
压缩率较低,但随机访问、快进/快退、错误恢复时非常关键。
文件体积相对较大。
2. P帧(Predictive-coded frame,前向预测帧)
通过参考前面的I帧或P帧进行预测编码。
利用时间冗余,只存储与参考帧之间的差异信息。
压缩率高于I帧。
解码时必须先解码其参考帧。
如果参考帧出错,可能造成错误传播。
3. B帧(Bidirectionally predictive-coded frame,双向预测帧)
可以同时参考前面和后面的帧(I帧或P帧,有时也包括其他B帧,取决于编码标准)。
压缩效率最高,文件体积最小。
编码和解码顺序与显示顺序可能不同,需要重排序缓冲区。
对延迟和内存要求更高,不适合实时性要求极高的场景(如视频会议)。
在H.264及以后的标准中,B帧也可作为其他帧的参考帧(称为参考B帧)。
补充说明(某些标准中的扩展):
SI帧(Switching I frame) 和 SP帧(Switching P frame):
出现在H.264等标准中,用于码流切换(如不同码率的视频流之间切换),提高容错性和灵活性。
总结对比表:
帧类型
参考方向
是否可独立解码
压缩效率
延迟/复杂度
I帧
无
是
低
低
P帧
前向(过去)
否
中
中
B帧
双向(过去+未来)
否
高
高
这些帧类型的合理组合构成了视频编码中的GOP(Group of Pictures,图像组)结构,对视频质量、压缩率和传输性能有重要影响。