對原作者表示感謝!
h264常見的幀頭資料為:
00 00 00 01
67 (sps)
00 00 00 01
68 (pps)
00 00 00 01
65 ( idr 幀)
00 00 00 01
61 (p幀)
等等,那麼他們代表的意思是什麼呢?
start code有兩種,四個位元組的「00 00 00 01」和三個位元組的「00 00 01」都是。
+---------------+
|0|1|2|3|4|5|6|7|
+-+-+-+-+-+-+-+-+
|f|nri| type |
+---------------+
上述的67,68,65,61,還有41等,都是該nalu的識別級別。
f:禁止為,0表示正常,1表示錯誤,一般都是0
nri:重要級別,11表示非常重要。
type:表示該nalu的型別是什麼,見下表7.20,由此可知7為序列引數集(sps),8為影象引數集(pps),5代表i幀。1代表非i幀。由此可知,61和41其實都是p幀(type值為1),只是重要級別不一樣(它們的nri乙個是11bin,乙個是10bin)
(圖1)
關於上圖中最後一列「c」的解釋,在下圖說明:
(圖2)
另外,本部落格還提供itu關於h264的規範的文件:
截圖:
H 264參考幀管理
引言 h 264相對於以前的標準,採用了多參考幀的技術,提高了編碼器的效能,但也增加了實現的複雜度,在理解上也加大了難度。下面是我近來參閱一些資料的總結 frame num 標誌片的解碼順序,當前影象是idr 立即重新整理影象 時,設定為0 相對於前面乙個參考幀 解碼順序 增加1 poctype0 ...
H 264多參考幀
h264中允許從多至15個幀裡面選擇1幀或者2幀出來作為參考進行 所以必須引入乙個列表來管理這些參考影象,對與p slice而言,對應 list0,對於 b slice 而言,還需要多乙個 list1,因為 b slice 是進行的兩次 乙個前向乙個後向 兩個前向 兩個後向 參考幀分為 long t...
h264幀邊界識別
幀邊界識別簡介 h.264 將構成一幀影象所有nalu 的集合稱為乙個au,幀邊界識別實際上就是識別au。因為h.264 取消幀級語法,所以無法簡單地從碼流中獲取au。解碼器只有在解碼的過 程中,通過某些語法元素的組合才能判斷一幀影象是否結束。一般來說,解碼器必須在完成一幀新影象的第乙個slice ...