2016-10-17 18 views
1

私はもう少しストリーミングを理解しようと努力しています。だから私の無知で負担してください:)h.264 MPEG-TSからMP4ファイルへ

私はh.264ストリーム内にmpeg-tsファイルを持っています。私はPESパケットを抽出するためのISO 13818-1仕様に従って小さなプログラム(Java)を書くことができました。そこから私はPESパケットデータを簡単に抽出することができます。

私が理解しているのはmp4ですが、すべてのPESパケットデータを* .mp4というファイルにチェーンするだけでは簡単ではないと思いますが、mp4ファイルを作成してください。

この時点で実際にPESパケットデータが何であるかはっきりしません。

しかし、基本的に、私はそのアルゴリズムが基本的には私が持っているデータをmp4ファイルに差し替えるように見えるかどうかを調べようとしています。

答えて

1

H.264はビデオ圧縮規格であり、MP4はコンテナファイル形式です。

パケット化エレメンタリーストリーム(PES)は、あなたのケースではH.264ビットストリームであるエレメンタリーストリーム(ES)をカプセル化します。 H.264ビットストリームをフォーマットするには複数の方法があります。

あなたの入力はMPEG-2トランスポートストリームなので、それはAnnex Bフォーマットを使用します。つまり、ビットストリームは、開始コードが前に付いた一連のネットワーク抽象化レイヤーユニット(NALU)で構成されています。

MP4形式では、各NALUの先頭に長さが含まれるフィールドが異なる形式が使用されます。

ビットストリームを適切な形式に変換し、新しいコンテナにマルチプレキシングする必要があります。 this answerを見て、さらに詳しい情報についてはMP4標準を見てください。

関連する問題