在12字節的標題之後,RTP有效負載啓動。
有效負載的第一個字節是NAL單元頭。它包含三個部分:
+---------------+
|0|1|2|3|4|5|6|7|
+-+-+-+-+-+-+-+-+
|F|NRI| Type |
+---------------+
從RFC 3984:
F:1位 forbidden_zero_bit。 H.264規範聲明值爲 1作爲語法違規。
NRI:2位 nal_ref_idc。值爲00表示NAL 單元的內容未被用於重構用於圖片間預測的參考圖片。這樣的NAL單元可以被丟棄而不冒險參考圖片的完整性。值大於00的值表示需要解碼NAL單元以保持參考圖片的完整性。
類型:5位 nal_unit_type。該組件指定1的表7-1中定義的NAL單元有效載荷類型 ,並在本備忘錄後面進行說明。有關所有當前定義的NAL單元類型及其 語義的 引用,請參閱1中的第7.4.1節。
的有效載荷類型,由至少顯著5個比特定義的32個可能的值,都列在表1中:
Type Packet Type name Section
---------------------------------------------------------
0 undefined -
1-23 NAL unit Single NAL unit packet per H.264 5.6
24 STAP-A Single-time aggregation packet 5.7.1
25 STAP-B Single-time aggregation packet 5.7.1
26 MTAP16 Multi-time aggregation packet 5.7.2
27 MTAP24 Multi-time aggregation packet 5.7.2
28 FU-A Fragmentation unit 5.8
29 FU-B Fragmentation unit 5.8
30-31 undefined -
兩個你提到的兩個數據包的是P幀。對於I幀,NAL單元類型應該是5
,所以在你的情況下,第12個字節將是0x75
。 P幀的NAL單元類型爲1
。