mp4 アトムを使用して mp4 ファイルの長さを設定したいと考えています。mvhd、mdhd、tkhd の期間プロパティを更新しましたが、うまくいきません。私がやりたいのは、長さを 3 分から 30 秒に設定することです。時間=期間/タイムスケールであることは知っています。
ありがとう。
mp4 アトムを使用して mp4 ファイルの長さを設定したいと考えています。mvhd、mdhd、tkhd の期間プロパティを更新しましたが、うまくいきません。私がやりたいのは、長さを 3 分から 30 秒に設定することです。時間=期間/タイムスケールであることは知っています。
ありがとう。
フィールドでの期間は、一種の要約です。各単一の画像が表示される時間を延長する必要があります。ここにあるボックスを操作してそれを行います。
/moov/trak/mdia/minf/stbl/stts
アトム/ボックスをサンプリングする時間です。ISO/EIC 14496-12 を手元に持っていない場合は、このアトム/ボックスの内容と構造について学ぶために、Quicktime ファイル形式仕様を安全に使用できます。
ビデオの速度を上げたり下げたりするには、すべてのサンプル期間 (ほとんどの場合は 1 つだけ) に係数を掛けることができます。
注: H264 ビデオには、場合によっては ctts ボックスもあります (B フレームが使用されている場合)。そこでも時刻を変更する必要があります。
1 つのボックスを変更すると、そのサイズとすべての先祖のサイズに影響を与える可能性があるため、mp4 ファイルの編集は簡単ではありません。また、タイミングの値は密接に関連しています: DTS、cts、トラックの長さ、編集リスト、ムービーの長さ... トラックの最後のサンプルの長さを延長し、その変更をヘッダーに反映するなど、一部の操作はその場で簡単に実行できます。 . あなたの場合、期間を短縮することは、いくつかのサンプルを無視することを意味します。サンプル テーブルを編集することもできますが、それは非常に難しく、ほとんどすべてのボックスが変更されます。編集リストを使用することもできますが、それも難しいです。MP4Box を使用すると、新しいファイルを簡単に作成できます。
MP4Box -add input.mp4:dur=30 output.mp4