7

H264 ファイルは、NAL (Network Abstraction Layer) ユニットのストリームであり、それぞれがフレーム (I、B、または P) をエンコードします。このファイルを解析し、ファイル内の各 NAL ユニットのサイズを抽出して終了を検出し、NAL ユニットに含まれるフレームの種類を検出する最良の方法は何ですか?

4

1 に答える 1

22

実際にフレームをデコードしようとしていない場合は、h.264 バイト ストリームを読み取り、NAL ユニットの署名を探すことで、単純な「パーサー」を作成できます。

知っておくべきことは次のとおりです。

  • NAL ユニットの開始コード: 00 00 01 XY
  • X = IDR ピクチャ NAL ユニット (例: 25、45、65)
  • Y = 非 IDR ピクチャ NAL ユニット (例: 01、21、41、61)

したがって、3 バイト [00 00 01] が連続して見つかった場合は、NAL ユニットの始まりである可能性が非常に高くなります。次に、次の 2 バイト [XY] を解析して、フレームのタイプを調べる必要があります。詳細については、仕様を参照してください。

于 2012-04-12T12:50:53.570 に答える