处理MPEG压缩时,下列图像组((GOP(I-,P-和B-帧))按以下顺序编码和传输:
I P B B P P B B P B B P P
然而,显示顺序是:
I P P B B P P B B P B B P
有人可以解释一下这个特定顺序是如何确定的(我知道它不是随机的,但我不确定在重新排序帧时使用了什么指南/逻辑)?
非常感谢。
答案 0 :(得分:2)
您的帧序列不太正确:
显示顺序:I(1) B(2) B(3) P(4) B(5) B(6) P(7)
传输顺序:I(1) P(4) B(2) B(3) P(7) B(5) B(6)
为什么会这样的简短答案:由于B帧预测的双向性质,解码器必须首先处理前一个和下一个参考帧。例如,要解码B(2),解码器必须首先具有I(1)和P(4)。
从传输到显示重新排序帧的简单方法(对于大多数序列)是查看图片标题中的temporal_reference,它以显示顺序为您提供帧的位置。
希望这有帮助!