容器 ISO base media

MP4 / MOV

iPhoneが開けるはずの形式なのに、それが開かないとなると余計に不思議に見える。

要するに

MP4とMOVはAppleが自社システムの中心に据えたコンテナなので、失敗するファイルがラッパー自体の問題であることはほとんどありません。中に入っている何か——10bitのH.264ストリーム、DTSやTrueHDの音声、古いチップでのAV1——がそのデバイスにデコードできないコーデックであり、その責めをコンテナが負わされているだけです。

2026年7月30日

助けを借りずに開けられた

iPhone · iPad 開く
Mac 開く
FoxDL 開く

ネイティブ対応というのは、コンテナ自体と、Appleがデコーダーを提供しているコーデックの両方に言えることです。どちらも必要です。ハードウェアが一度も出会ったことのないストリームを保持する、完全に正当なMP4は、開いても黒い画面になったり無音で再生されたりして、有用な理由は何も示してくれません。

事実

正式名称 MPEG-4 Part 14、および QuickTime File Format
種類 コンテナ——同じ設計に2つの名前
拡張子 .mp4、.m4v、.mov、.m4a(音声のみ)
公開 MOVは1991年にApple。MP4は2001年、そこから派生
常に再生できる映像 High profileまでの8bit H.264、2015年以降のあらゆる端末でのHEVC
再生できないことが多い映像 H.264 High 10(10bit)、MPEG-4 Part 2(DivX/XviD)、2023年より前のハードウェアでのAV1
常に再生できる音声 AAC、ALAC、MP3、PCM
再生できないことが多い音声 MP4に入ったDTS、DTS-HD、TrueHD、Vorbis、Opus
字幕 クローズドキャプションと1種類のタイムドテキスト形式のみ。MKVほどの幅広さはない

2つの名前を持つ1つの形式

先に生まれたのはMOVです。Appleは1991年にQuickTimeを公開し、そのファイル構造は非常によくできていたため、MPEGグループがMPEG-4用のコンテナを必要とした際にそれを取り込み標準化しました。だからMP4とMOVは構造的にほぼ同じもの——メディアのトラックを記述するメタデータの箱——であり、たいていのツールで一方を他方にリネームしてもそのまま機能する理由もそこにあります。

実際の違いは、それぞれが「何を保持してよいか」です。MOVはApple自身のものなので、QuickTimeがこれまで対応してきたあらゆるもの——ProResや、スマホが決してデコードしないコーデックまで——を受け入れます。MP4はより厳格で移植性の高い標準です。どちらも8言語分の字幕や吹き替え音声を運ぶようには設計されておらず、そのすき間を埋めたのがMatroskaです。

これらはApple製デバイスならどれでも開ける形式であるため、ほぼすべての変換の行き先にもなっています。「MP4に変換する」とは、要は「iOSが受け入れる箱にこれを入れる」ことの言い換えです。

それなのに、なぜこのファイルは再生されないのか

ファイルを開くには2つの要素が必要で、コンテナに関係するのは最初の一つだけだからです。システムは箱を読み、トラックを見つけ、それからデコーダーにそのトラックを映像と音に変換するよう依頼します。デコーダーがなければ、そこまでは何もかも成功しているので、失敗の見え方がひどく奇妙になります。ファイルは開きます。再生時間も表示されます。シークバーもあります。ただ、見るものが何もないのです。

症状によって、どちらが壊れているか分かります。

  • 音は出るが映像が出ない — 映像コーデックに対応していません。Appleのハードウェアでよくある原因は、しばしば*Hi10P*と表記される10bit H.264で、アニメのリリースによく見られます。ハードウェアのH.264デコーダーは8bit専用で、システムのプレーヤーにソフトウェアによる代替はありません。
  • 映像は出るが音が出ない — 音声コーデックに対応していません。ディスクからリッピングされたものによくあるのがDTSとTrueHDです。
  • どちらも出ずにエラーになる — たいていファイルが壊れているか途中で切れているか、あるいはインデックスが末尾にあるMP4で、その部分がまだ届いていない場合です。
  • どちらも出るがカクつく — 対応していないわけではなく、単にビットレートや解像度がそのチップの能力を上回っているだけです。

独自のデコーダーを持つプレーヤーはこの問題すべてを回避します。システムに一切問い合わせることがないからです。10bitのH.264もDTSも自前でソフトウェアデコードし、完成したフレームを画面へ渡します。

どう対処するか

  1. 実際に何が入っているか調べる

    何かを変換する前に、ファイルのストリームを確認してください。映像が10bit H.264で音声がDTSだと分かれば、何を変える必要があるのか正確に把握できます——しかも音声だけで済むことも多く、それなら1時間ではなく数秒の作業です。

  2. 失敗しているストリームだけを再エンコードする

    音声トラックがDTSだからという理由でファイル全体を変換すれば、1時間を無駄にして無意味に画質まで落とすことになります。音声トラックだけを差し替えれば、映像はビット単位で同一のまま保たれます。

  3. ソフトウェアデコードするプレーヤーで再生する

    変換も見極めも一切不要です。独自のデコードスタックを持つプレーヤーは10bitのH.264、DTS、TrueHDを直接開きます。これはFoxDLがやっていることで、MKVを開けるのと同じ理由で、Appleのプレーヤーが開けないMP4もカバーします。

形式の問題に見えて実はそうでない2つのこと

パソコンでは問題なく再生できるのに、スマホではカクつく

デスクトップのCPUは、スマホがハードウェアデコーダーにやらせようとしていることを力任せに処理できます。ファイル自体は何もおかしくありません。同じファイルをビットレートを下げて作れば、問題なく再生できます。

ウェブからダウンロードしたファイルがシークできない

MP4はすべての位置を示すインデックスを保持しています。それがファイルの末尾に書かれていると、プレーヤーはどこかへ飛ぶ前にファイル全体を持っている必要があります。このインデックスを先頭に移すこと——*faststart*と呼ばれることもあります——は、数キロバイトの書き換えであって変換ではありません。

ロングバージョン iPhoneがある動画は開いて、別の動画は拒否する理由 コンテナ、コーデック、そしてiOSが開こうとしないファイルを見る3つの方法。

このフォーマットに関する質問

近くのフォーマット

あなたのライブラリが、やっと一箇所に。

無料でダウンロードできます。アカウント登録も、サインアップも、何かを差し出す必要もありません。

ダウンロードは App Store