Convert WAV to AAC — Free Online Tool

Convert WAV audio files to AAC format using FFmpeg.wasm entirely in your browser — no uploads required. This conversion encodes uncompressed PCM audio (typically 16-bit/44.1kHz WAV) into AAC using the native FFmpeg AAC encoder at 128k bitrate, dramatically reducing file size while maintaining perceptually transparent quality for most listening scenarios.

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

WAV files store audio as raw PCM samples — essentially uncompressed waveform data with no perceptual encoding applied. During this conversion, FFmpeg reads those PCM samples and runs them through the AAC encoder, which applies psychoacoustic modeling to identify and discard audio information that human hearing is least sensitive to. The result is an AAC-encoded .aac file that is typically 10–15x smaller than the original WAV. Because this is a full re-encode from uncompressed source material (not a transcode from another lossy format), the AAC output starts from the cleanest possible input, minimizing generation loss. The default bitrate of 128k strikes a balance between file size and perceptible audio quality.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg program, the open-source multimedia processing engine that handles decoding the WAV input and encoding the AAC output. In this browser tool, it runs via FFmpeg.wasm, a WebAssembly port of FFmpeg.
-i input.wav Specifies the input file — a WAV audio file containing uncompressed (or lightly compressed) PCM audio. FFmpeg auto-detects the WAV container and its internal codec (e.g., pcm_s16le, pcm_s24le) to prepare the audio samples for re-encoding.
-c:a aac Selects the native FFmpeg AAC encoder to compress the audio. This replaces the uncompressed PCM waveform data from the WAV file with perceptually encoded AAC audio, which is the codec used natively by Apple devices, iTunes, YouTube, and most modern streaming platforms.
-b:a 128k Sets the AAC audio bitrate to 128 kilobits per second, which is the standard default for AAC encoding. Starting from uncompressed WAV, 128k AAC is generally considered transparent for speech and adequate for music, yielding a file roughly 10x smaller than the source WAV.
output.aac Defines the output filename and format. The .aac extension tells FFmpeg to write a raw AAC Elementary Stream. If you rename this to output.m4a, FFmpeg will instead wrap the same AAC audio in an MPEG-4 container, which improves compatibility with iTunes and enables proper metadata display.

Common Use Cases

  • Preparing a high-quality WAV recording from a digital audio workstation (DAW) for upload to Apple Podcasts or Spotify, which prefer AAC or MP3 over raw WAV files
  • Reducing the file size of uncompressed WAV recordings from a field recorder or microphone before transferring to an iPhone or iPad, where AAC is the native audio format
  • Converting WAV audio assets exported from video editing software into AAC for use in iOS or macOS app development, where AAC is the recommended format for AVFoundation
  • Shrinking large WAV archives of interviews, lectures, or meetings for long-term storage or cloud backup without the overhead of uncompressed audio
  • Converting WAV audio from a broadcast or studio session into AAC for delivery to a client whose platform (e.g., YouTube, streaming services) encodes to AAC internally anyway
  • Preparing WAV samples or music stems for use in an iTunes or Apple Music distribution pipeline, where AAC is the delivery codec

Frequently Asked Questions

Because WAV stores audio as uncompressed PCM, it is the ideal source for any lossy encoding — there is no generation loss from a prior compression step. At 128k bitrate, AAC's psychoacoustic encoder produces results that most listeners cannot distinguish from the original in a blind test for standard music or speech content. If you are working with critical listening material, you can increase the bitrate to 192k or 256k in the FFmpeg command to further reduce any perceptible artifacts.
A standard WAV file encoded as 16-bit stereo at 44.1kHz uses approximately 10 MB per minute of audio. An AAC file at 128k bitrate uses roughly 1 MB per minute — about a 10x reduction. At higher WAV bit depths (24-bit or 32-bit float), the size difference is even more dramatic. The exact ratio depends on the original WAV's sample rate, bit depth, and channel count.
The native FFmpeg AAC encoder (used in this tool's command) is built into FFmpeg and produces good-quality AAC output without any additional dependencies. libfdk_aac is a third-party encoder based on the Fraunhofer FDK library, which is widely considered to produce slightly better quality at lower bitrates (below 128k especially). However, libfdk_aac requires FFmpeg to be compiled with that library, which is not always available. For most use cases at 128k or higher, the native aac encoder delivers excellent results from a WAV source.
WAV metadata support is inconsistent — WAV files can store ID3 or INFO chunk metadata, but many tools write it incompletely or in non-standard ways. FFmpeg will attempt to copy any recognized metadata tags to the AAC output file, but if your WAV file has no embedded tags, the AAC output will also have none. If metadata preservation is critical, verify the WAV source contains proper tags before converting, or add tags manually to the output using the -metadata flag in the FFmpeg command.
Replace the '128k' value in the '-b:a 128k' flag with your desired bitrate. For speech or podcasts, 96k is often sufficient. For music where quality is important, 192k or 256k is recommended. For maximum AAC quality, 320k is the practical ceiling, though most listeners find 192k from a lossless WAV source indistinguishable from the original. The full command would look like: ffmpeg -i input.wav -c:a aac -b:a 192k output.aac
The command shown processes a single file, but you can batch convert on your desktop using a shell loop. On Linux or macOS, run: for f in *.wav; do ffmpeg -i "$f" -c:a aac -b:a 128k "${f%.wav}.aac"; done. On Windows Command Prompt, use: for %f in (*.wav) do ffmpeg -i "%f" -c:a aac -b:a 128k "%~nf.aac". This is particularly useful if you have a large collection of WAV files that exceed the 1GB browser limit or simply prefer to process them locally in bulk.

Technical Notes

WAV files most commonly store PCM audio at 16-bit or 24-bit depth at sample rates of 44.1kHz or 48kHz, though the format supports a range of codecs including ADPCM and even FLAC. This tool's FFmpeg command handles all standard WAV variants since FFmpeg decodes the PCM data to raw samples before the AAC encoder processes it — the original WAV codec is irrelevant to the output quality. The output .aac file is a raw AAC Elementary Stream, not wrapped in an MP4/M4A container. This means the file is compatible with many players and platforms but lacks the container-level metadata and seeking support that an M4A (AAC in MPEG-4 container) provides. If you need iTunes or Finder to display metadata or want better seeking in media players, consider changing the output filename to output.m4a in the FFmpeg command — FFmpeg will automatically wrap the AAC stream in an MP4 container. One important limitation: WAV does not support multiple audio tracks, surround sound beyond stereo in most common implementations, or subtitle data, so none of these are present to lose during conversion.

Related Tools