What Is AAC? Advanced Audio Coding Explained
Learn about AAC, the modern audio codec that outperforms MP3. Covers encoding, quality, and compatibility.
AAC, short for Advanced Audio Coding, is the lossy audio codec the industry settled on after MP3. It is the default audio in YouTube videos, Apple Music streams, broadcast TV, satellite radio, smartphone voice recorders, and almost every modern device that plays compressed audio. If you played media in the last decade, statistically you have decoded more AAC than any other codec.
Despite its dominance, AAC is widely misunderstood. Users confuse the codec with the .m4a container, the AAC-LC profile with HE-AAC and xHE-AAC, and the patent-encumbered legacy with the largely-expired-patent present. This guide covers the technical reality, the profile lineup, the encoder differences that matter, and where AAC fits next to MP3, Opus, and FLAC.
What AAC Actually Is
AAC is a perceptual audio codec defined in two ISO/IEC standards. The original specification appeared in MPEG-2 (ISO/IEC 13818-7, published in 1997) and was extended in MPEG-4 (ISO/IEC 14496-3, published in 1999 and revised many times since). AAC is not a single algorithm — it is a family of profiles that share the core encoder structure but optimize for different bitrates and use cases.
The codec was designed by a consortium of audio research groups: Fraunhofer IIS (the lead developer of MP3), Dolby Laboratories, AT&T Bell Labs, Sony, and Nokia. Its explicit goal was to outperform MP3 (MPEG-1 Audio Layer III) at every bitrate while supporting features MP3 lacked, including up to 48 channels of audio, sample rates from 8 kHz to 96 kHz, and arbitrary bitrates without the rigid lookup table MP3 uses.
How AAC Compresses Audio
AAC uses the same general approach as MP3 — a psychoacoustic model identifies what the listener cannot hear, the encoder spends fewer bits there — but with a more sophisticated implementation at every step.
Modified Discrete Cosine Transform (MDCT) with switchable window sizes. AAC analyzes audio in 1024-sample windows by default and switches to 128-sample windows when it detects transients. The short windows prevent pre-echo on drum hits and sharp attacks, an artifact MP3 handles less elegantly. MP3 uses a 576-sample MDCT inside an additional polyphase filter bank, which limits its precision.
Temporal Noise Shaping (TNS). AAC can shape quantization noise across time within a frame, hiding it under masking signals. MP3 cannot do this.
Perceptual Noise Substitution (PNS). The encoder can flag bands of pure noise (cymbal washes, ocean ambience) and replace them with a noise generator on decode, saving bits without audible loss.
Long-Term Prediction. AAC tracks pitch periodicity across frames and codes only the residual, useful for sustained tones.
Spectral Band Replication and Parametric Stereo (HE-AAC additions). At low bitrates, AAC can transmit only the lower frequency band and synthesize the upper band on decode using shape parameters. Parametric stereo encodes a mono signal plus a few stereo cues. These tools push usable bitrates as low as 16-32 kbps for stereo speech.
The result: AAC reaches perceptual transparency at roughly 128 kbps for stereo music, where MP3 needs 192-256 kbps. The exact savings depend on content; sparse acoustic music compresses similarly in both, while complex orchestral and electronic material reveals AAC's advantage more clearly.
The AAC Profile Family
AAC is not one thing. The MPEG-4 spec defines dozens of profiles; four matter in practice.
AAC-LC (Low Complexity) is the workhorse. It is what iTunes purchases use, what Apple Music streams as a default, what YouTube transcodes its audio to, and what broadcast TV runs over DVB and ATSC. AAC-LC at 256 kbps is transparent for nearly all listeners on nearly all material. The Apple Music catalog and the iTunes Store both encode AAC-LC at 256 kbps VBR.
HE-AAC (High Efficiency AAC, also called AAC+) layers Spectral Band Replication on top of AAC-LC. It targets 32-128 kbps and is the default for streaming radio, DAB+ digital broadcasting, and some satellite services. HE-AAC at 64 kbps stereo sounds comparable to AAC-LC at 96 kbps but with smaller files.
HE-AAC v2 (also called AAC+ v2 or eAAC+) adds Parametric Stereo, designed for stereo music below 64 kbps. It powers the lowest-tier streams on services that need to serve flaky mobile connections.
xHE-AAC (Extended HE-AAC, MPEG-D USAC) is the newest member, standardized in 2012 and rolled out commercially since 2018. It unifies speech and music coding (so the encoder does not need to choose), supports loudness and dynamic-range control metadata via MPEG-D DRC, and reaches usable quality from roughly 12 kbps for mono speech up to 300+ kbps for high-quality stereo. xHE-AAC is the audio codec for the latest DASH-IF streaming spec, MPEG-DASH, and is now used by Netflix and several other major streaming platforms. Apple added native xHE-AAC support in iOS 13 and macOS Catalina.
AAC vs M4A — Container vs Codec
Confusion between AAC and M4A is constant. The distinction is simple: AAC is the codec — the algorithm that compresses the audio. M4A is the container — the file wrapper that holds the codec's output along with metadata, chapter markers, and album art.
A .m4a file almost always contains AAC audio. The container can also hold ALAC (Apple Lossless), and historically some .m4a files contained MP3 or other formats, but AAC inside MPEG-4 is the dominant pairing. A raw .aac file contains AAC frames with no container — useful for streaming, awkward for libraries because nothing tells the player where chapters or tags live.
The relationship parallels Vorbis-in-OGG or Opus-in-WebM. The codec is what compresses; the container is what files it. To convert M4A to MP3 the system extracts the AAC stream from the MP4 container, decodes to PCM, and re-encodes to MP3 — two lossy passes that should be avoided when a higher-quality source exists.
The Patent Story
AAC has been patent-encumbered for most of its commercial life. The patent pool was administered by Via Licensing (now Via LA), and licensing fees applied to encoders, decoders, and content distributors. This is the historical reason AAC was less prevalent in open-source software than MP3 — which had its own patent issues until 2017 — or Vorbis and Opus, which were designed to be royalty-free from the start.
The bulk of the foundational AAC patents have now expired. The original MPEG-2 AAC patents expired in 2017. Many MPEG-4 AAC-LC patents expired between 2018 and 2023. Newer profile-specific patents (HE-AAC v2, xHE-AAC) and implementation-specific patents remain active. For most practical encoding and decoding purposes, AAC-LC is now in roughly the same legal territory as MP3 — encumbered enough to require care for commercial encoders, free enough for open-source decoders to ship widely.
Encoders Are Not Equal
AAC is a specification; the encoder implementation determines the actual quality. Three encoders dominate practical use, and their differences are real.
Apple AAC ships in macOS, iOS, iTunes, and afconvert. It is generally considered the highest-quality AAC encoder, particularly at 128-256 kbps VBR. Apple Music and the iTunes Store use this encoder. It is closed-source.
FDK AAC comes from Fraunhofer IIS, is the encoder used in Android, and is open-source under a permissive license (with one MPEG-4 patent caveat). It is competitive with Apple AAC, especially in HE-AAC and HE-AAC v2 modes. FDK AAC is the recommended choice for FFmpeg builds that include it.
Nero AAC was a high-quality VBR encoder popular in the 2000s. Development is now discontinued, but the binaries remain available and produce decent files. Less relevant in 2026.
LAV / built-in FFmpeg AAC is a native FFmpeg encoder that improved substantially after 2016 but still trails Apple and FDK at low bitrates. Adequate for most uses, not best in class.
For the highest-quality AAC encode from a lossless source, prefer Apple AAC if available or FDK AAC otherwise. Avoid the ancient FFmpeg native encoder for archive work.
Sample Rates, Channels, and Bitrate Ranges
AAC supports sample rates from 8 kHz (telephony) up to 96 kHz (high-resolution audio). Common production rates are 44.1 kHz for music delivery, 48 kHz for video and broadcast, and 32 kHz for some streaming radio.
Channel configurations span mono, stereo, 5.1, 7.1, and arbitrary multichannel up to 48 channels in MPEG-4 mode. Apple's TrueHD and Dolby Digital Plus rely on different codecs for surround in many contexts, but AAC's multichannel modes are widely supported in MPEG-DASH and HLS streaming.
Bitrates are flexible. AAC-LC handles 64 kbps to 320 kbps for stereo music typically. HE-AAC operates 32-128 kbps. HE-AAC v2 starts as low as 16 kbps. xHE-AAC has the broadest range, from 12 kbps mono speech up to 500+ kbps multichannel music.
Where AAC Is Used
The list is long enough that the easier question is where AAC is not used.
- Apple ecosystem. iTunes Store purchases (256 kbps AAC-LC), Apple Music streams (256 kbps AAC-LC default, lossless ALAC optional), Voice Memos, GarageBand exports, FaceTime audio.
- YouTube. The default audio track on most YouTube uploads is AAC-LC at 128-384 kbps depending on resolution, with an Opus alternative.
- Broadcast TV. ATSC 1.0 digital television in the US uses AC-3 (Dolby Digital), but ATSC 3.0 uses AAC. European DVB uses AAC widely, particularly DVB-T2 and DVB-S2.
- Digital radio. DAB+ uses HE-AAC v2. SiriusXM uses a proprietary codec, but most internet radio streams ship HE-AAC.
- Streaming. Netflix, Disney+, HBO Max, Amazon Prime Video, Spotify (256 kbps AAC on iOS), Tidal (320 kbps AAC base tier), Hulu — all rely on AAC variants.
- Smartphones. iPhone Voice Memos default to M4A AAC. Android phones often record video with AAC audio. WhatsApp voice notes use Opus, but most other messaging apps embed AAC.
- Game consoles. PlayStation, Xbox, and Nintendo Switch all decode AAC natively.
AAC vs MP3, Opus, and FLAC
Where AAC falls in the codec landscape:
- AAC vs MP3. AAC-LC is roughly 30 percent more efficient than MP3 at the same perceptual quality. At 128 kbps stereo, AAC is transparent on most material; MP3 needs 192-256 kbps to match. MP3 still wins on legacy hardware compatibility — old car stereos and embedded players that predate the late 2000s often play MP3 only.
- AAC vs Opus. Opus, designed for the open web and rolled out in 2012, is more efficient than AAC at low bitrates (below 64 kbps) and competitive at music bitrates above 96 kbps. Opus is the better choice for new web and real-time applications. AAC is the better choice for compatibility with consumer hardware and for delivery to Apple devices.
- AAC vs FLAC. FLAC is lossless; AAC is lossy. They serve different purposes. Use FLAC for archival masters and audiophile streaming. Use AAC for distribution where storage and bandwidth matter. The AAC vs FLAC comparison covers the tradeoff in detail.
When to Choose AAC
The clear AAC use cases:
- Music libraries on Apple devices. AAC-LC at 256 kbps integrates seamlessly with Music.app, syncs to iCloud Music Library, and matches iTunes Store quality.
- Video soundtracks in MP4. Pairing H.264 or HEVC video with AAC audio is the universally compatible video container choice.
- Streaming with broad device support. When you need a single encode that plays on iOS, Android, smart TVs, browsers, and game consoles, AAC is the safest bet.
- Podcasts in M4A. Apple Podcasts accepts both MP3 and M4A; M4A AAC at 64-96 kbps mono produces smaller files at equal quality to 128 kbps MP3.
The cases where you should not pick AAC:
- Maximum legacy compatibility. Vehicle stereos before 2010, very old MP3 players, and some industrial embedded systems may not decode AAC. Pick MP3.
- Real-time interactive audio. Voice chat, live streaming, and conferencing use Opus for its low latency. AAC has higher algorithmic delay.
- Lossless archiving. Use FLAC, ALAC, or WAV. AAC discards information by design.
The Future: xHE-AAC and DASH
xHE-AAC adoption is the live story in AAC right now. Netflix shipped xHE-AAC across its catalog over 2019-2021, displacing AC-3 and HE-AAC for many delivery scenarios. The codec's loudness normalization metadata via MPEG-D DRC solved the long-standing problem of varying perceived loudness between programs and trailers, and its bitrate flexibility lets a single encode serve from 2G mobile up to high-quality home cinema. Other DASH-based services are following.
For most consumers, xHE-AAC is invisible — Apple, Android, and modern browsers decode it natively. For producers, the encoder ecosystem is still maturing; Fraunhofer's commercial encoder is the gold standard, with FDK AAC and Apple's tools offering varying levels of xHE-AAC support depending on platform.
Bottom Line
AAC is the codec the audio industry actually standardized on after MP3. It is in your phone, your TV, your car (if it is recent), every smartphone-recorded video, every podcast that ships M4A, and every iTunes purchase ever made. Its profiles cover the full bitrate range from 12 kbps speech to 500+ kbps multichannel music, its patent burden has lifted considerably, and its sound quality at typical bitrates is the best of any widely-deployed lossy codec other than Opus. When you convert AAC to MP3 you trade efficiency for compatibility; when you convert MP3 to AAC you compound lossy artifacts. Choose AAC at the source, and choose lossless when archival quality matters.