MP4 (MPEG-4 Part 14)拡張子:.mp4
MIME Type:video/mp4
タイプコード:mpg4
開発者:ISO
種別:メディアコンテナ
包含物:音声, 映像, テキスト
派生元:Quicktime .mov
国際標準:ISO/IEC 14496-14
MP4(エムピーフォー、エムペグ フォー)はISO/IEC JTC 1の動画像圧縮符号化の標準規格であるMPEG-4のPart 14で規定されているファイルフォーマットで、MP4ファイル、MP4コンテナなどと呼ばれている。
MP4ファイルフォーマットは、QuickTimeファイルフォーマットをベースに仕様が策定された、ISOベースメディアファイルフォーマット(ISO/IEC 14496-12)の派生フォーマットである。なお、同様のフォーマットとして、Motion JPEG 2000のファイルフォーマットであるMJ2ファイルフォーマットがある。
主に拡張子.mp4のファイルとしてMPEG-4の動画・音声の記録に用いられている。第3世代携帯電話の業界団体である3GPPおよび3GPP2でも独自拡張を加えたものが標準ファイルフォーマットとして採用されている(あくまで標準でありキャリアごとにさらなる拡張が加えられている)。
目次
1 ISOベースメディアファイルフォーマット
1.1 ボックス構造
2 MP4ファイルフォーマット
2.1 MP4ファイルに格納できるメディアの種類
2.2 MP4ファイルで使われる拡張子
3 利用例
4 関連項目
5 外部リンク
//
ISOベースメディアファイルフォーマット(ISO/IEC 14496-12)は、オブジェクト指向のデータ構造、すなわち木構造を持ち、各オブジェクトをボックス(box)と呼ぶ。あるいは、元になったQuickTimeファイルフォーマットの用語であるアトム(atom)と呼ぶこともある。また、一つないし複数のボックスを子要素として持つことができるボックスがあり、その親要素のボックスをコンテナボックス(container box)ないし単にコンテナと呼ぶ。コンテナが子要素以外のデータを持つことはできない。各ボックスの先頭には符号なし32ビット整数型の自身のサイズおよび、半角英数4文字(32ビット)のボックスタイプが必ず与えられる。なお、慣例的にボックスタイプは小文字で記述される。
ボックス構造を採用したことにより、複数のトラック(Track)を同時に1つのファイルに格納したり、時刻情報やメタデータを記述することにより多重化や任意時刻でのアクセス(ランダムアクセス)を容易に実現できる。また、さまざまな種類のメディアを柔軟に扱えるという特徴もあり、MP4のようにMPEGに完全に準拠したメディアのみを含むことのみならず、3GPP/3GPP2などのようにMPEGの規格外であるAMRやH.263などのメディアを含むことも可能である。
ボックス構造の扱い方はある程度はユーザが任意に決めることができる。例えば、動画、音声などのストリームを単純に直列に並べることも可能であり、また、同期やランダムアクセスを容易にするために動画と音声を細切れに格納することも可能である。
ISOベースメディアファイルフォーマットのボックス構造は木構造をとるが、ここでは主なボックスについて述べる。実際には多数の木構造のボックスが含まれ、さまざまなレベルの情報を柔軟に格納することができるようになっている。
ftyp:ファイルタイプの記述。ファイルの先頭にただ一つだけ含まれる。
moov:全てのメタデータを含むコンテナ。ファイル中にただ一つだけ含まれる。メタデータとして含まれる情報としては、各トラック(動画、音声など)のヘッダ情報やコンテンツの内容のメタ記述、時刻情報などが含まれる。
mdat:トラックのメディアデータ本体のコンテナ。ファイル中のmdatボックスの数は任意である。すなわち、動画と音声、動画だけ、音声だけ、あるいは複数の種類のトラックを同時に含む、などのように、任意のトラック構成を持てるようになっている。
MP4ファイルフォーマット(ISO/IEC 14496-14)は、ISOベースメディアファイルフォーマットに対して、MPEG-4のオブジェクト符号化に対応するためのオブジェクト記述ボックス(iods)の追加や、動画や音声などのエレメンタリストリームに関する情報を記述するサンプル記述ボックス(mp4v、mp4a、mp4s)の追加などの拡張を行ったものである。
MP4ファイルは以下に示す映像・音声コーデックのメディアデータを組み合わせて(多重化して)格納し利用できる。
ビデオ:MPEG-4、MPEG-2(H.262)、MPEG-1、MPEG-4 AVC、DivX
オーディオ:AAC、HE-AAC、AC-3、MP3、MP2、MP1、ALAC、TwinVQ、CELP(QCELPとは異なるので注意)
静止画:PNG、JPEG
テキスト
また、3GPP/3GPP2ファイルフォーマットでは、H.263、MPEG-4(オプション)、AMR、AACなどを格納できる。
MP4ファイルの拡張子は.mp4、m4v、.m4aなどがあるが、公式な拡張子は.mp4のみである。
また、派生フォーマットである3GPP/3GPP2ファイルフォーマットの拡張子はそれぞれ.3gp、.3g2である。