H264編碼之GOP含義

GOP說白了就是兩個I幀之間的間隔.比較說GOP120,如果是720p60的話,那就是2s一次I.

        在視頻編碼序列中,主要有三種編碼幀:I幀、P幀、B幀,如下圖所示。

            ● I幀即Intra-coded picture(幀內編碼圖像幀),不參考其他圖像幀,只利用本幀的信息進行編碼
            ● P幀即Predictive-codedPicture(預測編碼圖像幀),利用之前的I幀或P幀,採用運動預測的方式進行幀間預測編碼
            ● B幀即Bidirectionallypredicted picture(雙向預測編碼圖像幀),提供最高的壓縮比,它既需要之前的圖
像幀(I幀或P),也需要後來的圖像幀(P),採用運動預測的方式進行幀間雙向預測編碼

  在視頻編碼序列中,GOPGroup of picture(圖像組),指兩個I幀之間的距離,Reference(參考週期)指兩個P幀之間的距離(如下圖3.1)。一個I幀所佔用的字節數大於一個P幀,一個P幀所佔用的字節數大於一個B幀(如下圖3.1所示)。

IPB幀示意圖

  所以在碼率不變的前提下,GOP值越大,PB幀的數量會越多,畫面細節更多,也就更容易獲取較好的圖像質量;Reference越大,B幀的數量越多,同理也更容易獲得較好的圖像質量。

  需要說明的是,通過提高GOP值來提高圖像質量是有限度的,在遇到場景切換的情況時,H.264編碼器會自動強制插入一個I幀,此時實際的GOP值被縮短了。另一方面,在一個GOP中,PB幀是由I幀預測得到的,當I幀的圖像質量比較差時,會影響到一個GOP中後續PB幀的圖像質量,直到下一個GOP開始纔有可能得以恢復,所以GOP值也不宜設置過大。

  同時,由於P、B幀的複雜度大於I幀,所以過多的P、B幀會影響編碼效率,使編碼效率降低。另外,過長的GOP還會影響Seek操作(找I幀)的響應速度,由於P、B幀是由前面的I或P幀預測得到的,所以Seek操作需要直接定位,解碼某一個P或B幀時,需要先解碼得到本GOP內的I幀及之前的N個預測幀纔可以,GOP值越長,需要解碼的預測幀就越多,seek響應的時間也越長。


轉載自:http://blog.csdn.net/zqj6893/article/details/50262189

發佈了15 篇原創文章 · 獲贊 17 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章