動画コーデック

MPEGは標準化された規格ながら、MPEG-1、2では圧縮方法までは規定されていません。したがって、作成された動画データが規格を満たしていれば、MPEG-1や2となります。さらにMPEG-4では、伸長方式のみが規定されて、圧縮方法についてはまったく規定されていません。このことが、非常に多くのコーデックを産み出す原因になっています。さらに、規格よりも先にコーデックが登場するという逆転現象もあります。MPEG-4がまだ完全に標準化を終えていないこともありますが、H.264コーデックを使ったAVIファイルが、「正しい」MPEG-4動画であるかはやや判断がわかれるところです(MP4コンテナを使ったものがMPEG-4であるとの主張もある)。そんな状況から、「MPEG-4準拠」といったあいまいな表現をするものもあります。本稿では、やや広く解釈します。以下に代表的な、MPEG-4のコーデックを紹介します。

MS MPEG-4

MPEG-4の標準化が行われることを契機に、Microsoftが開発したコーデックです。当時は、音声の仕様などが決まっておらず、音声データについてはなんでもよいという曖昧な状態でスタートしました。コンテナはAVIが使われました。自由度の高さから、利用される機会が多かったコーデックです。v1からv3まで、3つのバージョンがあります。Windows Mediaツール 4.1を利用することで、エンコードが可能です。Windows Media Player 6にMS MPEG-4コーデックが搭載され、以降のWindows Media Playerで再生が可能です。

DivX

2時間分の動画をCD1枚に収めることが可能という圧縮率が注目を集めました。当初は、MS MPEG-4を改造して作られたものでした(MS MPEG-4 v3のコーデック識別コードを書き換えただけ)。バージョン4以降は、独自に開発を行い、法的な問題は解消しました。技術的には、H.263に準拠します。2000年に一部商用され(DivX社を創立)、DivX Proという製品をリリースします。商用後も一部の機能は無償で提供されており、現在でも利用者が多いコーデックです。一部のDVDプレーヤーでは再生も可能です。本稿執筆時点では、最新版の6.8が公開されています。配布内容には、コーデックの他、プレーヤーなども同梱されています。

図 DivXの公式ページ

Windows Media Video

MS MPEG-4の後継と位置付けられるコーデックです。バージョン7からスタートし、現在は9が最新バージョンです。MS MPEG-4同様にバージョンによる差がありますが、Windows Media Playerを利用する範囲では、再生にはまったく問題がなく(コーデックが存在しない場合はネットワーク経由で自動的にインストールされる)、Windowsの標準的な動画として扱われています。動画にWindows Media Video、音声にWindows Media Audioを使った、WMVコンテナが標準で利用されます(AVIコンテナも使えないことはない)。画質がよい、ストリーミングにも対応するなどの特徴があります。一方、エンコードには若干時間がかかります。エンコードには、Windows Media エンコーダ 9を利用します。

図 Windows Media エンコーダ 9のダウンロード

Xvid

DivXの商用化に伴い、オープンソースで開発を続けるフリーのコーデックです。DivX同様、技術的にはH.263に準拠します。エンコードはDivXよりも高速ですが、再生においてはやや負荷が高いという指摘があります。MPEG-4特許のライセンスを得ていないため、公式サイトなどでは、ソースコードのみの配布が行なわれています。しかし、一部にはバイナリコードも提供されています。

図 Xvidの公式ページ

H.264

MPEG-4の項目でも解説したように、最新のコーデックです。その圧縮率の高さは、これまでのコーデックをはるかに上回ります。アルゴリズムはそれまでのMPEG-4とほぼ同じです。圧縮・伸長の際に行われる処理の1つ1つについて、改良を加えていったことで、全体として低いビットレートでも、大幅な改善が実現されました。ただし、その演算処理量は大幅に増加しました。CPUの高速化などがあったことが前提となったといえます。H.264はエンコード用のコーデックは配布されていますが、デコード用のコーデックは配布されていません。したがって、H.264の再生には、DirectShowフィルタを利用する方式が一般になっています。