mp4がQuickTime Playerで再生できない


最近、急にmp4ファイルの画像部分が再生できなくなった。音声は再生できる。ダブルクリックするとまるで音声データ。しかしインスペクタをみるとビデオ部分がないわけでもない。iTunes(7.6)を使うと再生できる。どうして?

Divx をインストしたためだろうか。Perian だろうか?
いずれもアンインストールしても症状は改善しない。

どうも再生できないのはiSquint でflvからmp4に変換したファイルのようだ。

iTunesで再生できるし、VLCMplayer では再生できるので、見ることができないわけではないのだが、QiuckTime Playerで再生できないのは気になるし、不便だ。

例によってアップルのサポートを検索しても症例は見つからないが、ディスカッションボードには同様のトピックを発見した。

QuickTime7.4で動画が見ることが出来ない。

そうか、QuickTime7.4にアップデートしたためだったのか。7.4.1はバグフィックス版ではなかったのか?それもともこれはQuickTimeのバグではない?

共通するのはiSquintで変換したmp4ファイルが音声しか再生できないということ。つまりiSquintのバグ?
iSquintの現行バージョンは1.5.1で、2007年12月12日に配布開始している。それ以前に変換したmp4でも症状は同じだし、1.5.1で再変換し直してみても同じ症状。やっぱりiSquintのバグか。

とりあえず、解決方法は、2つ(別ソフトでの再変換は解決方法としては省略)。

(1) QuickTimeを7.3に戻す。
(2) Dumpster というツールを使ってムービートラックのヘッダを直接書き換える。

QuickTimeを前のバージョンに戻す方法は、消極的対処療法だが、mp4ファイルをQuickTime Playerで再生するという目的は達成できる。QuickTime7.3のインストーラがあればPacifist を使って7.4から7.3に戻すことができるというもの。久しくつかっていないなあPacifist。ところが、アップルのソフトウエア・アップデート(ABC順) をみると、QuickTimeの7.3はなくて、7.2の次は7.4になっていた。7.3のインストーラが入手できないのでは、この方法は使えない。

それに、QuickTime7.3のインストーラがアップルのサイトに置いていないということは、それを使うことを推奨していないからだろう。


(2)の方法は、ディスカッションボードのスレッドでこのブログのエントリ が紹介されていた。QuickTime Playerでmp4ファイルのムービーのプロパティを開いて、ビデオトラックのビジュアル設定をみると、ビデオのサイズが縦0になっているという。Dumpster(ファイルタイプmoovのリソースエディタ?)を使うとファイルの中身をみることができるので、ビデオトラックのヘッダ(tkhd)を直接修正して保存すれば良い(昔のResEditみたい)。

確かにこの方法で目的は達するが、過去に変換したファイル全てにこれを適用しないといけないと思うとうんざりする。

それに、どうも腑に落ちないのは、iTunesで再生できるということ(VLCやMPlayerでも再生可能)。

さらに、mp4ファイルのインスペクタをみると、ビデオサイズはちゃんと表示されている。

つまり、ビデオトラックのビジュアル設定が参照しているのとは異なる情報を参照していて、そこにはデフォルトビデオ画面サイズが記録されているということ。iTunesやQuickTime7.3でちゃんと再生できるのは、インスペクタと同じ情報を参照しているからにちがいない。

それがなぜ、QuickTime7.4ではこの上記のような情報を参照するようになったのだろう。仕様がより厳密になったということだろうが、それが何を意味するのだろう。


土 - 3 月 1, 2008   09:42 午後