動画ファイルについて02_MPEG-4について

>

前回は、動画のファイル形式について簡単に(引 用で)ご案内しました。
「コーデック」と「コンテナ」の違いや
動画ファイルや音声ファイルの種類について
ざっとご理解いただけたかと思います。

現時点で、動画ファイルについて追及するなら
「コーデック」としての「MPEG-4」を勉強しなければなりません
(※最近多用されるh264もMPEG-4の一部です)。

まず、Wikipediaで調べると「使われ方、意味のとられ方が混乱している用語でもある」と宣言されます。
実際、MPEG4はコーデックにもコンテナにも使用されており、さらに様々な事情で変化も遂げているので「これです」という定義が伝えにくいものです。
「トイレの花子さん」に似ています。皆が知っているけれど、実際はよく分からない。
それでも設定に汎用性があるので時代や事情を選ばずに登場する。
そのために、時代や事情によって少しずつ話が変わってく。まあ…あくまで類似です、同一ではありません。
しかし、自由度の高いコーデックであったという点が、このファイルの人気と複雑さの理由ではあります。

さらに、MPEG-4が分かりにくい原因のひとつとして
現在もなお追加や拡張が継続されている規格であるという点があります。
MPEGの規格化を行っている団体(Moving Picture Experts Group)が
MPEG-4を最後の動画/音声符号化の規格とするとしており
そのため、現在では3次元CGや音声合成などを含む大変広範な規格になっています。

そもそも、MPEG(MPEG-1/2)は ビデオCDやDVD、テレビなどで使用されており、
MPEG-4は インターネットなどでの動画再生を前提として、
低レート(サイズを小さくした状態)で の高画質再生を目的として開発されたので、圧縮効率が良いのが特徴です。

では、どのように圧縮をしているのでしょう。
そこには、「動き補償」と呼ばれる技術が関わっています。
「動き補償」とは、フレーム間予測を行う際の処理方式のことで
つまり、映像データを圧縮する際に、
連続する画面間で映っているモノがどのように動いたかを検出して効率よく圧縮する手法です。

動画は1秒が約30のフレームから成立しています。
当然、現在のフレームと次のフレームはよく似ています。
フレーム間予測とは、動画のこの性質を利用して、現在のフレームから次のフレームを予測する技術です。

現在のフレームを「A」、 次のフレームを「B」とした場合
「A-Bの データ差分」は「B」より小さく
更に「B」 は「A」と「A-B」 から復元できるので、データが圧縮されたといえます。
尚、フレーム間予測では、前のフレームから予測する方法(前方向予測)だけではなく
後のフレームから予測する方法(後方向予測)や前後のフレームから予測する方法(両方向予測)もあります。

※この記事は2015年に書かれたものです

記.杉浦(動画制作)

By