MPEG-4

MPEG-4は、動画・音声全般をデジタルデータとして扱うための規格のことである。MPEG-1やMPEG-2と同様、システム、ビジュアル、オーディオ、ファイルフォーマットの各技術から構成される。しかしながら、一般的には「MPEG-4」と呼ぶ場合、動画の符号化方式を記述したビジュアル部分だけを指すことが多い。

規格が広範なことが「MPEG-4とは何か」という説明を難しくさせている上に、ビジュアル、あるいはファイルフォーマットの一部の規格を利用したものも単に「MPEG-4です」と説明されることが多く、使われ方、意味のとられ方が混乱している用語でもある。

なお、規格化を行っているMoving Picture Experts GroupではMPEG-4を最後の動画/音声符号化の規格とする意向であり、現在では3次元コンピュータグラフィクスや音声合成などを含む大変広範な規格になっている。MPEG技術は、各技術毎にパートと呼ばれる規格が作成され、技術が採用/規格化されるたびにパートが増える。2003年にH.264がMPEG-4 Part 10 Advanced Video Codingとして規格化されるなど、現在もなお追加・拡張が継続されている規格である。

1. 規格の構成
--------

MPEG-4自体は、動画・音声全般を扱う多様なマルチメディア符号化フォーマットを規定している。これらは以下に示す複数の「部」に分れて標準化されている。MPEG-4の各部は、ISO/IEC 14496を翻訳したJIS X 4332の各部と対応する。なお、第31部以降は現在開発中である。

動画には第2部と第10部があることに注意する。一般にMPEG-4動画といえば第2部を指すことが多く、第10部は第2部と区別するために、MPEG-4 AVC と呼ばれることがある。MPEG-4は動画の符号化規格と呼ばれることもあるが、実際に規定されているのは復号のみであり、符号化は規定していない。



2. MPEG-4 システム
--------------

マルチメディアデータをファイルや記録メディアに保存したり、ネットワーク上で伝送するには、動画と音声毎に別々に符号化した符号化データの統合と同期のための仕組みが必要となる。この多重化方式を規定するものがシステムである。なお、システムによって多重化される以前の動画像や音声のバイナリデータをエレメンタリストリームと呼ぶ。

動画像と音声のエレメンタリストリームを多重化するという目的においては、MPEG-1やMPEG-2のシステムに近いといえるが、MPEG-4についてはオブジェクト符号化という概念があるという点で異なる。MPEG-4においては、オーディオ、ビジュアルのデータは各1つのオブジェクトとして扱われ、これらのオブジェクトを多重化・同期するのがシステムの役割である。なお、MPEG-4の動画像や音声のエレメンタリストリームの多重化には、MPEG-4システムの他にMPEG-2トランスポートストリームを用いることも可能であり、地上デジタルテレビジョン放送の1セグメント放送ではAVCとAACの伝送にMPEG-2 TSが用いられる。

さらに、複数のオブジェクトを組み合わせて扱うことを可能にするためのシーン記述のための仕様として、VRML97をベースとしたBIFSが規定されている。例えば、人物や背景の動画および音声をそれぞれ別個のオブジェクトとして符号化し、それらを重ね合わせて表示したり、ユーザが任意にオブジェクトを動かしたりできるようなアプリケーションを作ることが可能である。しかし、このようなオブジェクト符号化は、一般向けに実用化されていないのが現状である。

オブジェクト符号化の概念の導入やBIFSなどにより、MPEG-4システムの内容が肥大化してしまったため、ファイルフォーマットに関しては後述のPart 14として独立して規定されている。ちなみに、ネットワーク上での伝送に関しては、Part 8および [1] で規定されている。

なお、バイナリフォーマットであるBIFSを容易に扱えるようにするため、XML準拠の記述形式として、Extensible MPEG-4 Textual Format in XML がPart 11で規定されている。

3. MPEG-4 動画
------------

MPEG-1ではビデオCD、MPEG-2では放送やHDTVでの使用を想定しているのに対して、MPEG-4では低ビットレートでの使用にまで用途を拡大することを目標として規格化が開始された。符号化技術としては先に規格化が進んでいたH.263を基に幾つかのツールを追加した構成になっている。H.263との相違点は、フレーム間予測におけるBフレームの採用、DCT係数のAC/DC予測の導入、などが挙げられる。

このビジュアル技術自体も、エラー耐性技術のほか、任意形状技術やスプライト符号化技術、顔画像の動きを符号化するフェース符号化技術、スケーラビリティ技術などを盛り込んだ巨大なものであったが、現在ではエラー耐性技術のほかは殆ど使用されていない。

圧縮アルゴリズムの基本原理は、MPEG-1、MPEG-2、H.263などと基本的には同様であり、空間変換やフレーム間予測、量子化、エントロピー符号化を採用している。

3.1. 空間変換
---------

MPEG-4では、空間変換に離散コサイン変換が用いられる。8×8画素のブロックを単位として、原画像もしくはフレーム間予測の予測誤差画像のDCT係数を求め、その係数を量子化している。

3.2. フレーム間予測
------------

フレーム間予測において参照フレームとして指定できるフレームは、Iフレーム, Pフレーム、Bフレームが存在する。Pフレームでは時間軸で前方のフレーム1枚の画像を利用して符号化を行うが、Bフレームでは前方・後方2枚の画像を利用して符号化を行う。

3.3. 1/4画素精度動き補償
----------------

動き補償の精度としては1/2画素精度まで基本的に利用可能である。MPEG-4 ASPでは、1/4画素精度動き補償も採用している。

3.4. AC/DC予測
------------

空間変換で得られたDCT係数に対して、さらに係数の最上列ないし最左列の係数から予測を行って情報量を削減する技術が導入されている。

DC予測とは、隣接した「左MBと左上MBのDC成分の変化量」と「左上MBと上MBのDC成分の変化量」を比較して、より傾きの小さい方向から現在のMBのDC成分を予測する手法である。この方法を用いることによって、相関の高い画素からの予測を行うことが可能であるため、圧縮率の向上が期待できる。

AC予測とは、フレーム間予測を用いずに符号化される画素ブロックについて、単純に離散コサイン変換の係数を量子化して符号化するのではなく、DCT係数行列のうち最上列ないし最左行の値について、上ないし左の隣接ブロックの値との差分を符号化することによって符号量を削減する方式である。予測の方向の決定については、DC予測での予測方向に従う。 この予測方式は、後にH.263でもAnnex Iとして採用された。

DC予測は必ず使用しなければならず、AC予測は使用有無をヘッダで切り替えることが可能である。

3.5. エントロピー符号化
--------------

ハフマン符号をベースとした可変長符号化が採用されている。

4. MPEG-4 音響
------------

MPEG-4の音響符号化技術では、もっとも広く知られているMPEG-4 AACの他にもMPEG-4 CELP、TwinVQ、HVXC、HILN、TTSI など様々な音響符号化技術が規格化されている。

4.1. AAC
--------

MPEG-4 第3部で採択されたAAC符号化には以下の種類がある。

Low Complexity Advanced Audio Coding 
High-Efficiency Advanced Audio Coding 
Scalable Sample Rate Advanced Audio Coding 
Bit Sliced Arithmetic Coding 
Long Term Predictor 

4.2. ALS
--------

MPEG-4 第3部 サブパート11において、圧縮時に音響符号が劣化しないMPEG-4 ALS技術が規格化された。

4.3. SLS
--------

MPEG-4 第3部 サブパート12において、圧縮時にAAC部分の階層と、補完してロスレスになる階層の複数階層で音響を符号化できるMPEG-4 SLSが規格化された。SLS符号化された音響信号は、SLS再生機では劣化せず再生でき、さらにAAC再生機でも再生できるという特徴を持つ。

5. MPEG-4 AVC 動画
----------------

第2部では、規格範囲が拡散しすぎてしまったという反省のもと、通常の動画像の圧縮効率を追求するという方針のもと開発が進められた。ITU-Tと共同で規格化したものでありH.264と同じもの。H.264/AVCとも呼ばれる。詳細はH.264ページを参照のこと。

== MPEG-4 ファイルフォーマット (第12および14部）