p幀(幀間**編碼幀)需要參考前面的i幀和/或p幀的不同部分才能進行編碼。與i幀相比,p幀通常占用更少的資料位,但其缺點是,由於p幀對前面的p和i參考幀有著複雜的依賴性,因此對傳輸錯誤非常敏感。p幀屬於前向**的幀間編碼,它只參考前面最靠近它 的i幀或者p幀。
nal中type部分值為6是sei,7是sps,8是pps
i幀:幀內編碼幀 ,i幀表示關鍵幀,你可以理解為這一幀畫面的完整保留;解碼時只需要本幀資料就可以完成(因為包含完整畫面)
i幀特點:
1.它是乙個全幀壓縮編碼幀。它將全幀影象資訊進行jpeg壓縮編碼及傳輸;
2.解碼時僅用i幀的資料就可重構完整影象;
3.i幀描述了影象背景和運動主體的詳情;
4.i幀不需要參考其他畫面而生成;
5.i幀是p幀和b幀的參考幀(其質量直接影響到同組中以後各幀的質量);
6.i幀是幀組gop的基礎幀(第一幀),在一組中只有乙個i幀;
7.i幀不需要考慮運動向量;
8.i幀所佔資料的資訊量比較大。
p幀:前向**編碼幀。p幀表示的是這一幀跟之前的乙個關鍵幀(或p幀)的差別,解碼時需要用之前快取的畫面疊加上本幀定義的差別,生成最終畫面。(也就是差別幀,p幀沒有完整畫面資料,只有與前一幀的畫面差別的資料)
p幀的**與重構:p幀是以i幀為參考幀,在i幀中找出p幀「某點」的**值和運動向量,取**差值和運動向量一起傳送。在接收端根據運動向量從i幀中找出p幀「某點」的**值並與差值相加以得到p幀「某點」樣值,從而可得到完整的p幀。
p幀特點:
1.p幀是i幀後面相隔1~2幀的編碼幀;
2.p幀採用運動補償的方法傳送它與前面的i或p幀的差值及運動向量(**誤差);
3.解碼時必須將i幀中的**值與**誤差求和後才能重構完整的p幀影象;
4.p幀屬於前向**的幀間編碼。它只參考前面最靠近它的i幀或p幀;
5.p幀可以是其後面p幀的參考幀,也可以是其前後的b幀的參考幀;
6.由於p幀是參考幀,它可能造成解碼錯誤的擴散;
7.由於是差值傳送,p幀的壓縮比較高。
b幀:雙向**內插編碼幀。b幀是雙向差別幀,也就是b幀記錄的是本幀與前後幀的差別(具體比較複雜,有4種情況,但我這樣說簡單些),換言之,要解碼b幀,不僅要取得之前的快取畫面,還要解碼之後的畫面,通過前後畫面的與本幀資料的疊加取得最終的畫面。b幀壓縮率高,但是解碼時cpu會比較累。
b幀的**與重構
b幀以前面的i或p幀和後面的p幀為參考幀,「找出」b幀「某點」的**值和兩個運動向量,並取**差值和運動向量傳送。接收端根據運動向量在兩個參考幀中「找出(算出)」**值並與差值求和,得到b幀「某點」樣值,從而可得到完整的b幀。
b幀特點
1.b幀是由前面的i或p幀和後面的p幀來進行**的;
2.b幀傳送的是它與前面的i或p幀和後面的p幀之間的**誤差及運動向量;
3.b幀是雙向**編碼幀;
4.b幀壓縮比最高,因為它只反映丙參考幀間運動主體的變化情況,**比較準確;
5.b幀不是參考幀,不會造成解碼錯誤的擴散。
注:i、b、p各幀是根據壓縮演算法的需要,是人為定義的,它們都是實實在在的物理幀。一般來說,i幀的壓縮率是7(跟jpg差不多),p幀是20,b幀可以達到50。可見使用b幀能節省大量空間,節省出來的空間可以用來儲存多一些i幀,這樣在相同位元速率下,可以提供更好的畫質。
H264基礎知識簡介
簡介 h264有嚴格的規範,以00 00 00 01分割之後的下乙個位元組就是nalu型別,用來描述此幀的意義。nalu型別 1 第1位禁止位,值為1表示語法出錯 2 第2 3位為參考級別 3 第4 8為是nal單元型別 以通常的首幀來看 列印出來為103 用十六進製制軟體分析的話值為67 轉為二進...
H264編碼基礎知識簡單梳理
編碼基礎知識 術語解釋 位元速率 bps 單位時間 秒 內傳輸的資料編碼的大小 幀率 fps 單位時間 秒 內幀數的大小 乙個幀是乙個畫面,其中包括,採集源資料的幀率,編碼幀率,解碼幀率 編碼格式 頭部,每個幀都需要載入最前面 0x00 0x00 0x00 0x01 或者 0x00 0x00 0x0...
直播一 H 264編碼基礎知識詳解
h.26x系列 由itu 國際電傳視訊聯盟 主導 mpeg系列 由iso 國際標準組織機構 下屬的mpeg 運 象專家組 開發 mpeg 4第二部分 mpeg 4第二部分標準可以使用在網路傳輸 廣播和 儲存上 3 編碼流程 在進行當前訊號編碼時,編碼器首先會產生對當前訊號做 的訊號,稱作 訊號 pr...