Convert AAC to WAV — Free Online Tool
Convert AAC audio files to WAV format by decoding the compressed AAC stream and re-encoding it as uncompressed PCM (16-bit little-endian) audio. This is the standard path for taking AAC files from iTunes, iOS recordings, or streaming sources into a lossless WAV container suitable for professional audio editing and broadcast workflows.
to
FFmpeg Command
Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg
Drop your AAC 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
AAC is a lossy compressed format — the encoder permanently discarded audio data when the AAC file was originally created. During this conversion, FFmpeg decodes the compressed AAC bitstream back into raw PCM audio samples, then writes those samples into a WAV container using the pcm_s16le codec (signed 16-bit integer, little-endian). The resulting WAV file is uncompressed, so every decoded sample is stored exactly as FFmpeg reconstructed it. Critically, because the lossy compression already happened upstream, the WAV output will not recover audio information that AAC discarded — it captures the decoded fidelity of the AAC file with no further quality degradation, but it is not identical to the original pre-AAC source.
What Each Flag Does
| Flag | What it does |
|---|---|
ffmpeg
|
Invokes the FFmpeg program. In the browser-based version of this tool, this runs via FFmpeg.wasm compiled to WebAssembly, so no files leave your device. |
-i input.aac
|
Specifies the input AAC file. FFmpeg detects whether it is a raw AAC stream or an AAC stream wrapped in an MP4/M4A container and selects the appropriate demuxer automatically. |
-c:a pcm_s16le
|
Sets the audio codec for the output to PCM signed 16-bit little-endian, which is the standard uncompressed format used in WAV files at CD quality. This decodes the lossy AAC bitstream into raw audio samples that are stored directly in the WAV container without any further compression. |
output.wav
|
Defines the output filename and tells FFmpeg to write a WAV container. FFmpeg infers the RIFF/WAV container format from the .wav extension and pairs it with the pcm_s16le codec specified by the previous flag. |
Common Use Cases
- Importing audio purchased from iTunes or the Apple Music store into a DAW like Pro Tools, Logic Pro, or Audacity, which require WAV or AIFF for multitrack editing sessions
- Preparing voice memos or podcast interviews recorded on an iPhone (which saves as AAC/M4A) for delivery to a broadcast studio that mandates uncompressed WAV files
- Loading AAC-encoded sound effects or music beds into video editing software such as DaVinci Resolve or Adobe Premiere when the project requires WAV assets for frame-accurate sync
- Archiving AAC files from a streaming download or rip into WAV so the decoded audio is preserved without any additional re-encoding generation loss before applying effects or mastering
- Feeding AAC audio from an app or game into audio analysis or transcription software that only accepts uncompressed PCM WAV input
- Supplying a broadcaster or podcast network with WAV deliverables when you only have the AAC master from a remote recording session
Frequently Asked Questions
No. AAC is a lossy format, meaning the encoder permanently discarded audio data — typically high-frequency content and quieter sounds masked by louder ones — when the AAC file was first created. Converting to WAV simply decodes those compressed samples into uncompressed PCM storage; it cannot reconstruct what was never stored. The WAV file will sound identical to the AAC source but will not sound better than a WAV file recorded before the AAC encoding step.
AAC achieves its small file size through perceptual compression — a 128 kbps AAC file stores audio at roughly 1 MB per minute. WAV with pcm_s16le stores every audio sample uncompressed at CD quality, which is approximately 10 MB per minute for stereo audio at 44.1 kHz. A 5 MB AAC file might expand to 50 MB or more as WAV. This size increase is expected and does not indicate a problem; it simply reflects the difference between compressed and uncompressed storage.
Yes. FFmpeg reads the sample rate (e.g., 44100 Hz, 48000 Hz) and channel count (mono, stereo) directly from the AAC stream and writes them into the WAV header unchanged. The pcm_s16le codec does not impose its own sample rate, so whatever rate the AAC was encoded at is preserved in the output. If you need a specific sample rate for a target application, you can add '-ar 48000' (or another rate) to the command.
Partially. AAC files often store metadata in iTunes-style MP4 tags (when wrapped in an M4A container) or ID3 tags. WAV supports a limited metadata chunk called INFO or, more recently, ID3 tags embedded in a RIFF chunk. FFmpeg will attempt to map common fields like title and artist, but some tags may be dropped or not recognized by all WAV-reading software. For production workflows where metadata matters, review the output file in your target application after conversion.
Replace '-c:a pcm_s16le' in the command with the codec matching your desired bit depth. For 24-bit use '-c:a pcm_s24le', for 32-bit integer use '-c:a pcm_s32le', and for 32-bit float use '-c:a pcm_f32le'. The full command for 24-bit output would be: ffmpeg -i input.aac -c:a pcm_s24le output.wav. Note that since the source is a lossy AAC file, using a higher bit depth increases file size without recovering additional audio information.
The single-file command shown here processes one file at a time. To batch convert on Linux or macOS, you can wrap it in a shell loop: 'for f in *.aac; do ffmpeg -i "$f" -c:a pcm_s16le "${f%.aac}.wav"; done'. On Windows Command Prompt, use: 'for %f in (*.aac) do ffmpeg -i "%f" -c:a pcm_s16le "%~nf.wav"'. Each AAC file in the directory will be decoded and saved as a separate WAV file with the same base name.
Technical Notes
The default codec selected for this conversion — pcm_s16le — produces standard CD-quality WAV output: signed 16-bit samples stored in little-endian byte order. This format has near-universal compatibility across DAWs, broadcast systems, video editors, and consumer software. The WAV container itself imposes a 4 GB file size limit due to its 32-bit RIFF chunk size field; for very long recordings this can be a constraint, though few AAC files in practice approach that threshold when decoded. AAC files sometimes arrive as bare .aac streams or wrapped in an .m4a (MPEG-4 Audio) container — FFmpeg handles both transparently. If the AAC was encoded with the HE-AAC (High-Efficiency AAC) profile using spectral band replication (SBR), FFmpeg will decode it correctly and the WAV will reflect the reconstructed full-bandwidth audio. The libfdk_aac decoder (if available in your local FFmpeg build) offers marginally higher decode accuracy for edge cases, but the default aac decoder is sufficient for the vast majority of AAC files.