AIFF
AIFF(Audio Interchange File Format)は、Apple Computerが開発した音声ファイル形式である。ファイル拡張子には.aiffおよび.aifが使われる。
AIFFはPCM音声、とりわけ非圧縮LPCMの保存形式として音楽制作・録音で広く利用されてきた。
ただしAIFFはPCMそのものではなく、音声dataやmetadataをchunk構造で格納するfile format / wrapperである。
Library of CongressはAIFFをsound bitstreamを格納するcontainer-wrapperとして整理している。[1]
歴史
AIFFはApple ComputerによってMacintosh環境向けのsampled audio interchange formatとして開発された。
構造はElectronic ArtsのIFF(Interchange File Format)系chunk formatの影響を受けている。
長年、Macintosh系DAW、sampler、audio editorで代表的な非圧縮audio formatとして使われた。
拡張子
AppleのAVFoundationはAIFF file typeに対して、
.aif.aiff
の両方を認識する。[2]
したがってAIFは別codecではなく、AIFFで使われる一般的なfile extensionの一つである。
FORM structure
AIFFはIFF系のchunk構造を持つ。
file先頭にはFORM識別子があり、その内部でAIFF typeと各chunkを記録する。
代表的なchunkには、
- COMM
- SSND
- MARK
- INST
- NAME
- AUTH
- ANNO
などがある。
COMM chunk
COMM(Common Chunk)は音声dataの基本情報を持つ。
代表的には、
- channel数
- sample frame数
- sample size
- sample rate
などを格納する。
SSND chunk
SSND(Sound Data Chunk)には実際のsample dataが格納される。
標準的なAIFFでは非圧縮PCMの格納が代表的である。
PCM
音楽制作でAIFFと言う場合、多くはLPCM audioを含むAIFFを指す。
Library of CongressはAIFF with LPCMを独立したsubtypeとして扱っている。[3]
Endianness
標準的なAIFF PCMはbig-endian byte orderで扱われることで知られる。
WAV/RIFFのlittle-endian PCMと対照的な歴史的差異である。
現代のaudio softwareではimport/export時にbyte orderを自動処理するため、通常ユーザーが手作業で変換する必要はない。
AIFF-C
AIFF-C(AIFC)はAIFFを拡張し、compressed audio data等を扱えるようにした形式である。
AIFF-CはAIFFと関連するが、同一形式ではない。
AppleもAIFFとAIFCを別file typeとして定義している。[4]
Metadata
AIFFはchunkを使って様々な付加情報を保持できる。
markerやinstrument dataはsampler / loop用途で利用されることがある。
一方、music libraryでのtagging compatibilityはsoftwareごとに差があり、ID3 chunk等を利用する実装も存在する。
DAWでの利用
AIFFは、
- recording
- editing
- bounce
- sample exchange
- mastering
- archive
などで利用される。
特にMac系music productionで長く使われてきたが、現在の主要DAWではWindowsを含め広く読み書きできる。
AIFFとWAV
WAVとAIFFはいずれも非圧縮PCMのcontainerとして広く使われる。
音質はcontainer名ではなく、内部PCMのsample rate、bit depth、channel data等で決まる。
同一PCMを正しく格納したWAVとAIFFの間で、container形式だけを理由に音質差が生じるわけではない。
主な違いはfile structure、byte order、metadata ecosystem、歴史的platform慣習などにある。
AIFFとFLAC
FLACは可逆圧縮するため、AIFF PCMよりfile sizeを小さくできることが多い。
decode後のPCMが同一なら音声dataはlosslessに相互変換できる。
AIF
AIFは一般にAIFF fileの拡張子.aifを指す。
Appleは.aifと.aiffの両方をAIFF file typeとして扱っているため、両者を別audio codecとして分類するのは適切ではない。[5]