| Feature | AIFF | MP3 |
|---|
| Compression | None (PCM) | Lossy (MPEG-1 Layer 3) |
| File size (4 min, stereo) | 40-50 MB | 4-10 MB |
| Sample rates | Any (common: 44.1, 48, 96 kHz) | 8-48 kHz |
| Bit depth | 8, 16, 24, 32-bit | N/A (uses bitrate instead) |
| Metadata | AIFF chunks + ID3 | ID3v1/v2 |
| Platform support | Universal (native on macOS) | Universal |
| Editing | Preferred (no decoding needed) | Requires decode-edit-encode cycle |
| Quality | Perfect (lossless) | Excellent at 320 kbps |
ffmpeg -i input.aiff -c:a libmp3lame -b:a 320k output.mp3
This produces a CBR (Constant Bit Rate) 320 kbps MP3 — the highest standard MP3 quality.
VBR allocates more bits to complex passages (cymbals, orchestral swells) and fewer to simple passages (silence, single instruments), giving better quality per megabyte:
ffmpeg -i input.aiff -c:a libmp3lame -q:a 0 output.mp3
The -q:a scale runs from 0 (best, ~245 kbps average) to 9 (worst, ~65 kbps). Recommended settings:
| Quality | -q:a Value | Average Bitrate | Use Case |
|---|
| Transparent | 0 | ~245 kbps | Archival, critical listening |
| High | 2 | ~190 kbps | General music playback |
| Good | 4 | ~165 kbps | Podcasts, audiobooks, casual listening |
| Acceptable | 6 | ~130 kbps | Voice recordings, background music |
AIFF files can contain metadata in both AIFF chunks and ID3 tags. FFmpeg transfers standard metadata automatically:
ffmpeg -i input.aiff -c:a libmp3lame -b:a 320k \
-id3v2_version 3 -write_id3v1 1 output.mp3
The -id3v2_version 3 flag ensures maximum compatibility with music players and the -write_id3v1 1 flag adds a legacy ID3v1 tag for older devices.
If the AIFF contains embedded artwork:
ffmpeg -i input.aiff -c:a libmp3lame -b:a 320k \
-c:v copy -id3v2_version 3 output.mp3
The -c:v copy flag copies the embedded image into the MP3's ID3 tag.
mkdir -p mp3
for file in *.aiff *.aif; do
[ -f "$file" ] || continue
ffmpeg -i "$file" -c:a libmp3lame -q:a 0 \
-id3v2_version 3 -write_id3v1 1 \
"mp3/${file%.*}.mp3" -y
done
For organized music libraries with artist/album folders:
find /path/to/library -name "*.aiff" -o -name "*.aif" | while read file; do
outdir="mp3/$(dirname "${file#/path/to/library/}")"
mkdir -p "$outdir"
ffmpeg -i "$file" -c:a libmp3lame -q:a 0 \
-id3v2_version 3 "$outdir/$(basename "${file%.*}.mp3")" -y
done
For more on batch workflows, see our batch processing guide.
Use the AIFF to MP3 converter online for quick conversions without command-line tools. Upload your AIFF file and download the MP3. For other audio formats, try the Audio Converter.
320 kbps CBR vs. V0 VBR: For most listeners, V0 VBR (-q:a 0) and 320 kbps CBR are audibly identical. V0 produces 10-15% smaller files on average. The only advantage of CBR is compatibility with very old hardware MP3 players that cannot handle VBR (essentially extinct in 2026).
Sample rate conversion: AIFF files from professional audio may be at 48, 96, or even 192 kHz. MP3 supports up to 48 kHz. FFmpeg automatically downsamples if necessary. For 96/192 kHz sources, you can explicitly downsample for quality control:
ffmpeg -i input_96khz.aiff -ar 44100 \
-c:a libmp3lame -b:a 320k output.mp3
44.1 kHz is optimal for MP3 — it is the standard sample rate for MP3 encoding, and the LAME encoder is specifically tuned for it.
24-bit to MP3: AIFF files from studio recording are often 24-bit. MP3 encoding internally converts to floating-point, so the extra bit depth is used during encoding (better dithering). No special flags needed — FFmpeg handles it automatically.
For more on audio quality settings, see our audio bitrate guide and our FLAC vs MP3 comparison.
Some AIFF files use the AIFF-C (compressed) variant. FFmpeg handles most AIFF-C codecs, but rare ones (like MACE or QDesign) may fail. Convert in Apple Music or Logic Pro first as a workaround.
Some music players only read ID3v2.3 tags, while others prefer ID3v2.4. Use -id3v2_version 3 for maximum compatibility. If artwork is missing, ensure you included -c:v copy in the command.
Some AIFF files have non-audio data in the header that gets misinterpreted. Add -ss 0.01 to skip the first 10 milliseconds:
ffmpeg -ss 0.01 -i input.aiff -c:a libmp3lame -b:a 320k output.mp3
The AIFF may use a non-standard PCM encoding (big-endian vs. little-endian). FFmpeg usually handles both, but if you get silence, explicitly specify the input format:
ffmpeg -f aiff -i input.aiff -c:a libmp3lame -b:a 320k output.mp3
AIFF to MP3 conversion is a clean, single-generation lossy encode from an uncompressed source — the best-case scenario for MP3 encoding. Use VBR V0 for the optimal balance of quality and file size, or 320 kbps CBR if you want a flat bitrate. Preserve metadata and artwork with the appropriate flags, and consider batch converting entire music libraries with a simple shell script.
Ready to convert? Try our free AIFF to MP3 converter — no registration required.