- ベストアンサー
m2tsファイルのフォーマット
雑誌に載っていたMPEG2-TSの説明では、TSパケットは開始コード0x47で始まる188バイト固定長のデータとなっていますが、ムービーから落としたm2tsファイルをバイナリエディタで開くと、開始コードの前に必ず4バイト付加された192バイト単位で格納されているようです。 最初のパケットは、4バイトとも0埋めされていますが、2パケット目からは何かしらデータが設定されているようですが、ここには何が設定されているのでしょうか? どなたか分かる方がいらしたらご教示願います。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
この4バイトのソースパケットヘッダの一部にタイムスタンプが含まれており、一定のサイクルでカウントアップされています。
その他の回答 (1)
- Repetez
- ベストアンサー率54% (132/242)
「ムービー」が不明ですが、AVCHDのカメラだとして、そのヘッダを付与しているのはカメラ本体です。これを付与/除去するフリーソフトも配布されています。質問者さんの実現されたい内容が分からないのでこの程度しか書けませんが。
お礼
すみません、複数のファイルを見ていたので、「ムービー」という曖昧な表現になってしまいました。 私が作ったファイルはAVCHDのビデオカメラです。他のファイルは、人から貰ったものなので良く分かりませんが、VIDEOコーデックがmpgvになっていたので、AVCHDではない様です。 いろいろと教えて頂き、ありがとうございました。
補足
因みに、実現したかった内容は、オープンソースのVLCと言うメディアプレーヤーで再生すると、m2tsファイルの時だけ再生時間が表示されなかったので、何処を修正すれば良いか、ソースファイルの解析とMPEG2-TSフォーマットの両面から追っていたのですが、実際のファイルの中身とフォーマットを照らし合わせたらいきなり上記の違いに当たったもので、質問させて頂きました。 おかげですっきり致しましたので、ソースの方の解析に没頭できます。 どうもありがとうございました。
お礼
回答ありがとうございます。 「ソースパケットヘッダ」でググってみました。 MPEG-over-1394(IEEE1394アイソクロナス転送)のソースパケットヘッダと言うことですね?(先頭7ビットがreserved、後ろ25ビットがタイムスタンプ) 確かにビッグエンディアンで見ると、ほぼ一定間隔で増加しているようです。 と言うことは、このデータをセットしたのはムービーから取り込む時の転送ソフトと言うことでしょうか? 取り込みは、USB接続で行いましたが、必ず設定するものなのでしょうか?