12バイトのヘッダーの後に、RTPペイロードが開始されます。
ペイロードの最初のバイトはNALユニットヘッダーです。これは3つの部分が含まれています:RFC 3984から
+---------------+
|0|1|2|3|4|5|6|7|
+-+-+-+-+-+-+-+-+
|F|NRI| Type |
+---------------+
:
F:1ビット forbidden_zero_bit。 H.264仕様では、構文違反として の値が1と宣言されています。
NRI:2ビット nal_ref_idc。 00という値は、NAL ユニットの内容が、 ピクチャ予測の間に参照ピクチャを再構成するために使用されないことを示す。このようなNALユニットは、 が参照ピクチャの完全性を危険にさらすことなく捨てることができる。が00より大きい値は、参照ピクチャの完全性を維持するためにNALユニットの復号が必要であることを示す。
タイプ:5ビット nal_unit_type。このコンポーネントは、NALユニットのペイロードタイプ を、表7-1に定義されているように、1以降、このメモの中で指定します。すべての現在定義されている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
です。