核心内容摘要
“暖暖视频免费在线观看”
视频编解码与 GOP 结构详解
帧类型在 H.264/AVC 编码中视频由不同类型的帧组成I 帧 (Intra-coded frame)关键帧独立编码不依赖其他帧。
解码器可以从 I 帧开始解码。
压缩率最低但解码起点。
P 帧 (Predicted frame)前向预测帧参考之前的 I/P 帧。
压缩率比 I 帧高。
解码时必须依赖前面的参考帧。
B 帧 (Bi-directional predicted frame)双向预测帧同时参考前后的 I/P 帧。
压缩率最高但解码延迟大。
必须等到前后参考帧解码完成后才能解码。
GOP (Group of Pictures)定义一组图像的结构通常从一个 I 帧开始到下一个 I 帧结束。
N (Number)GOP 长度即两个 I 帧之间的总帧数。
例如 N30 → 每 30 帧一个 I 帧。
M (Multiple)参考帧间隔决定 P 帧之间插入多少 B 帧。
M1 → 没有 B 帧只有 I/P。
M3 → 每两个 P 帧之间插入 2 个 B 帧。
示例GOP12, M3 → 帧序列I B B P B B P B B P B B I
显示顺序 vs 解码顺序视频播放时的顺序和解码器内部的解码顺序不同尤其是有 B 帧时。
显示顺序播放时看到的I → B → B → P → B → B → P → B → B → P → B → B → I解码顺序解码器内部处理I → P → B → B → P → B → B → P → B → B → I → B → B盒示意图显示顺序: [ I ][ B ][ B ][ P ][ B ][ B ][ P ][ B ][ B ][ P ][ B ][ B ][ I ] 解码顺序: [ I ][ P ][ B ][ B ][ P ][ B ][ B ][ P ][ B ][ B ][ I ][ B ][ B ] 解码器必须先解码 I 和 P 帧才能“回头”解码前面的 B 帧这就是 B 帧带来延迟的原因。
编码参数码率 (bps)决定画质和压缩程度。
高码率 → 画质好文件大。
低码率 → 画质差文件小。
GOP 长度 (N)关键帧间隔影响随机访问和容错能力。
M 值是否插入 B 帧影响压缩率和延迟。
Profile/Level决定编码器能支持的分辨率和帧率上限。
HighL
0 → 支持 1080p30fps。
HighL
2 → 支持 1080p60fps。
参考帧数影响压缩效率和解码复杂度。
熵编码方式 (CABAC/CAVLC)影响压缩率和解码速度。
常见场景推荐参数直播/实时编码GOP 帧率每秒一个关键帧。
M 1无 B 帧低延迟。
码率1080p60 → 8~12 Mbps。
点播/录像GOP 可设为 2 秒或更长。
M 1有 B 帧压缩率高。
码率可适当降低以节省空间。
监控场景GOP 较短提高容错。
M 1低延迟。
码率中等保证清晰度。
6.
总结I/P/B是帧类型的缩写直接对应编码方式。
GOP/M/N是结构参数用来描述关键帧间隔和 B/P 帧分布。
编码效果主要由 GOP、M、码率决定同时受 Profile/Level、参考帧数、熵编码方式影响。
在实时场景下通常选择短 GOP、无 B 帧、较高码率在存储场景下可以选择长 GOP、有 B 帧、较低码率以提高压缩率。