5

TS パケットのフレーム タイプに関する情報を抽出しようとしています。FFMEPG を使用して、MPEG TS カプセル化されたビデオ (x264 で圧縮) を送信し、受信したパケットを Wireshark で記録しています。私のパケットの長さは 188 バイトで、これは 1 つの MPEG TS パケットに相当します。次に、どの TS パケットが I、P、または B フレーム データを運ぶかを調べる必要があります。

この投稿に基づいて、データ (00 00 01 00) の画像ヘッダーを検出しようとしました: http://forum.digital-digest.com/f4/help-extract-i-frames-mpeg2-ts-89736.html しかし、私はそれを見つけることができませんでした。登録できるのは、PES パケットの開始 (00 00 00 01 E0) だけです。私はフォーマットについて完全に混乱しています。PES のどの部分で、1 つの TS パケットが送信するフレーム タイプを示していますか?

ありがとうございました。

4

1 に答える 1

8

すべてのコンテンツを ts 形式でキャプチャし、その上で ffprobe を実行するだけです。

ffprobe -show_frames を実行し、ビデオ フレームで pict_type を探します。出力を解析して出力を提供する小さなスクリプトを作成します。あなたがそれをするのが面倒なら

ffprobe -show_frames | grep pict_type | grep -n
フレーム番号を直接教えてください。

有効なビデオ ファイルである限り、どの形式でも機能します。

于 2012-08-26T16:58:31.113 に答える