Convert WMA to CAF — Free Online Tool

Convert WMA audio files to Apple's Core Audio Format (CAF), decoding Microsoft's wmav2 codec and re-encoding to uncompressed PCM (pcm_s16le) for maximum compatibility within Apple's audio ecosystem. CAF eliminates the file size limits of older formats and is natively supported by macOS and iOS audio tools.

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

WMA files use Microsoft's proprietary wmav2 (or wmav1) lossy codec, which must be fully decoded before conversion. FFmpeg decodes the WMA audio stream back to raw PCM audio in memory, then re-encodes it into CAF as 16-bit little-endian PCM (pcm_s16le). Because WMA is a lossy format and the output is uncompressed PCM, no additional lossy compression is applied — the CAF file captures the decoded audio as accurately as possible. The result is a significantly larger file than the original WMA, but it contains the full quality of the decoded audio and is ready for use in Apple-native workflows like GarageBand, Logic Pro, Core Audio APIs, or iOS development.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg binary, the open-source multimedia processing engine that handles decoding the proprietary WMA stream and re-encoding it into the CAF container.
-i input.wma Specifies the input WMA file. FFmpeg automatically detects the wmav2 (or wmav1) codec and the ASF container that WMA files use, and prepares to decode the audio stream.
-c:a pcm_s16le Sets the audio codec for the output to 16-bit signed little-endian PCM, which is uncompressed audio. This is the default and most compatible PCM format for CAF files used in Apple's Core Audio framework and tools like Logic Pro and GarageBand.
-b:a 128k Specifies a target audio bitrate of 128 kbps. For pcm_s16le, which is uncompressed and bitrate-fixed by sample rate and bit depth, this flag has no practical effect — it is included for reference but can safely be omitted when outputting uncompressed PCM to CAF.
output.caf Defines the output filename and tells FFmpeg to wrap the PCM audio in Apple's Core Audio Format container (.caf), which supports large file sizes and is natively readable by macOS and iOS audio APIs.

Common Use Cases

  • Importing legacy WMA audio assets into Logic Pro or GarageBand, which do not natively support WMA but work seamlessly with CAF files
  • Preparing audio files for iOS or macOS app development, where Core Audio APIs natively read CAF and require no additional decoding libraries
  • Archiving WMA music or voice recordings into an uncompressed PCM format within the CAF container, preserving all audible detail from the lossy source
  • Converting WMA podcast recordings or lecture downloads for editing in Apple's audio toolchain without introducing a second generation of lossy compression
  • Moving WMA audio assets from a Windows-based production environment into a macOS post-production workflow that expects CAF-format source files
  • Converting WMA audio longer than 4GB in raw PCM size, taking advantage of CAF's large file support compared to WAV or AIFF

Frequently Asked Questions

No — WMA is a lossy format, meaning some audio information was permanently discarded when the WMA file was originally created. Converting to CAF with PCM audio simply decodes the WMA stream and stores it uncompressed; it cannot restore information that was already lost. The CAF file will be an accurate, uncompressed representation of the decoded WMA audio, but it will not exceed the quality ceiling of the original WMA source.
WMA uses lossy compression that can shrink audio to roughly 128 kbps, while the output CAF file uses uncompressed pcm_s16le, which stores every sample as raw 16-bit data — typically around 1.4 MB per minute per channel at CD quality. A 4-minute WMA file might be 4 MB, while the equivalent CAF with PCM audio could be 40 MB or more. This is expected behavior: the size increase reflects the removal of compression, not an increase in audio information.
Yes. WMA files with Digital Rights Management (DRM) protection cannot be decoded or converted by FFmpeg — the conversion will fail because FFmpeg cannot access the encrypted audio stream. Only DRM-free WMA files can be converted. If your WMA file was purchased from a service that applied DRM, you will need to use an authorized tool or service to remove the DRM before converting.
WMA supports metadata tags such as title, artist, and album, and FFmpeg will attempt to map these to the CAF container during conversion. However, CAF has limited metadata support compared to WMA, and some tag fields may not transfer cleanly or may be dropped. If metadata preservation is critical, you should verify the output file's tags using a tool like ffprobe or a dedicated audio tag editor after conversion.
Yes. CAF supports multiple codecs including AAC, FLAC, Opus, Vorbis, and several PCM variants. To use AAC instead, change the command to: ffmpeg -i input.wma -c:a aac -b:a 128k output.caf. To use lossless FLAC, use: ffmpeg -i input.wma -c:a flac output.caf. Using AAC will keep the file size small at the cost of another generation of lossy compression, while FLAC preserves the decoded PCM losslessly with moderate compression.
On macOS or Linux, you can loop over all WMA files in a directory with: for f in *.wma; do ffmpeg -i "$f" -c:a pcm_s16le "${f%.wma}.caf"; done. On Windows Command Prompt, use: for %f in (*.wma) do ffmpeg -i "%f" -c:a pcm_s16le "%~nf.caf". Each file is processed sequentially, and the output CAF file takes the same base name as the input WMA file.

Technical Notes

The WMA format ships two primary codecs — wmav2 (the default and most common) and the older wmav1 — both of which FFmpeg decodes reliably. The output codec, pcm_s16le, is 16-bit signed little-endian PCM, which matches CD-quality bit depth and is the broadest-compatibility PCM variant within CAF for Apple tools. If your WMA source was encoded at a high sample rate (e.g., 48 kHz), FFmpeg will preserve that sample rate in the output unless you specify otherwise with the -ar flag. CAF has no practical file size limit, unlike WAV (4 GB limit) or AIFF, making it suitable for long-form uncompressed audio. Note that CAF is an Apple-proprietary container and is not broadly supported outside macOS and iOS ecosystems; if cross-platform compatibility is needed, consider WAV or FLAC as alternatives. The -b:a flag in the command is technically relevant only when using variable-bitrate codecs like AAC or MP3; for pcm_s16le, which is uncompressed and has a fixed bitrate determined by sample rate and bit depth, the -b:a flag has no effect and can be omitted.

Related Tools