File types · Explainer

The AIFF file (.aiff, .aif, .aifc)

An AIFF file is uncompressed audio in Apple's Audio Interchange File Format, the Mac's counterpart to WAV and a common format in Logic Pro and GarageBand. This guide explains what's inside one, byte by byte, how AIFF-C differs, how AIFF compares with WAV, and how to open and convert it.

At a glance

Full name
Audio Interchange File Format
Extensions
.aiff, .aif (the most common); .aifc for AIFF-C
MIME type
None registered with IANA; audio/aiff and audio/x-aiff are common
Kind
Binary chunk-based container (IFF), almost always uncompressed PCM (lossless); AIFF-C can also hold compressed or floating-point audio
Standard or owner
Apple, built on Electronic Arts' IFF 85 chunk format
First released
1988 (specification 1.1, January 1988; version 1.3 in January 1989). AIFF-C followed, with a draft dated August 1991
Byte order
Big-endian; the AIFF-C sowt variant stores little-endian samples
Typical size
About 10 MB per minute at CD quality (16-bit, 44.1 kHz stereo: 176,400 bytes per second), the same as WAV
Opens with
QuickTime Player, Music, Logic Pro, GarageBand, Audacity, VLC; not Chrome or Firefox
Magic number
46 4F 52 4D (FORM) at byte 0, then 41 49 46 46 (AIFF) or 41 49 46 43 (AIFC) at byte 8

The basics

What is an AIFF file?

AIFF is Apple's format for uncompressed audio, created in 1988 for the Macintosh and the Apple II. Like WAV, it stores sound as a plain list of samples, with nothing thrown away, so it's used for recording, editing and mastering. The Library of Congress describes it as widely adopted by Apple users in professional audio work, and functionally equivalent to WAV, which most Windows users choose.

Apple based AIFF on IFF 85, the Interchange File Format that Electronic Arts published in 1985, best known from the Amiga. That's where its chunk structure and its big-endian byte order come from: the Motorola 68000 processors in Macs and Amigas stored numbers that way.

The names you'll meet:

  • .aiff and .aif: the same format. .aif is the older, three-letter form and still the most common.
  • AIFF-C (.aifc): an extension from around 1991 that adds a compression type to the header. Despite the name, many AIFF-C files hold uncompressed audio, just in a different byte order or as floating-point numbers.

Anatomy

What's inside an AIFF file

An AIFF file is one IFF FORM chunk that holds other chunks, each with a 4-letter ID, a 4-byte size and its data. All numbers, including the samples, are big-endian: the most significant byte comes first, so 00 00 00 52 is simply 82. Below is the whole of a 90-byte file we made for this page with FFmpeg: four sample frames of a 440 Hz tone in 16-bit stereo at 44.1 kHz, with a title. It isn't offered for download; real files are the same, just with a much longer SSND chunk.

tiny.aiff (hex)
tiny.aiff: 4 sample frames, 16-bit stereo, 44.1 kHz, 90 bytes

offset  bytes                                  meaning
0       46 4F 52 4D                            "FORM"
4       00 00 00 52                            size of the rest: 82
8       41 49 46 46                            form type "AIFF"
12      4E 41 4D 45 00 00 00 0C                "NAME" chunk, 12 bytes
20      54 69 6E 79 20 65 78 61 6D 70 6C 65    "Tiny example"
32      43 4F 4D 4D 00 00 00 12                "COMM" chunk, 18 bytes
40      00 02                                  2 channels
42      00 00 00 04                            4 sample frames
46      00 10                                  16 bits per sample
48      40 0E AC 44 00 00 00 00 00 00          sample rate, 80-bit float: 44,100
58      53 53 4E 44 00 00 00 18                "SSND" chunk, 24 bytes
66      00 00 00 00                            offset: 0
70      00 00 00 00                            block size: 0
74      00 00 00 00                            frame 1: left 0, right 0
78      01 00 00 80                            frame 2: left 256, right 128
82      01 FF 01 00                            frame 3: left 511, right 256
86      02 FD 01 7F                            frame 4: left 765, right 383
90                                             end of file
  1. 146 4F 52 4D · 00 00 00 52

    The FORM chunk

    FORM is IFF's container chunk. Its size, 82, covers everything after these 8 bytes. Other IFF files, such as Amiga IFF images, start the same way.

  2. 241 49 46 46

    The form type

    AIFF says what kind of FORM this is. An AIFF-C file has AIFC here. Together with FORM, this is the file's signature.

  3. 34E 41 4D 45 … 54 69 6E 79

    A NAME chunk

    One of the optional text chunks, holding the title as plain text. AUTH (author), (c) (copyright) and ANNO (annotation) work the same way. Readers skip chunks they don't know.

  4. 443 4F 4D 4D 00 00 00 12

    The Common chunk

    COMM describes the sound and is required, exactly once. In plain AIFF it's always 18 bytes long.

  5. 500 02 · 00 00 00 04 · 00 10

    Channels, frames, bit depth

    2 channels, 4 sample frames (one sample for each channel at each moment), 16 bits per sample. Unlike WAV, AIFF stores the number of frames, not a byte rate.

  6. 640 0E AC 44 00 00 00 00 00 00

    The sample rate

    44,100, stored as an 80-bit IEEE 754 extended-precision float. 400E is the sign and exponent: 16,398 minus the bias of 16,383 gives 15. The mantissa starts with AC44, and an exponent of 15 makes the value exactly 0xAC44, which is 44,100.

  7. 753 53 4E 44 · 00 00 00 00 · 00 00 00 00

    The Sound Data chunk

    SSND holds the samples, after an offset and a block size that are almost always 0. They exist so that the audio can start at an aligned position for hardware that needed it. A file with no samples may leave SSND out.

  8. 801 00 00 80

    Big-endian, interleaved samples

    Signed 16-bit numbers, left then right: 01 00 is 256 and 00 80 is 128, half of the left channel. In a WAV file the same two samples would be stored as 00 01 80 00.

Under the hood

How an AIFF file is organised: IFF chunks

Every AIFF is a FORM chunk of type AIFF with chunks inside. Each chunk is a 4-character ID, a 32-bit size and the data; a chunk with an odd size gets a zero pad byte, not counted in the size, so the next one starts on an even offset. Only COMM is always required, and the order of chunks is free, although SSND usually comes last.

ChunkRequired?What it holds
COMMYes, onceChannels, number of sample frames, bit depth, sample rate (and in AIFF-C the compression type).
SSNDIf there's any sound, onceThe samples, after an offset and block size.
MARKNoMarkers: named positions in the sound.
INSTNoInstrument settings for samplers: base note, key and velocity range, loops that refer to markers.
COMTNoComments, each with a timestamp and an optional link to a marker.
NAME, AUTH, (c) , ANNONoText: name, author, copyright, annotations.
MIDI, AESD, APPLNoMIDI data, AES channel status data, and application-specific data.
FVERIn AIFF-C onlyThe AIFF-C version: always the timestamp A2 80 51 40, which is 23 May 1990 counted in seconds from 1904.

Samples are linear two's complement numbers, channels interleaved. Bit depths that aren't a whole number of bytes, such as 20 bits, are stored left-justified in the next whole size (3 bytes) with the unused low bits set to zero.

How big can an AIFF file be?

Chunk sizes are 32-bit numbers, and the AIFF specification defines them as signed, so a file that follows it to the letter stays under 2 GB. Software that reads them as unsigned can go to 4 GB. For longer recordings, Logic Pro offers CAF, which Apple describes as allowing exceptionally long recordings.

A quirk

The 80-bit sample rate

WAV stores the sample rate as a 32-bit whole number. AIFF stores it as a 10-byte IEEE 754 extended-precision float. It can describe any rate exactly, including fractional ones, but most programming languages have no 80-bit type, so every AIFF reader carries a few lines of code to convert it. For the usual rates, the bytes are:

Sample rateBytes in COMM
8,000 Hz40 0B FA 00 00 00 00 00 00 00
22,050 Hz40 0D AC 44 00 00 00 00 00 00
44,100 Hz40 0E AC 44 00 00 00 00 00 00
48,000 Hz40 0E BB 80 00 00 00 00 00 00
88,200 Hz40 0F AC 44 00 00 00 00 00 00
96,000 Hz40 0F BB 80 00 00 00 00 00 00
192,000 Hz40 10 BB 80 00 00 00 00 00 00

The pattern is visible: the first two bytes are the exponent (16,383 plus the power of two), and the next bytes are the rate's binary digits, starting with a 1. That's why 22,050, 44,100 and 88,200 Hz share the digits AC 44 (44,100 is 0xAC44) and differ only in the exponent. To read it in code: take the 64-bit mantissa, divide by 2⁶³ and multiply by 2 to the power of (exponent − 16,383).

Variants

AIFF-C: compressed, float and little-endian AIFF

AIFF-C changes the form type to AIFC, adds the FVER chunk, and adds two fields to COMM: a 4-character compression type and a human-readable name. Here are the first chunks of the same four frames written by FFmpeg as little-endian AIFF-C:

tiny.aifc (hex, first 88 bytes)
46 4F 52 4D 00 00 00 50 41 49 46 43   FORM, 80 bytes, "AIFC"
46 56 45 52 00 00 00 04 A2 80 51 40   FVER: AIFC version 1
43 4F 4D 4D 00 00 00 18               COMM, 24 bytes
00 02 00 00 00 04 00 10               2 channels, 4 frames, 16 bits
40 0E AC 44 00 00 00 00 00 00         44,100 Hz
73 6F 77 74                           compression type "sowt"
00 00                                 name: empty, plus a pad byte
53 53 4E 44 00 00 00 18 …             SSND, then 00 00 01 00 80 00 …
TypeMeaning
NONEUncompressed big-endian PCM, as in plain AIFF.
sowtUncompressed PCM with little-endian samples (twos backwards). The header stays big-endian.
fl32, fl6432- or 64-bit floating-point samples.
ulaw, alawG.711 telephone compression, 8 bits per sample.
MAC3, MAC6 and othersMACE and other old compressed formats from the classic Mac OS. Rarely seen today.

The sowt variant arrived with Apple's move to Intel processors, which, like today's Apple silicon, are little-endian, so samples can be used without byte-swapping. Older or simpler readers that only know plain AIFF may reject these files, even with an .aif extension. ffprobe shows the type: codec_tag_string=sowt, codec_name=pcm_s16le.

Related formats

AIFF vs WAV (and FLAC, ALAC)

AIFF and WAV store the same thing: for the same bit depth and sample rate, the sound is identical and the files are almost the same size. Converting between them is lossless. The differences are in the packaging:

AIFFWAV
Made byApple, 1988Microsoft and IBM, 1991
ContainerIFF: FORM … AIFFRIFF: RIFF … WAVE
Byte orderBig-endian (little-endian in AIFF-C sowt)Little-endian
Sample rate stored as80-bit extended float32-bit whole number
Size limit2 GB by the spec, 4 GB in some software4 GB; RF64 and BW64 go beyond
Text metadataNAME, AUTH, (c) , ANNO; some software adds an ID3 chunkLIST INFO, bext (Broadcast WAV); some software adds an ID3 chunk
Plays in Chrome and FirefoxNoYes (PCM)
Where it's commonMac audio softwareEverywhere: Windows, broadcast, games, the web

For archiving or sharing without loss, FLAC gives the same samples in a smaller file, with much better tag support. In Apple's world, ALAC in an M4A file does the same job. For listening, an MP3 or AAC copy is around a tenth of the size.

Troubleshooting

Common AIFF problems and their causes

  • It downloads instead of playing in the browser: Chrome and Firefox don't play AIFF (we checked Chrome 141 and Firefox 142), and it isn't one of the web's standard media formats. Convert to WAV, MP3 or M4A for a web page.
  • "Unsupported compression" for an .aif file: it's really AIFF-C, often sowt or fl32. Check with ffprobe and convert it to plain 16- or 24-bit AIFF or WAV.
  • Loud static instead of sound: a program read big-endian samples as little-endian (or the reverse), typically when importing raw data or with a hand-written reader that ignores sowt. Import with the correct byte order.
  • Titles and artwork lost after converting: AIFF's text chunks and ID3 chunks are read by some apps and ignored by others. Re-tag after converting, or use FLAC or M4A when metadata matters.
  • A very long recording won't open: it may have passed 2 GB. Record long sessions as CAF or RF64 WAV, or split them.
  • Python can't open it: the standard library's aifc module is gone in Python 3.13. Use soundfile or pydub, or convert first.

How to

How to open, edit and convert an AIFF file

  • Mac: double-click it: QuickTime Player and Music play it, and Finder's Quick Look previews it. Logic Pro can record in AIFF, WAVE (BWF) or CAF, and GarageBand exports songs as AAC, MP3, AIFF or WAVE.
  • Windows and Linux: VLC and foobar2000 play AIFF; Audacity opens, edits and exports it.
  • Phones: VLC plays AIFF on Android and iOS.
  • Inspect it: ffprobe file.aif shows the form (AIFF or AIFF-C), codec, sample rate and tags.
terminal
# AIFF to WAV, losslessly (16-bit stays 16-bit)
ffmpeg -i in.aif -c:a pcm_s16le out.wav

# WAV to AIFF
ffmpeg -i in.wav -c:a pcm_s16be out.aiff

# AIFF to FLAC (lossless, smaller) or MP3
ffmpeg -i in.aif out.flac
ffmpeg -i in.aif -c:a libmp3lame -q:a 2 out.mp3

# on a Mac, with Apple's own tool
afconvert -f WAVE -d LEI16 in.aif out.wav

Match the codec to the source's bit depth: use pcm_s24le (WAV) or pcm_s24be (AIFF) for 24-bit files, or the conversion will reduce them to 16 bits.

Is an AIFF file safe?

It's audio and can't run code. As with any binary format, a malformed file could hit a bug in a reader, so keep players updated. Text chunks and ID3 tags can carry names, comments and software details; check them before you publish a file.

Sample files

There are no sample AIFF files on this page. To make one, run ffmpeg -f lavfi -i "sine=frequency=440:duration=5" -c:a pcm_s16be test.aiff, or export a project from GarageBand or Audacity as AIFF.

Put it online

Have an AIFF file? Give it a link.

Drop an AIFF on 99helpers and it gets its own address. Most browsers can't play AIFF, so anyone who opens the link downloads the file to play it in their own audio app; for listening in the browser, add an MP3 or WAV copy.

Questions

AIFF files, frequently asked

What is an AIFF file?

An uncompressed audio file in Apple's Audio Interchange File Format. It stores sound the same way WAV does, without loss, and is common in Mac audio software such as Logic Pro and GarageBand.

Is AIFF better than WAV?

Neither sounds better: at the same bit depth and sample rate they hold identical audio. WAV is more widely supported, including in browsers; AIFF is traditional on the Mac.

What's the difference between .aif and .aiff?

None. They're the same format; .aif is the older three-letter extension. .aifc marks AIFF-C, which can hold compressed or little-endian audio.

Is AIFF lossless?

Yes, plain AIFF holds uncompressed PCM. AIFF-C can also hold lossy telephone codecs such as µ-law, but most AIFF-C files today are uncompressed too.

How do I play an AIFF file on Windows?

Use VLC, foobar2000 or Audacity, or convert it to WAV or MP3. Chrome and Firefox don't play AIFF.

How do I convert AIFF to MP3?

Export from Music, GarageBand or Audacity, or use FFmpeg: ffmpeg -i in.aif -c:a libmp3lame -q:a 2 out.mp3.

Why are AIFF files so big?

Because the audio isn't compressed: CD-quality stereo takes 176,400 bytes a second, about 10 MB a minute. FLAC or ALAC make it smaller without any loss.

What does sowt mean in an AIFF file?

It's the AIFF-C compression type for uncompressed PCM with little-endian samples (twos spelled backwards). Some older programs can't read it; convert to plain AIFF or WAV if that happens.

Related formats

Other file types explained

Keep going

Related

Sources

Last reviewed 27 October 2026.