1、視頻編碼
視頻壓縮的目的:壓縮視頻的占用空間,提高存儲和傳輸?shù)男剩讷@得有效的壓縮效果的同時,使得壓縮過程引起的失真最小。
視頻壓縮的方式:去除冗余信息,包括空間上的冗余信息和時間上的冗余信息。
幀間編碼技術(shù)可去除時間上的冗余信息,具體包括:
● 運動補償:通過先前的局部圖像來預(yù)測、補償當前的局部圖像,是減少幀序列冗余信息的有效方法。
● 運動表示:不同區(qū)域的圖像需要使用不同的運動矢量來描述運動信息。
● 運動估計:從視頻序列中抽取運動信息的一整套技術(shù)。
幀內(nèi)編碼技術(shù)可去除空間上的冗余信息。
目前主流的圖像/視頻壓縮標準為:JPEG,MPEG,H.26X等標準。
其中,H.264集合以往標準的優(yōu)點,成為了目前最受歡迎的壓縮標準,H.264創(chuàng)造了多參考幀、多塊類型、整數(shù)變換、幀內(nèi)預(yù)測等新的壓縮技術(shù),使用更精細的分像素運動矢量(1/4,1/8)和新一代的環(huán)路濾波器,提高壓縮性能。(目前更有更優(yōu)秀的H.265壓縮標準)
2、編碼概念
2.1、IBP幀概念
I frame:幀內(nèi)編碼幀 又稱intra picture,I 幀通常是每個 GOP(兩個I幀之間的一組圖片,group of picture,MPEG 所使用的一種視頻壓縮技術(shù))的第一個幀,經(jīng)過適度地壓縮,做為隨機訪問的參考點,可以當成圖象。I幀可以看成是一個圖像經(jīng)過壓縮后的產(chǎn)物。
P frame: 前向預(yù)測編碼幀 又稱predictive-frame,通過充分將低于圖像序列中前面已編碼幀的時間冗余信息來壓縮傳輸數(shù)據(jù)量的編碼圖像,也叫預(yù)測幀;
B frame: 雙向預(yù)測內(nèi)插編碼幀 又稱bi-directional interpolated prediction frame,既考慮與源圖像序列前面已編碼幀,也顧及源圖像序列后面已編碼幀之間的時間冗余信息來壓縮傳輸數(shù)據(jù)量的編碼圖像,也叫雙向預(yù)測幀;
IPB幀的不同:
I frame:自身可以通過視頻解壓算法解壓成一張單獨的完整的圖片。
P frame:需要參考其前面的一個I frame或者B frame來生成一張完整的圖片。
B frame:則要參考其前一個I frame或者P frame及其后面的一個P frame來生成一張完整的圖片。
2.2、PTS與DTS
PTS:Presentation Time Stamp,展現(xiàn)時間。PTS主要用于度量解碼后的視頻幀什么時候被顯示出來
DTS:Decode Time Stamp,解碼時間。DTS主要是標識讀入內(nèi)存中的bit流在什么時候開始送入解碼器中進行解碼。
在沒有B幀存在的情況下DTS的順序和PTS的順序應(yīng)該是一樣的。

參考文章:
音視頻開發(fā)進階指南
IPB幀 編碼順序 解碼順序 顯示順序
視頻編解碼技術(shù) (H.264、MPEG-4)
H.265與H.264對比有哪些優(yōu)勢
試簡介視頻編碼技術(shù)?