H264的I B P帧

H264有I、P、B三种帧;

 

         Ps:h264标准并没有提及I B P帧的概念,使我们自己简称出来的。

 

         I帧:帧内编码帧;

         P帧:前向预测编码帧;

B帧:双向预测内插编码帧;

 

不过一般对质量要求不高的编码是不适用B帧的;

iPhone的硬编码目前也仅有5s支持B帧——reordering

//听说,因为我没有5s,所以不能完全肯定,不过可以肯定4s上装ios7,硬编码也不支持reordering——B帧!

 

H264的帧分为三个类型:

I帧为完全编码的帧,供后面的帧参考,P帧为参考前面的帧而生成的差异帧,B帧为参考前面后面的帧而编码的帧;

 

从帧的角度来看H264,那么可以将一个视频看称由N组GOP序列组成的数据;

//GOP是Group of Pictures的简写,意思是一个图像组。组与组之间互不相干,这样才便于网络视频的实现,因为网络视频可能是随时开始的。

GOP的第一帧一定是一个I帧,这个I帧称为关键帧IDR,但是GOP并不只带I帧的帧间隔,因为GOP可能会包含有多个I帧;只有第一个I帧称为关键帧;

 

P帧是参考前面一帧编码生成的差异帧,被参考的帧可能是I帧也可能是P帧;

 

B帧因为要参考前后双向的帧,(被参考的帧可能是I帧也可能是P帧),因此要编码出带有B帧的序列时,必须要有缓存,而不能像没有B帧时那样进一帧出一帧进行编码了;

而且需要对帧序列进行重新排序;

 

更多h264的知识,还需要细化的学习;

发布了36 篇原创文章 · 获赞 9 · 访问量 8万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章