Audio Video Interleave
Audio Video Interleave(オーディオ ビデオ インターリーブ)は動画用ファイルフォーマットである。
拡張子 | .avi |
---|---|
MIMEタイプ | video/avi video/msvideo video/x-msvideo |
タイプコード | 'Vfw ' |
UTI | public.avi |
マジック ナンバー | AVI 0x20 (8バイト目から) |
開発者 | マイクロソフト |
種別 | コンテナフォーマット |
包含物 | 音声、動画 |
派生元 | RIFF |
拡張 | DivX Media Format |
概要
Windows標準の動画用ファイルフォーマット(コンテナ形式)で、AVIファイル、AVIコンテナなどと呼ばれている。拡張子は「.avi」である。だいたいはWindows Media Playerで再生可能である。
マイクロソフトがアップルコンピュータのQuickTimeに対抗するために開発したAPI、Video for Windowsで対応している。
RIFFというフォーマットを利用し画像と音声を交互に織り交ぜながら格納する。
インデックスが最後にあるため、AVIファイルの内容が不完全な状態では再生が出来ず、修復を行わなければならない。
今となってはAVI自体は入れ物(コンテナ)となってしまった。現在ではいくつかの種類のコーデックでエンコードされた動画や音声のデータを格納できる。そのため再生には適切なコーデックを用意する必要があるが、ファイルの拡張子を見ただけではコーデックが何であるか判断できない。しかしコーデックのダウンロード機能も進歩しaviに格納できるコーデックはフルセットをワンクリックでダウンロードできるようになった。
主な特徴
AVIを含むRIFFファイルは、バイナリのままでも可読性が高く構造を理解しやすい。また、AVIを扱うAPI(Video for Windows)をWindowsが提供しているため、対応ソフトウェアを開発しやすく、実際に多数のソフトウェアが公開されている。
欠点
AVIは1992年以前に策定された比較的古い形式であり、策定当初は問題とはならなかった次のような点が現在では欠点となってしまっている。
- ストリーミング配信用途には不向き。
- AVI1.0では2GBを超えるファイルを作成できない。(AVI2.0(OpenDML)で解決済み。)
- データが個別のタイムスタンプを保持できない。
- 映像の可変フレームレート(VFR)に対応していない。(擬似的な方法での実現例はある。)
- Bフレーム(前方参照フレーム)の表示に不都合が生じる。
Bフレームの表示不都合
AVIコンテナに格納されたストリームデータは、再生時に一定間隔で先頭から順に取り出される。Bフレームがフレーム間予測において前方フレームを参照して符号化されていた場合、参照するPフレームが処理されて初めて復号可能となる。このため、BフレームをAVIコンテナに格納する際に、このフレーム間の参照関係を考慮しPフレームと順序を入れ替えて格納することになる。こうして格納されたデータは、データを復号し、復号された画像を表示するという作業を特定のタイミングで繰り返すことで動画として再生される事になるが、データの復号と表示の間隔はフレームレートから計算するため同一のタイミングとなる。その結果、復号した画像がそのままの順序で表示される事になり、部分的に逆再生を行っているかのような動画となってしまう。(たとえば、MP4コンテナではデータ復号・復号画像の合成・表示のタイミングを個別に指定できるためこの問題は発生しない。)
しかし、近年のデコーダは入力されたデータに対し本来の表示順序通りにフレームを出力するよう改良されているため、利用上の問題はなくなっている。ただし、この方法を用いたデコーダでは最初のIフレームが他のフレームの2倍の表示時間となり、最終フレームは表示されないという副作用が発生する。この副作用についても、Packed-bitstreamと呼ばれる特殊なストリームフォーマットを用いることで解消した例がある。(Xvid、DivXがサポートしている。)以上の様に、コーデック側の工夫によってBフレームは問題なく利用可能となっているが、AVIコンテナ自体にBフレームを正確に扱う為の情報が不足しているため、今後も新しい映像圧縮技術をAVIで扱えるかどうかはコーデック側に委ねられたことになる。
利用例
- デジタルビデオカメラで撮影した映像の編集。
- テレビ番組の無圧縮AVIキャプチャー。
- ファイル共有ソフトでの動画の交換、共有。
- さまざまなコーデックによる動画圧縮保存。
AVIファイルで使われるコーデック
現在エンコーダーが公開されていない形式を含む
- 映像(FourCC)
- MPEG-1/-2 (MPEG/MPG1/MPG2)
- MPEG-4 (MP4V/XVID/DX50/DIVX/DIV5/3IVX/3IV2/RMP4)
- MS-MPEG4 (MPG4/MP42/MP43)
- WMV7/WMV8/WMV9 (WMV1/WMV2/WMV3)
- DV(DVSD/DVIS)
- Flash Video (FLV1/FLV4)
- Motion JPEG (MJPG)
- LossLess JPEG (LJPG)
- H.264 (AVC1/DAVC/H264/X264)
- H.263 (H263/S263)
- H.261 (H261)
- Huffyuv (HFYU)
- AVIzlib (ZLIB)
- AVImszh (MSZH)
- Theora (THEO)
- Indeo Video (IV31/IV32)
- Cinepak (cvid)
- Microsoft Video 1 (CRAM)
- On2VP3 (VP30/VP31)
- On2VP4 (VP40)
- On2 VP6 (VP60/VP61/VP62)
- VC-1 (WVC1)
- 音声 (Code)
コーデックの組み合わせは以下の例のように自由に選択できる。
- DivX+MP3
- H.264+MP3
- WMV9+MP3
関連項目
コンテナ形式
- Advanced Systems Format (ASF)
- DivX Media Format (DMF)
- Matroska (MKV)
ソフトウェア
その他
外部リンク
ソフトウェア
- AVS Video Converter(動画変換ソフトー日本語)
- MMname2(コーデック調査ソフト)
- 黒羽製作所(有) - 真空波動研(コーデック調査ソフト)
- AviUtlのお部屋 - AviUtl (AVIファイル編集ソフト)
- UniteMovie - AVIファイルの結合・切取りソフト