MPEG-4
MPEG-4(エムペグフォー、ISO/IEC 14496)は、動画・音声全般をデジタルデータとして扱うための規格のことである。MPEG-1やMPEG-2と同様、システム、ビジュアル(MPEG-1/-2ではビデオと呼ぶ)、オーディオ、ファイルフォーマットの各技術から構成される。しかしながら、一般的には「MPEG-4」と呼ぶ場合、動画の符号化方式を記述したビジュアル部分だけを指すことが多い。
規格が広範なことが「MPEG-4とは何か」という説明を難しくさせている上に、ビジュアル、あるいはファイルフォーマットの一部の規格を利用したものも単に「MPEG-4です」と説明されることが多く、使われ方、意味のとられ方が混乱している用語でもある。
なお、規格化を行っているMoving Picture Experts GroupではMPEG-4を最後の動画/音声符号化の規格とする意向であり、現在では3次元コンピュータグラフィクスや音声合成などを含む大変広範な規格になっている。MPEG技術は、各技術毎にパート(Part)と呼ばれる規格が作成され、技術が採用/規格化されるたびにパートが増える。2003年にH.264がMPEG-4 Part 10 Advanced Video Codingとして規格化されるなど、現在もなお追加・拡張が継続されている規格である。
MPEG-4(ISO/IEC 14496)自体は、動画・音声全般を扱う多様なマルチメディア符号化フォーマットを規定している。これらは以下に示す複数の「部(Part)」に分れて標準化されている。MPEG-4の各部は、ISO/IEC 14496を翻訳したJIS X 4332の各部と対応する。なお、第31部以降は現在開発中である。
動画には第2部(1999年制定)と第10部(2003年制定)があることに注意する。一般にMPEG-4動画(またはMPEG-4ビジュアル)といえば第2部を指すことが多く、第10部は第2部と区別するために、MPEG-4 AVC と呼ばれることがある。MPEG-4は動画の符号化規格と呼ばれることもあるが、実際に規定されているのは復号のみであり、符号化は規定していない。
マルチメディアデータをファイルや記録メディアに保存したり、ネットワーク上で伝送するには、動画と音声毎に別々に符号化した符号化データの統合(多重化)と同期のための仕組みが必要となる。この多重化方式を規定するものがシステムである。なお、システムによって多重化される以前の動画像や音声のバイナリデータをエレメンタリストリーム(ES: Elementary Stream)と呼ぶ。
動画像と音声のエレメンタリストリームを多重化するという目的においては、MPEG-1やMPEG-2のシステムに近いといえるが、MPEG-4についてはオブジェクト符号化という概念があるという点で異なる。MPEG-4においては、オーディオ、ビジュアル(ビデオ)のデータは各1つのオブジェクトとして扱われ、これらのオブジェクトを多重化・同期するのがシステムの役割である。なお、MPEG-4の動画像(ビジュアルおよびAVC)や音声のエレメンタリストリームの多重化には、MPEG-4システムの他にMPEG-2トランスポートストリーム(MPEG-2 TS)を用いることも可能であり、地上デジタルテレビジョン放送の1セグメント放送ではAVCとAACの伝送にMPEG-2 TSが用いられる。
さらに、複数のオブジェクトを組み合わせて扱うことを可能にするためのシーン記述のための仕様として、VRML97をベースとしたBIFS(Binary Format for Scenes)が規定されている。例えば、人物や背景の動画および音声をそれぞれ別個のオブジェクトとして符号化し、それらを重ね合わせて表示したり、ユーザが任意にオブジェクトを動かしたりできるようなアプリケーションを作ることが可能である。しかし、このようなオブジェクト符号化は、一般向けに実用化されていないのが現状である。
オブジェクト符号化の概念の導入やBIFSなどにより、MPEG-4システムの内容が肥大化してしまったため、ファイルフォーマット(MP4)に関しては後述のPart 14として独立して規定されている。ちなみに、ネットワーク上での伝送に関しては、Part 8および  で規定されている。
なお、バイナリフォーマットであるBIFSを容易に扱えるようにするため、XML準拠の記述形式として、Extensible MPEG-4 Textual Format in XML (XMT)がPart 11で規定されている。
MPEG-1ではビデオCD、MPEG-2では放送やHDTVでの使用を想定しているのに対して、MPEG-4では低ビットレートでの使用にまで用途を拡大することを目標として規格化が開始された。符号化技術としては先に規格化が進んでいたH.263を基に幾つかのツールを追加した構成になっている。H.263との相違点は、フレーム間予測におけるBフレームの採用、DCT係数のAC/DC予測の導入、などが挙げられる。
このビジュアル技術自体も、エラー耐性技術のほか、任意形状技術やスプライト符号化技術、顔画像の動きを符号化するフェース(Face)符号化技術、スケーラビリティ技術などを盛り込んだ巨大なものであったが、現在ではエラー耐性技術のほかは殆ど使用されていない。
圧縮アルゴリズムの基本原理は、MPEG-1、MPEG-2、H.263などと基本的には同様であり、空間変換やフレーム間予測、量子化、エントロピー符号化を採用している。
MPEG-4では、空間変換に離散コサイン変換が用いられる。8×8画素のブロックを単位として、原画像もしくはフレーム間予測の予測誤差画像のDCT係数を求め、その係数を量子化している。
フレーム間予測において参照フレームとして指定できるフレームは、Iフレーム, Pフレーム、Bフレームが存在する。Pフレームでは時間軸で前方のフレーム1枚の画像を利用して符号化を行うが、Bフレームでは前方・後方2枚の画像を利用して符号化を行う。
動き補償の精度としては1/2画素精度まで基本的に利用可能である。MPEG-4 ASP(Advanced Simple Profile)では、1/4画素精度動き補償も採用している。
空間変換で得られたDCT係数に対して、さらに係数の最上列ないし最左列の係数から予測を行って情報量を削減する技術が導入されている。
DC予測とは、隣接した「左MBと左上MBのDC成分の変化量」と「左上MBと上MBのDC成分の変化量」を比較して、より傾きの小さい方向から現在のMBのDC成分を予測する手法である。この方法を用いることによって、相関の高い画素からの予測を行うことが可能であるため、圧縮率の向上が期待できる。
AC予測とは、フレーム間予測を用いずに符号化される画素ブロックについて、単純に離散コサイン変換(DCT)の係数を量子化して符号化するのではなく、DCT係数行列のうち最上列ないし最左行の値について、上ないし左の隣接ブロックの値との差分を符号化することによって符号量を削減する方式である。予測の方向の決定については、DC予測での予測方向に従う。
この予測方式は、後にH.263でもAnnex Iとして採用された。
DC予測は必ず使用しなければならず、AC予測は使用有無をヘッダで切り替えることが可能である。
ハフマン符号をベースとした可変長符号化(VLC; Variable Length Coding)が採用されている。
MPEG-4の音響符号化技術では、もっとも広く知られているMPEG-4 AACの他にもMPEG-4 CELP、TwinVQ、HVXC(Harmonic Vector eXcitation Coding)、HILN(Harmonic and Individual Lines plus Noise)、TTSI(Text To Speech Interface) など様々な音響符号化技術が規格化されている。
MPEG-4 第3部で採択されたAAC符号化には以下の種類がある。
Low Complexity Advanced Audio Coding (LC-AAC)
High-Efficiency Advanced Audio Coding (HE-AAC)
Scalable Sample Rate Advanced Audio Coding (AAC-SSR)
Bit Sliced Arithmetic Coding (BSAC)
Long Term Predictor (LTP)
MPEG-4 第3部 サブパート11において、圧縮時に音響符号が劣化しないMPEG-4 ALS技術が規格化された。
MPEG-4 第3部 サブパート12において、圧縮時にAAC部分の階層と、補完してロスレスになる階層の複数階層で音響を符号化できるMPEG-4 SLSが規格化された。SLS符号化された音響信号は、SLS再生機では劣化せず再生でき、さらにAAC再生機でも再生できるという特徴を持つ。
第2部では、規格範囲が拡散しすぎてしまったという反省のもと、通常の動画像の圧縮効率を追求するという方針のもと開発が進められた(第2部では使用されることがなかったフェース技術やスケーラブル技術は範囲から外されている)。ITU-Tと共同で規格化したものでありH.264と同じもの。H.264/AVCとも呼ばれる。詳細はH.264ページを参照のこと。
マルチメディアデータをファイルに記録するには、動画像と音声のエレメンタリストリームを多重化する必要があるが、後で再生する際に早送りや編集を容易にするためにフレーム単位でアクセスできるように、データを区分けして、さらにアクセス用管理データを付加する方が便利である。MPEG-4では、そのためのとしてMP4ファイルフォーマットを規定している。
音声の場合には、ファイルフォーマットに格納せず、符号化データをそのまま使用することもある。MPEG-1などで規定されたMP3はこの例である。
MP4ファイルフォーマットはAppleのQuickTimeのファイルフォーマットをベースに開発されている。QuickTimeファイルフォーマットで採用されているファイル構造は、さまざまな動画像や音声のエレメンタリストリームを柔軟に多重化可能となっており、汎用的なファイルフォーマットとしてISOベースメディアファイルフォーマット(Part 12)に採用された。このPart 12からMPEG-4用のファイルフォーマットとして派生したものがMP4ファイルフォーマットである。詳細は、MP4ページ参照。
ビジュアル、オーディオ共その規格内において、プロファイルとレベルと呼ばれる概念が規定されている。プロファイルとは使用できるツールを示すものであり、レベルとは使用できるパラメータの範囲を規定するものである。例えば、MPEG-4 Part 2では、シンプルプロファイル(SP)、アドバンスドシンプルプロファイル(ASP)、メインプロファイル (MP)などが規定されそれぞれ使用可能なツールが異なる。MPEG-4 AVCでは、ベースラインプロファイル、メインプロファイル、拡張(Extended)プロファイルの3種類が規定されていたが、2004年に高忠実度化規格(FRExt)が策定され、ハイプロファイル、ハイ10プロファイル、ハイ4:2:2プロファイル、ハイ4:4:4プロファイルの4種類が新たに規定された。
1999年に規格化された直後から、動画像を長時間記録する用途でデジタルカメラの一機能として使用された。当初は、ファイルフォーマットが規格化されていなかったため、マイクロソフト社のASFファイルフォーマットが使用された。近年では、第三世代携帯電話の動画フォーマットとして採用され、PDAを含めてモバイルで見る動画フォーマットの主流になりつつある。特にiPodやPSPがこのフォーマットに対応したことを機に爆発的に普及している。これらの動画符号化技術は、現状MPEG-4 Part 2であるが、2005年後半からは、MPEG-4 AVCも使用されることが確実視されている。
放送や通信分野においては、ライセンスの問題もあり主だった利用例も少なかったが、MPEG-4 AVC (H.264)が地上波デジタル放送の携帯端末向け(1セグメント)放送での採用、Blu-ray DiscやHD DVDのビデオ・コーデックとして承認、などされており、応用例は増えていく見込みである。
第三世代携帯電話の業界団体である3GPPと3GPP2は、動画コンテンツにMPEG-4を採用している。なお、同じファイルフォーマットをサポートした第二世代携帯電話端末も存在する。
映像にはH.263又はMPEG-4 Part 2(のSimple Profile)
を使用している。解像度はQCIF(Sub-QCIF)などに限定されているが、一部端末ではQVGAなども利用可能。
2000年代前半にパソコンで動画を扱う際によく使われたDivXやXvidはMPEG-4 Visual (Video) の技術を利用したものである。これらを利用した映像をAVIの箱(コンテナ)に収めたものは一部のDVDプレーヤーやゲーム機等での再生に対応している。
(DivX + MP3).avi
SDメモリーカードのSD-Video規格やメモリースティックのメモリースティックビデオフォーマットにMPEG-4が採用されている。前者はASF形式、後者はMP4を採用している。