mp4でエンコードした動画が、どうやってもプログレッシブダウンロード(ストリーミング)されない問題

プレイヤーのせいかとおもったら動画のせいらしい。知らなかった。

http://help.adobe.com/ja_JP/scene7/using/WS53B6356D-ABB4-46f7-9EDB-BDFFFBD50D0C.html


重要: Scene7 Publishing System で作成またはエンコードされていないプログレッシブダウンロード配信用の MP4 ファイルは、再生で問題が発生することがあります。MP4 を再生する前に、ビデオプレーヤーはファイルのインデックス(moov atom)にアクセスする必要があります。ファイルの末尾にインデックスがあると、プレーヤーはファイル全体がダウンロードされるまでインデックス処理を待機しなければいけなくなります。この遅延により、ダウンロードが完了するまでビデオの再生が開始されないため、ユーザは使いにくさを感じます。MP4 の再生開始に時間がかかり、ダウンロードの完了を待たずに再生が始まることがない場合、moov atom がファイルの末尾にある可能性があります。サードパーティユーティリティを利用して、MP4 の moov atom の位置を変更できます。


つまりMP4は、moov atom(moovだけの時もある)を読み込まないと、再生を開始できないんだそうです。


もうちょっと(私に分かるように)分かりやすく書くとこう。

moov atomってなんなの?→ファイルのインデックスとのこと。

ファイルのインデックスってなんなの?→おそらくファイル情報を格納しているDBデータのことでは?

ファイル情報って?→曲の再生時間やコーデック情報などのこと。コーデック情報が分からないと、そりゃあ再生できないよね。

どうしてファイルの末尾にインデックスがあると、プレーヤーはファイル全体がダウンロードされるまでインデックス処理を待機するの?→そりゃあファイルとはテキストデータの集合体だから上から読んでいくじゃんか。末尾にインデックスがあればそれを見つけるために必然的に全体をダウンロードしなきゃいけないでしょ?そういうこと。

moov atomを上に移動させることはできないの?→基本的にエンコードソフトに設定があるはず。
すでにエンコード済みのmp4の場合は、再エンコードするか、力わざになるがバイナリエディタでmp4を開いて、下にあるmoov atomを上に書き換えるしかなさそう。(ちゃんとコピー取ってから作業してね)


種が分かればこれほど単純なこともない。