|Internet media type|
|Type code||AIFF, AIFC|
|Uniform Type Identifier (UTI)||public.aiff-audio|
|Developed by||Apple Inc.|
|Initial release||21 January 1988|
January 4, 1989
AIFF-C / July 1991
|Type of format||audio file format, container format|
|Extended from||IFF (File format)|
Audio Interchange File Format (AIFF) is an audio file format standard used for storing sound data for personal computers and other electronic audio devices. The format was developed by Apple Inc. in 1988 based on Electronic Arts' Interchange File Format (IFF, widely used on Amiga systems) and is most commonly used on Apple Macintosh computer systems.
The audio data in most AIFF files is uncompressed pulse-code modulation (PCM). This type of AIFF file uses much more disk space than lossy formats like MP3—about 10 MB for one minute of stereo audio at a sample rate of 44.1 kHz and a bit depth of 16 bits. There is also a compressed variant of AIFF known as AIFF-C or AIFC, with various defined compression codecs.
In addition to audio data, AIFF can include loop point data and the musical note of a sample, for use by hardware samplers and musical applications.
The file extension for the standard AIFF format is .aiff or .aif. For the compressed variants it is supposed to be .aifc, but .aiff or .aif are accepted as well by audio applications supporting the format.
With the development of the OS X operating system now known as macOS, Apple created a new type of AIFF which is, in effect, an alternative little-endian byte order format.
Because the AIFF architecture has no provision for alternative byte order, Apple used the existing AIFF-C compression architecture, and created a "pseudo-compressed" codec called sowt (twos spelled backwards). The only difference between a standard AIFF file and an AIFF-C/sowt file is the byte order; there is no compression involved at all.
Apple uses this new little-endian AIFF type as its standard on macOS. When a file is imported to or exported from iTunes in "AIFF" format, it is actually AIFF-C/sowt that is being used. When audio from an audio CD is imported by dragging to the macOS Desktop, the resulting file is also an AIFF-C/sowt. In all cases, Apple refers to the files simply as "AIFF", and uses the ".aiff" extension.
For the vast majority of users this technical situation is completely unnoticeable and irrelevant. The sound quality of standard AIFF and AIFF-C/sowt are identical, and the data can be converted back and forth without loss. Users of older audio applications, however, may find that an AIFF-C/sowt file will not play, or will prompt the user to convert the format on opening, or will play as static.
All traditional AIFF and AIFF-C files continue to work normally on macOS, and many third-party audio applications as well as hardware continue to use the standard AIFF big-endian byte order.
Apple has also created another recent extension to the AIFF format in the form of Apple Loops used by GarageBand and Logic Pro, which allows the inclusion of data for pitch and tempo shifting by an application in the more common variety, and MIDI-sequence data and references to GarageBand playback instruments in another variety.
Apple Loops use either the .aiff (or .aif) or .caf extension regardless of type.
An AIFF file is divided into a number of chunks. Each chunk is identified by a chunk ID more broadly referred to as FourCC.
Types of chunks found in AIFF files:
AIFF files can store metadata in Name, Author, Comment, Annotation, and Copyright chunks. An ID3v2 tag chunk can also be embedded in AIFF files, as well as an Application Chunk with Extensible Metadata Platform (XMP) data in it.
AIFF supports only uncompressed PCM data. AIFF-C also supports compressed audio formats, which can be specified in the "COMM" chunk. The compression type is "NONE" for PCM audio data. The compression type is accompanied by a printable name. Common compression types and names include, but are not limited to:
|Compression type||Compression name||Data||Source|
|NONE||not compressed||PCM, big-endian||Apple Inc.|
|sowt||not compressed||PCM, little-endian||Apple Inc.|
|fl32||32-bit floating point||IEEE 32-bit float||Apple Inc.|
|fl64||64-bit floating point||IEEE 64-bit float||Apple Inc.|
|alaw||ALaw 2:1||8-bit ITU-T G.711 A-law||Apple Inc.|
|ulaw||μLaw 2:1||8-bit ITU-T G.711 μ-law||Apple Inc.|
|ALAW||CCITT G.711 A-law||8-bit ITU-T G.711 A-law (64 kbit/s)||SGI|
|ULAW||CCITT G.711 u-law||8-bit ITU-T G.711 μ-law (64 kbit/s)||SGI|
|FL32||Float 32||IEEE 32-bit float||SoundHack & Csound|
|ADP4||4:1 Intel/DVI ADPCM||Stéphane Tavenard (Audio Convert/Player) AmigaOS|
|ACE2||ACE 2-to-1||Apple IIGS ACE (Audio Compression/Expansion)|
|DWVW||Delta with variable word width||TX16W Typhoon|
|MAC3||MACE 3-to-1||Apple Inc.|
|MAC6||MACE 6-to-1||Apple Inc.|
|SDX2||Square-Root-Delta||Big-endian||3DO (Panasonic) / MAC (Apple)|