Jump to content

Audio Interchange File Format

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 104.174.1.119 (talk) at 04:47, 10 September 2016 (Logic "audio" has been called Logic "Pro" for the past 10 years or so. Factory apple loops are published in the apple lossless .caf format.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Audio Interchange File Format
(AIFF)
Filename extension
.aiff
.aif
.aifc
Internet media type
audio/x-aiff
audio/aiff
Type codeAIFF, AIFC
Uniform Type Identifier (UTI)public.aiff-audio
public.aifc-audio
Developed byApple Inc.
Initial releaseJanuary 21, 1988; 36 years ago (1988-01-21)[1]
Latest release
1.3
January 4, 1989; 35 years ago (1989-01-04)
AIFF-C / July 1991; 33 years ago (1991-07)[2]
Type of formataudio file format, container format
Extended fromIFF (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 files 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.

AIFF on Mac OS X

With the development of the Mac OS X operating system, Apple created a new type of AIFF which is, in effect, an alternative little-endian byte order format.[3][4]

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.[5]

Apple uses this new little-endian AIFF type as its standard on Mac OS X. 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 Mac OS X 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 Mac OS X (including on the new Intel-based hardware), and many third-party audio applications as well as hardware continue to use the standard AIFF big-endian byte order.

AIFF Apple Loops

Apple has also created another recent extension to the AIFF format in the form of Apple Loops[6] 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.

AppleLoops use either the .aiff (or .aif) or .caf extension regardless of type.

Data format

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:

  • Common Chunk (required)
  • Sound Data Chunk (required)
  • Marker Chunk
  • Instrument Chunk
  • Comment Chunk
  • Name Chunk
  • Author Chunk
  • Copyright Chunk
  • Annotation Chunk
  • Audio Recording Chunk
  • MIDI Data Chunk
  • Application Chunk
  • ID3 Chunk

Metadata

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.[7]

AIFF-C common compression types

AIFF supports only uncompressed PCM data. AIFF-C also supports compression audio formats, that 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:

AIFF-C common compression types[1][8][9]
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
ima4 IMA 4:1
ACE2 ACE 2-to-1 Apple IIGS ACE (Audio Compression/Expansion)
ACE8 ACE 8-to-3
DWVW Delta with variable word width TX16W Typhoon
MAC3 MACE 3-to-1 Apple, Inc.
MAC6 MACE 6-to-1 Apple, Inc.
Qclp Qualcomm PureVoice Qualcomm
QDMC QDesign Music QDesign
rt24 RT24 50:1 Voxware
rt29 RT29 50:1 Voxware
SDX2 Square-Root-Delta Big-endian 3DO (Panasonic) / MAC (Apple)

See also

References

  1. ^ a b Apple Computer, Inc. (1989-01-04), Audio Interchange File Format, A Standard for Sampled Sound Files, Version 1.3 (PDF), retrieved 2010-03-21
  2. ^ P. Kabal (2005-03-15). "Audio File Format Specifications - AIFF / AIFF-C Specifications". McGill University. Retrieved 2010-03-21.
  3. ^ Mac OS X Reference Library
  4. ^ Supported Audio File and Data Formats in Mac OS X
  5. ^ "Technical Q&A QTMRF04: QuickTime Sound". Apple. 1995-05-01. Retrieved 2009-11-09.
  6. ^ "Logic Studio - Plug-ins & Sounds". Apple. Retrieved 2010-04-30.
  7. ^ "AIFF Tagging".
  8. ^ Tom Erbe (1999). "AIFF-C Compression Types and Names". Archived from the original on 2006-06-20. Retrieved 2010-03-21.
  9. ^ "JSTOR/Harvard Object Validation Environment - AIFF-hul Module". 2005-05-09. Retrieved 2010-03-21.