Compress AIFF Online — Free File Size Reducer
Compress an AIFF file to a smaller AIFF by downconverting its PCM audio stream to 16-bit signed big-endian PCM (pcm_s16be) — the standard bit depth for CD-quality audio. Useful for reducing file size when working with 24-bit or 32-bit AIFF masters while keeping the result fully compatible with macOS and Apple software.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your AIFF file here
or click to browse
Free — no uploads, no signups. Your files never leave your browser.
Settings
Note: Browser-based encoding uses approximate quality targets. For precise CRF compression, copy the FFmpeg command above and run it on your desktop.
Estimated output:
Conversion Complete!
DownloadHow It Works
AIFF files can store uncompressed PCM audio at various bit depths: 16-bit, 24-bit, 32-bit integer, or even 32/64-bit float. This tool re-encodes the audio stream using the pcm_s16be codec, which writes 16-bit signed big-endian PCM — the same bit depth used on audio CDs. If your source file is a 24-bit or 32-bit AIFF (common in professional recording workflows), the output will be roughly 33–50% smaller because each audio sample requires fewer bytes to store. The container format stays AIFF throughout, so the output file is immediately playable on macOS, Logic Pro, GarageBand, and any other software that reads AIFF. No data is uploaded anywhere — conversion runs locally in your browser via FFmpeg compiled to WebAssembly.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg binary — in the browser this runs as a WebAssembly build (FFmpeg.wasm), but the command is identical to what you would run in a macOS Terminal or Windows Command Prompt with a native FFmpeg installation. |
-i input.aiff
|
Specifies the input file. FFmpeg reads the AIFF container, identifies the embedded uncompressed PCM audio stream (which could be 16-bit, 24-bit, 32-bit integer, or float depending on the source), and passes it to the encoder. |
-c:a pcm_s16be
|
Sets the audio codec to pcm_s16be — 16-bit signed big-endian PCM, the standard bit depth for AIFF files used in CD authoring and broad macOS compatibility. If the source is 24-bit or 32-bit, this step reduces bit depth and therefore file size. |
output.aiff
|
Defines the output filename with the .aiff extension, telling FFmpeg to wrap the newly encoded 16-bit PCM stream in an AIFF container. The sample rate and channel count from the source file are carried through unchanged. |
Common Use Cases
- Downconvert a 24-bit or 32-bit AIFF master from a DAW (Logic Pro, Pro Tools) to 16-bit for CD authoring or distribution, where anything above 16-bit is discarded anyway
- Reduce the storage footprint of a large AIFF sample library recorded at 32-bit float without changing the file format, so existing Logic Pro or MainStage patches still reference the correct container
- Prepare AIFF audio files for upload to a CD duplication service that requires 16-bit / 44.1 kHz AIFF masters specifically
- Strip unnecessary bit depth from AIFF field recordings made on a 32-bit float recorder (e.g., Zoom F6) before archiving to a space-constrained drive
- Normalize a collection of AIFF files with mixed bit depths (16, 24, 32) to a consistent 16-bit format for a sample pack release
- Reduce the size of AIFF loop files used in a mobile app or game engine that only supports 16-bit PCM to avoid runtime resampling overhead
Frequently Asked Questions
Yes — even though AIFF stores uncompressed PCM in both cases, the bit depth directly determines how many bytes each audio sample occupies. A 24-bit AIFF uses 3 bytes per sample per channel; a 16-bit AIFF uses 2 bytes. Converting a stereo 24-bit AIFF to 16-bit therefore reduces the raw audio data by about 33%. For 32-bit source files, the saving is 50%. The container overhead is negligible, so the file size reduction closely tracks the bit-depth ratio.
The conversion is lossy in a technical sense — you are discarding the lower 8 bits of each sample, which correspond to very quiet signals below roughly -96 dBFS. For most listening and distribution purposes this is inaudible, since 16-bit audio already offers a theoretical dynamic range of about 96 dB. However, if you plan to do further mixing or processing, it is best to keep the 24-bit master and only produce the 16-bit version as a final delivery file.
This tool specifically targets the AIFF-to-AIFF workflow, which is common in Apple-centric and professional audio environments where the AIFF container is required — for example, by CD authoring software, certain broadcast systems, or Logic Pro sample libraries. If you want to reduce file size more aggressively through compression, a separate tool (such as AIFF to FLAC for lossless, or AIFF to AAC for lossy) would be the right choice.
FFmpeg will carry over standard AIFF metadata chunks (ID3 tags and MARK/INST chunks where recognized) into the output file. However, some proprietary loop or region markers written by specific DAWs may not survive the re-encode intact. If preserving custom DAW markers is critical, verify the output in your DAW before discarding the original.
Replace pcm_s16be with a different codec: use pcm_s24be for 24-bit integer, pcm_s32be for 32-bit integer, pcm_f32be for 32-bit float, or pcm_f64be for 64-bit float. For example, to produce a 24-bit AIFF run: ffmpeg -i input.aiff -c:a pcm_s24be output.aiff. All of these codecs are valid inside the AIFF container and are supported by macOS natively.
Yes. On macOS or Linux you can loop over files in a directory with a shell one-liner: for f in *.aiff; do ffmpeg -i "$f" -c:a pcm_s16be "16bit_${f}"; done. On Windows (Command Prompt) use: for %f in (*.aiff) do ffmpeg -i "%f" -c:a pcm_s16be "16bit_%f". Each file is processed independently, so the loop will handle entire sample libraries without you needing to re-enter the command for each file.
Technical Notes
AIFF (Audio Interchange File Format) uses big-endian byte ordering inherited from the 68k Macintosh era, which is why all of its PCM codec variants carry the 'be' suffix in FFmpeg (pcm_s16be, pcm_s24be, etc.). The output of this tool uses pcm_s16be — 16-bit signed integers in big-endian order — matching the format used by audio CDs and the historical AIFF standard most broadly supported across hardware and software. One subtle point: if your source AIFF uses 32-bit float PCM (pcm_f32be or pcm_f64be), the conversion to 16-bit integer involves both a bit-depth reduction and a float-to-integer quantisation step, which FFmpeg handles using its internal dithering and rounding logic. The sample rate and channel count of the source file are preserved unchanged by this command; if you also need to change the sample rate (e.g., from 96 kHz to 44.1 kHz), you would add a -ar 44100 flag. The output AIFF file will not contain any video, subtitle, or chapter data, as the AIFF container does not support those streams.