25

moovビデオを「Web最適化」またはストリーミングしやすくするために、MP4ビデオコンテナの最後から最初にアトムを再配置することについて、たくさんの質問があります。ほとんどのツールでは、ビデオが利用可能である場合、最初にビデオをエンコードするときにこれを行うための明示的なオプションが必要なようです。

アトムを最初に配置するとストリーミングがより適切に機能し、事後にそれを行うのにコストがかかる場合、なぜ最後にアトムを使用してビデオをエンコードしたいのでしょうか。メリットは何ですか?

4

2 に答える 2

24

ファイルの最後にMOOVをエンコードすることは、通常、ビデオエンコーダーのデフォルトの操作です。これは、出力ファイルをワンパスで書き込むことによって動作する傾向があり、MOOVアトムの正確な内容とサイズは、オーディオを書き込んだ後でないとわからないためです。絶対ファイルサイズが含まれているため、ビデオデータ全体が含まれます。

FFmpegを使用すると、2回目のパスを実行して、アトムを。で始まる先頭に移動できます-movflags +faststart

MOOVアトムを最後に持つことには特別な利点はありません。プログレッシブダウンロード配信の場合ほど、再生前にファイルの終わりを探すのにコストがかからないローカル再生の状況では、それほど不便ではありません。

于 2013-03-27T12:42:05.253 に答える
6

常にファイルの先頭にインデックス情報を配置する必要があります。このレイアウトには、1つだけを除いて隠れたコストはありません。キャプチャ/トランスコーディングを実行している間、そのMOOVに必要なスペースを事前に知ることができない場合があります。最初はアトムであり、そのデータもまだ十分に利用できません。したがって、通常はペイロードをファイルに直接書き込み、MOOVを追加してファイルの残りの部分を更新することで書き込みを完了します。

于 2013-03-27T12:38:46.770 に答える