Convert CAF to M4A — Free Online Tool

Convert CAF audio files to M4A by re-encoding the audio stream to AAC, Apple's own high-efficiency lossy codec — making your Core Audio Format recordings compatible with iTunes, iPhone, and web players while significantly reducing file size.

FFmpeg Command

Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg

Free — no uploads, no signups. Your files never leave your browser.

Estimated output:

Conversion Complete!

Download

How It Works

CAF files commonly store audio in lossless or uncompressed formats like PCM (16-bit, 24-bit, 32-bit) or FLAC, which is why they tend to be large. This conversion re-encodes that audio stream to AAC at 128 kbps and wraps it in the MPEG-4 container with an .m4a extension. Unlike a simple remux, this is a full transcode — the raw or lossless audio samples are decoded and then re-encoded using the AAC codec, introducing lossy compression. The result is a much smaller file that retains excellent perceptual quality and is universally playable in iTunes, Apple Music, Safari, and most modern media players. The -vn flag is included as a safeguard to explicitly strip any non-audio data, ensuring a clean audio-only M4A output.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg application, the open-source multimedia processing engine that powers this conversion both in the browser (via FFmpeg.wasm) and on the desktop command line.
-i input.caf Specifies the input file — a CAF (Core Audio Format) file, Apple's chunk-based audio container typically holding uncompressed PCM or lossless audio recorded on macOS or iOS.
-c:a aac Sets the audio codec to AAC (Advanced Audio Coding), transcoding the CAF audio stream — whether it was PCM, FLAC, or another format — into AAC lossy compression suitable for the M4A container.
-b:a 128k Targets an AAC audio bitrate of 128 kilobits per second, a standard quality level that balances file size and perceptual audio fidelity well for music and spoken word content.
-vn Explicitly disables any video stream output, ensuring the resulting M4A is a clean audio-only file — particularly important as a safeguard since M4A is an audio-only format and any unexpected video data in the source would cause errors.
output.m4a Defines the output filename with the .m4a extension, instructing FFmpeg to write the re-encoded AAC audio into an MPEG-4 audio container compatible with iTunes, Apple Music, iOS devices, and most modern media players.

Common Use Cases

  • Converting lossless PCM recordings captured in Logic Pro or GarageBand (saved as CAF) into distribution-ready M4A files for iTunes or Apple Music uploads
  • Reducing the file size of large CAF audio recordings from iOS apps like Voice Memos or audio engineering tools before sharing or archiving
  • Preparing CAF podcast recordings for web distribution, since M4A/AAC streams natively in Safari and most podcast platforms without transcoding
  • Converting CAF game audio assets or sound effects exported from Xcode projects into M4A for use in web-based or cross-platform applications
  • Making CAF interview recordings from Mac-based field recording software compatible with non-Apple editing tools and media players that don't support the CAF container
  • Archiving or sharing Apple ecosystem audio files with colleagues or clients on Windows or Android devices where CAF support is essentially nonexistent

Frequently Asked Questions

If your CAF file contains uncompressed PCM or lossless FLAC audio, then yes — converting to AAC in M4A introduces lossy compression for the first time. At 128 kbps AAC, the quality loss is generally imperceptible for speech and acceptable for most music, but it is technically a one-way process. If your source CAF is already AAC-encoded, you are re-encoding lossy-to-lossy, which compounds generation loss. For archival purposes, keep the original CAF file and use the M4A for distribution.
Renaming doesn't work because CAF and M4A are entirely different container formats with different internal structures. Even if both files contain AAC audio, the headers, metadata layout, and framing are incompatible. A media player reading an M4A expects MPEG-4 container atoms (like 'ftyp', 'moov', and 'mdat'), not the CAF chunk-based format Apple designed. FFmpeg must properly re-wrap or re-encode the audio into a valid M4A structure.
No — CAF is a more flexible container and supports a wider range of codecs including uncompressed PCM variants (16-bit, 24-bit, 32-bit float), FLAC, Opus, Vorbis, AAC, and legacy formats like A-law and µ-law. M4A is an MPEG-4 container and is primarily designed for AAC, with limited support for FLAC and Opus in some players. This is why the conversion re-encodes to AAC specifically — it's the most universally supported codec within the M4A container.
Replace the '128k' in '-b:a 128k' with your desired bitrate. For example, use '-b:a 256k' for higher fidelity music files, or '-b:a 96k' to produce smaller files suitable for voice recordings and podcasts. AAC is generally efficient enough that 128 kbps is transparent for most listening scenarios, but if your source CAF contains high-resolution studio audio, 192k or 256k is a safer choice to preserve fine detail.
Basic metadata tags like title, artist, and album embedded in the CAF file may be carried over by FFmpeg during conversion, but this depends on how the metadata was written in the source file. CAF does not natively support chapters, so there are no chapter markers to lose. The M4A container does support iTunes-style chapter markers, but FFmpeg will not create them automatically — you would need to add them manually using a separate tool after conversion.
Yes — on macOS or Linux you can use a shell loop to process multiple files: 'for f in *.caf; do ffmpeg -i "$f" -c:a aac -b:a 128k -vn "${f%.caf}.m4a"; done'. On Windows Command Prompt, use: 'for %f in (*.caf) do ffmpeg -i "%f" -c:a aac -b:a 128k -vn "%~nf.m4a"'. The browser-based tool processes one file at a time, so the FFmpeg command is especially useful for batch workflows involving many CAF files.

Technical Notes

CAF (Core Audio Format) was designed by Apple specifically to overcome the 4 GB file size limit of AIFF and WAV, and it's the native recording format for many macOS and iOS audio APIs. It stores audio in a flexible chunk-based structure and supports virtually any audio codec. When converting to M4A, the most important consideration is that you're almost always moving from a lossless or uncompressed source to AAC lossy compression — a meaningful quality trade-off that is irreversible. The AAC encoder in FFmpeg (the native 'aac' codec used here) produces compliant, widely compatible output, though some audiophiles prefer the third-party 'libfdk_aac' encoder for marginally better quality at the same bitrate (it requires a separately compiled FFmpeg build due to licensing). The M4A container wraps audio in standard MPEG-4 atoms, enabling features like gapless playback metadata and native streaming in Apple's ecosystem and web browsers. One known limitation: CAF files with multi-channel audio beyond stereo (e.g., surround sound game audio) may require additional channel mapping flags for correct M4A output, as the default AAC encoder may downmix or error on unusual channel configurations.

Related Tools