2007年5月7日掲載
第1回 ファイルフォーマットとは?
ファイルフォーマットとは?
こんな経験ありませんか?
ある映像再生ソフトウェアで映像ファイルを再生しようとして、ある時は上手く再生できるのに、ある時はエラーが出て再生できない。 しかもファイルフォーマット(ファイルの種類)が同じでもこのような現象が起こってしまう。
なぜこんなことが起こるのだろうか?
今回は、その答えとフォーマットの役割について解説する。

■ファイルフォーマットを理解する
ファイルフォーマットとはコンピュータ上で利用するファイルの保存形式のことを指す。
テキスト、音声、画像、映像など保存するデータの種類にあわせて、様々なファイルフォーマットが存在するが、 ここでは映像に焦点を当てて解説する。
映像のファイルフォーマットは、コンテナフォーマットとも呼ばれ、その名の示すとおりコンテナ(入れ物、容器、箱) として映像データと音声データを主に格納している。(図1参照)
「包み込むもの」という意味でラッパーと呼ばれることもある。具体的には、ビットストリームのヘッダやフッタに書き込まれる情報と映像・ 音声の格納手法を指す。
映像と音声というそれぞれ独立して存在する2つのデータをひとつのデータとして扱うために作られたのがコンテナである。 ただデータを入れるだけでなく再生時に映像と音の同期をとるための情報や、タイトル・作者・説明などのメタデータ情報、 字幕データなど必要に併せて色々な情報が入れられるように設計されている。
![]() |
図1 |
代表的なコンテナフォーマットとしては、AVI、ASF、MOV、MPEG-2 PS、MPEG-2 TS、MP4などがあげられる。 種類がたくさんある理由としては様々あるが、大きく用途の違いと技術の進化に分けられるだろう。
コンテナには、映像と音声以外にもさまざまな情報が格納できるようになっていると先述したが、用途に合わせて当然格納したい情報も違うため、 各用途に合わせたコンテナが設計されている。また、ストリーミング配信や5.1chサラウンドなど周辺の技術の進化にも対応するべく、 新しいコンテナの設計が必要となりまたコンテナの種類が増える。
各コンテナフォーマットの詳細については次回から詳しく述べることにして、 なぜ同じフォーマットのファイルが同じプレイヤーで再生できないのかについて、ここでは格納されている映像と音声について考えてみる。

■コーデックを理解する
再生プレーヤーで再生エラーがでたとき、「コーデックのエラー」という表示をみたことはないだろうか?
![]() 図2 |
![]() 図3 |
これは、コンテナフォーマットに入っている映像または音声のコーデックが違うため、コンテナフォーマットが同じでもこのような現象が起こる。
コーデックとは、映像や音声データなどのデータの圧縮/伸張手法(規格)を指す。 「COmpression/DECompression」 の略でCODEC(コーデック)と呼ばれる。 大容量のデータを如何に品質を保ちながら容量縮小をはかるかについてその手法が標準化団体や企業などで定められている。
映像のコーデックとしては、MPEG-1 Video、MPEG-2 Video(H.262)、MPEG-4 Visual、MPEG-4/AVC (H.264)、H.261、 H.263、RealVideo、Windows Media Video 9、VC-1などが代表的なもとのしてあげられる。 音声コーデックでは、MPEG-1 Layer III (MP3)、MPEG-1 Layer II、AAC、HE-AAC、G.711、 G.722、G.722.1、G.722.2、G.723、G.723.1、G.726、G.728、G.729、G.729、 RealAudio、Windwos Media Auido 9、Vorbis、 ATRAC、AC-3などが代表的なものとしてあげられる。
コンテナの中には、色々なタイプのコーデックで圧縮されたデータを格納することが可能なので、プレーヤーはその圧縮手法にあった伸張手法を持っている必要がある。
■まとめると
映像または音声ファイルのプレーヤーが対応していない圧縮手法のデータを読み込むと伸張ができずにエラーがでてしまう。つまり、上記の 「パタンA」の場合は、プレーヤーが対応しているコーデックの映像と音声が入っているので再生できるが、「パタンB」の場合は、 プレーヤーが対応していないコーデックの映像と音声が入っているのでエラーが出るということである。
■ファイルフォーマットとコーデックの代表的な組み合わせ
フォーマット 規格 |
ファイルフォーマット (拡張子) |
映像コーデック | 音声コーデック |
---|---|---|---|
Microsoft Corporation | Audio Video Interleave(.avi) | ・MPEG-4 (DivX等) ・WMV7/WMV8/WMV9 ・DV(DVSD/DVIS) ・Motion JPEG (MJPG) ・LossLess JPEG (LJPG) ・H.264 (DAVC/H264) ・H.263 (H263/S263) ・H.261 (H261) |
・LPCM ・WMA ・ADPCM ・MP3 ・AC-3 ・AAC ・HE-AAC |
Microsoft Corporation | Advanced Streaming Format (.asf、.asx、.wmv、.wvx .wma、.wax) |
・MS-MPEG4 ・ISO MPEG-4 ・WMV7 ・WMV8 ・WMV9 |
・WMA9 ・G.726 ・LPCM ・MP3 |
Apple Inc. (proprietary) | QuickTime(.mov) | ・H.261 ・H.263 ・MPEG-4 Video ・H.264 ・DVCPRO HD ・DV ・Pixlet |
・MP3 ・AAC ・Apple Lossless |
Adobe Systems Incorporated. (proprietary) |
Adobe Flash(.swf) | ・FLV1:Sorenson H.263 ・FLV4:VP62 ・On2 Flix ・Sorenson Squeeze |
・PCM ・ADPCM ・MP3 |
ISO/IEC 1 4496-14 | MPEG-4 Part 14(.mp4) | ・MPEG-4 Video ・MPEG-4 AVC |
・AAC ・HE-AAC ・TwinVQ |
ISO/IEC 1 3818-1 ITU-T勧告 H.222.0 |
MPEG-2 Transport Stream(.m2t) | ・MPEG-2 Video ・H.264/MPEG-4 AVC ・VC-1 Advanced Profile |
・PCM ・Mpeg Audio ・Dolby Digital(AC-3) ・MPEG-1 Audio Layer-2 ・非圧縮LPCM |
ISO/IEC 1 3818-1 ITU-T勧告 H.222.0 |
MPEG-2 Program Stream(.m2p) | ・MPEG-2 Video | ・PCM ・Dolby Digital(AC-3) ・Digital Theater Systems(DTS) |
SMPTE 377M-2004 SMPTE 378M-2004 SMPTE 379M-2004 SMPTE 380M-2004 SMPTE 381M-2005 SMPTE 382M SMPTE 383M-2004 SMPTE 384M-2005 SMPTE 385M-2004 SMPTE 386M-2004 SMPTE 387M-2004 SMPTE 388M-2004 SMPTE 389M-2005 SMPTE 390M-2004 SMPTE 391M-2004 SMPTE 392M-2004 SMPTE 393M-2004 SMPTE 407M-2006 SMPTE 408M-2006 SMPTE 422M |
Material eXchange Format(.mxf) | ・DV(DV、DVCAM、 DVCPRO25/50/HD) ・D-10 (IMX) ・D-11 (HDCAM) ・MPEG-1/2 (Long GOP、I-only、 Audio、TS、PS) ・JPEG-2000 |
・非圧縮音声(AES3、BWF) |
次回からは、各フォーマットの詳細を解説する。
(コラム記事/ (株)アイ・ビー・イー 先端システム研究所)

