MP4とは
MP4(エムピーフォー)は、
MPEG-4規格の一部として標準化されたデジタル
マルチメディアコンテナフォーマットです。主に
動画や
音声の格納に用いられますが、字幕や静止画など、様々な種類のデータを柔軟に格納できるのが特徴です。正式にはISO/IEC 14496-14:2003として規定されており、
拡張子.mp4が推奨されています。
MP4は、
MPEG-4で規定された
動画・
音声の記録に用いられるほか、第3世代
携帯電話の業界団体である
3GPPおよび
3GPP2でも、独自拡張を加えたものが標準ファイルフォーマットとして採用されています。ただし、キャリアごとにさらなる拡張が加えられている場合もあります。
歴史
MP4の歴史は、2001年に最初の標準である
MPEG-4 Part1:Systems(ISO/IEC 14496-1:2001)が標準化されたことに始まります。この規格は後の規格と区別するため「MP4 version1」と呼ばれ、Apple社の
QuickTimeコンテナフォーマットを基に策定されました。
2003年には「MP4 version2」として知られる
MPEG-4 Part14:MP4 file format(ISO/IEC 14496-14:2003)が標準化されました。この規格は、「ISOベースメディアファイルフォーマット」(
MPEG-4 Part12、ISO/IEC 14496-12:2003)を拡張して作られています。
2004年には「MP4 AVCE」(
MPEG-4 Part15、ISO/IEC 14496-15:2004)という拡張規格が定められ、
H.264や
AACといった
コーデックのデータを格納できるようになりました。
技術詳細
ISOベースメディアファイルフォーマット
MPEG-4の第12部(ISO/IEC 14496-12)で規定されているISOベースメディアファイルフォーマットは、木構造を持つデータ構造をしています。各ノードは「ボックス(box)」または、元になった
QuickTimeファイルフォーマットの用語である「アトム(atom)」と呼ばれます。
ボックスには、子要素として一つまたは複数のボックスを持つことができるものがあり、その親要素のボックスは「コンテナボックス」または単に「コンテナ」と呼ばれます。コンテナは子要素以外のデータを持つことはできません。各ボックスの先頭には、符号なし32
ビット整数型の自身のサイズと、半角英数4文字(32
ビット)のボックスタイプが必ず記述されます。慣例的に、ボックスタイプは小文字で記述されます。
ボックス構造を採用したことで、複数のトラック(
動画、
音声など)を1つのファイルに格納したり、時刻情報や
メタデータを記述することで、多重化や任意時刻でのアクセス(ランダムアクセス)を容易に実現できます。また、様々な種類のメディアを柔軟に扱えるという特徴もあり、MP4のようにMPEGに完全に準拠したメディアだけでなく、
3GPP/
3GPP2のようにMPEGの規格外であるAMRやH.263などのメディアを含むことも可能です。
ボックス構造の扱い方はある程度ユーザーが任意に決めることができ、例えば、
動画や
音声などのストリームを単純に直列に並べることも可能です。また、同期やランダムアクセスを容易にするために、
動画と
音声を細切れに格納することも可能です。
ボックス構造
ISOベースメディアファイルフォーマットのボックス構造は木構造をとりますが、ここでは主なボックスについて説明します。実際には多数の木構造のボックスが含まれており、様々なレベルの情報を柔軟に格納できるようになっています。
ftyp: ファイルタイプの記述。ファイルの先頭にただ一つだけ含まれます。
moov: 全ての
メタデータを含むコンテナ。ファイル中にただ一つだけ含まれます。各トラック(
動画、
音声など)のヘッダ情報やコンテンツの内容のメタ記述、時刻情報などが含まれます。
mdat: トラックのメディアデータ本体のコンテナ。ファイル中のmdatボックスの数は任意です。動画と音声、動画だけ、音声だけ、あるいは複数の種類のトラックを同時に含むなど、任意のトラック構成を持てます。
MP4ファイルフォーマット
MP4ファイルフォーマットは、ISOベースメディアファイルフォーマットに対して、MPEG-4のオブジェクト符号化に対応するためのオブジェクト記述ボックス(iods)の追加や、動画や音声などのエレメンタリストリームに関する情報を記述するサンプル記述ボックス(mp4v, mp4a, mp4s)の追加などの拡張を行ったものです。
格納できるメディアの種類
MP4ファイルは、以下に示す映像・音声コーデックのメディアデータを組み合わせて(多重化して)格納し、利用できます。
ビデオ: MPEG-1、MPEG-2、
MPEG-4 Visual (
MPEG-4 Part 2)、
H.264/
MPEG-4 AVC (
MPEG-4 Part 10)、
H.265 (
H.265/HEVC)、AV1など
オーディオ: AAC、HE-AAC、MP3、MP2、MP1、MPEG-4 ALS、TwinVQ、CELP(QCELPとは異なるので注意)、Opusなど
静止画: PNG、
JPEG
テキスト
また、3GPP/3GPP2ファイルフォーマットでは、H.263、MPEG-4(オプション)、AMR、AACなどを格納できます。
仕様書では、MP4ファイルの拡張子は.mp4が推奨されています。
.m4v、.m4a、.m4p はApple社が決めた
拡張子であり、iTunes Storeで配信されるファイルにはDRM技術の
FairPlay(.m4v, .m4p)と、ISOで標準化されていないAC-3(.m4v)が使用されることがあります。また、.m4aではApple Losslessがサポートされています。
派生フォーマットである3GPP/3GPP2ファイルフォーマットの拡張子はそれぞれ .3gp、.3g2 です。
.m4r はiPhone用
着信メロディに使われる
拡張子ですが、中身は40秒までの長さの制約がついたMP4オーディオファイルです。
Adobe FlashのFlash Videoでは .f4v という拡張子が使われています。
利用例
MP4は様々なデバイスやプラットフォームで利用されており、その汎用性の高さが伺えます。
Adobe Flash Player 9以降
WALKMAN
iPod
iPhone
iPad
PlayStation 3
QuickTime
Wii(写真チャンネル、音声ファイルのみ対応)
携帯電話
PlayStation Portable (PSP)
PlayStation Vita (PS Vita)
XMedia Recode
YouTube
ニコニコ[[動画]]
ニンテンドーDSi
SONY XDCAM EX
Windows Media Player 12以降
Windows Phone (Windows Mobile)
Android
DivX Plus v9以降
mora
* chromebook
まとめ
MP4は、その柔軟性と汎用性から、現代のデジタルメディアにおいて不可欠なフォーマットとなっています。様々な機器やプラットフォームで利用され、高品質な映像・
音声体験を提供し続けています。