
An
icon representing MPEG-4 AAC DRM encoded files, as used in the iTunes Store
'Advanced Audio Coding' ('AAC') is a standardized,
lossy compression and
encoding scheme for '
digital audio'. AAC is promoted as the successor to the
MP3 format by MP3’s creator,
Fraunhofer IIS.
Depending on the encoder used, AAC generally achieves better sound quality than
MP3 at the same
bitrate, particularly below 192
kbit/s.
[1]
AAC’s most famous usage is as the default audio format of
Apple's
iPhone,
iPod,
iTunes, and the format used for all
iTunes Store audio (with extensions for proprietary
Digital Rights Management (DRM) where used).
AAC is also the standard audio format for
Sony’s
PlayStation 3, the
MPEG-4 video standard, and
HE-AAC is part of
digital radio standards like
DAB+ and
Digital Radio Mondiale.
History
AAC was developed with the cooperation and contributions of companies including
Dolby,
Fraunhofer IIS,
AT&T,
Sony and
Nokia, and was officially declared an international standard by the
Moving Pictures Experts Group in April 1997.
Standardization
It is specified both as ''Part 7 of the MPEG-2 standard'', and ''Part 3 of the MPEG-4 standard''.
As such, it can be referred to as 'MPEG-2 Part 7' and 'MPEG-4 Part 3' depending on its
implementation, however it is most often referred to as 'MPEG-4 AAC', or 'AAC' for short.
AAC was first specified in the standard MPEG-2 Part 7 (known formally as
ISO/
IEC 13818-7:1997) in 1997 as a new "part" (distinct from
ISO/
IEC 13818-3) in the
MPEG-2 family of
international standards.
It was updated in
MPEG-4 Part 3 (known formally as ISO/IEC 14496-3:1999) in 1999. The reference software is specified in MPEG-4 Part 4 and the conformance bitstreams are specified in MPEG-4 Part 5. A notable addition in this version of the standard is Perceptual Noise Substitution (PNS).
HE-AAC (AAC with SBR) was first standardized in ISO/IEC 14496-3:2001/Amd.1. HE-AAC v2 (AAC with Parametric Stereo) was first specified in ISO/IEC 14496-3:2001/Amd.4.
[2]
The current version of the AAC standard is ISO/IEC 14496-3:2005 (with 14496-3:2005/Amd.2. for HE-AAC v2
[ISO/IEC 14496-3:2005/Amd.2 [1]])
AacPlus v2 is also standardized by
ETSI (
European Telecommunications Standards Institute) as TS 102005.
2
The MPEG4 standard also contains other ways of compressing sound. These are low bit rate and generally used for speech.
AAC’s improvements over MP3
AAC was designed to have better performance than
MP3 (which was specified in
MPEG-1 and
MPEG-2) by the
ISO/
IEC in 11172-3 and 13818-3.
Improvements include:
★ More
sample frequencies (from 8
kHz to 96
kHz) than MP3 (16 kHz to 48 kHz)
★ Up to 48 channels (MP3 supports up to two channels in MPEG-1 mode and up to 5.1 channels in MPEG-2 mode)
★ Arbitrary
bitrates and variable frame length. Standardized constant bit rate with bit reservoir.
★ Higher efficiency and simpler filterbank (hybrid → pure
MDCT)
★ Higher coding efficiency for stationary signals (blocksize: 576 → 1024 samples)
★ Higher coding efficiency for transient signals (blocksize: 192 → 128 samples)
★ Can use
Kaiser-Bessel derived window function to eliminate spectral leakage at the expense of widening the main lobe
★ Much better handling of audio frequencies above 16 kHz
★ More flexible
joint stereo (separate for every scale band)
★ Adds additional modules (tools) to increase compression efficiency: TNS, Backwards Prediction, PNS etc... These modules can be combined to constitute different encoding profiles.
Overall, the AAC format allows developers more flexibility to design codecs than MP3 does. This increased flexibility often leads to more concurrent encoding strategies and, as a result, to more efficient compression. However in terms of whether AAC is better than MP3, the advantages of AAC are not entirely conclusive, and the MP3 specification, while outdated, has proven surprisingly robust. AAC and HE-AAC are better than MP3 at low bitrates (typically less than 192 kbit/s).
How AAC works
AAC is a wideband audio coding algorithm that exploits two primary coding strategies to dramatically reduce the amount of data needed to represent high-quality digital audio.
# Signal components that are perceptually irrelevant are discarded;
# Redundancies in the coded audio signal are eliminated.
Furthermore:
★ The signal is processed by a
modified discrete cosine transform (MDCT) according to its complexity;
★ Internal error correction codes are added;
★ The signal is stored or transmitted.
★ In order to prevent corrupt samples, a modern implementation of the
Luhn mod N algorithm is applied to each frame
The
MPEG-4 audio standard does not define a single or small set of highly efficient compression schemes but rather a complex toolbox to perform a wide range of operations from low bitrate speech coding to high-quality audio coding and music synthesis.
★ The
MPEG-4 audio coding algorithm family spans the range from low bitrate speech encoding (down to 2 kbit/s) to high-quality audio coding (at 64 kbit/s per channel and higher).
★ AAC offers sampling frequencies between 8 kHz and 96 kHz and any number of channels between 1 and 48.
★ In contrast to MP3's hybrid filter bank, AAC uses the modified discrete cosine transform (
MDCT) together with the increased window lengths of 1024 points. AAC is much more capable of encoding audio with streams of complex pulses and square waves than MP3 or
MP2.
AAC encoders can switch dynamically between a single MDCT block of length 1024 points or 8 blocks of 128 points.
★ If a signal change or a transient occurs, 8 shorter windows of 128 points each are chosen for their better temporal resolution.
★ By default, the longer 1024-point window is otherwise used because the increased frequency resolution allows for a more sophisticated psychoacoustic model, resulting in improved coding efficiency.
Modular encoding
AAC takes a modular approach to encoding. Depending on the complexity of the bitstream to be encoded, the desired performance and the acceptable output, implementers may create profiles to define which of a specific set of tools they want use for a particular application. The standard offers four default profiles:
★ 'Low Complexity (LC)' - the simplest and most widely used and supported;
★ 'Main Profile (MAIN)' - like the LC profile, with the addition of
backwards prediction;
★ 'Sample-Rate Scalable (SRS)', a.k.a. ''Scalable Sample Rate'' (
MPEG-4 AAC-SSR);
★ 'Long Term Prediction (LTP)'; added in the MPEG-4 standard – an improvement of the MAIN profile using a forward predictor with lower computational complexity.
Depending on the AAC profile and the MP3 encoder, 96 kbit/s AAC can give nearly the same or better perceptional quality as 128 kbit/s MP3.
[2]
AAC Low Delay
The 'MPEG-4 Low Delay Audio Coder (
AAC-LD)' is designed to combine the advantages of perceptual audio coding with the low delay necessary for two-way communication. It is closely derived from the MPEG-2 Advanced Audio Coding (AAC) format.
The most stringent requirements are a maximum algorithmic delay of only 20 ms and a good audio quality for all kind of audio signals including speech and music. 'The
AAC-LD coding scheme bridges the gap between speech coding schemes and high quality audio coding schemes.'

AAC Low Delay compared to normal AAC codecs and ITU speech audio compression systems.
AAC error protection toolkit
Applying error protection enables error correction up to a certain extent. Error correcting codes are usually applied equally to the whole payload. However since different parts of an AAC payload show different sensitivity to transmission errors, this would not be a very efficient approach.
The AAC payload can be subdivided into parts with different error sensitivities.
★ Independent error correcting codes can be applied to any of these parts using the Error Protection (EP) tool defined in MPEG-4 Audio.
★ This toolkit provides the error correcting capability to the most sensitive parts of the payload in order to keep the additional overhead low.
Error Resilient (ER) AAC
Error Resilience (ER) techniques can be used to make the coding scheme itself more robust against errors.
For AAC, three custom-tailored methods were developed and defined in MPEG-4 Audio
★ 'Huffman Codeword Reordering (HCR)' to avoid error propagation within spectral data;
★ 'Virtual Codebooks (VCB11)' to detect serious errors within spectral data;
★ 'Reversible Variable Length Code (RVLC)' to reduce error propagation within scale factor data.
Promoting aspects
Licensing and patents
No licenses or payments are required to be able to stream or distribute content in AAC format.
[3] This reason alone makes AAC a much more attractive format for distributing content, particularly streaming content (such as Internet radio).
However, a patent license is required for all manufacturers or developers of AAC codecs, that require encoding or decoding.
[4] It is for this reason
FOSS implementations such as
FAAC and FAAD are distributed in
source form only, in order to avoid patent infringement.
AAC requires a patent license, and thus uses
proprietary technology. But contrary to popular belief, it is not the property of a single company, having been developed in a standards-making organization.
Marketing aspects
AAC was promoted as the successor to MPEG 1.0 audio, layer III (MP3) for audio coding at medium to high bitrates, although lower bitrates are its forte. While much less popular than MP3, its sustainability is currently maintained by it being the default
Apple iTunes codec, the media player which inter-operates with the
iPod, the market leading digital audio player.
[5] Furthermore, the
iTunes Store, whose sales account for 85% of the market for legal online downloads in the US,
[6] sells AAC-encoded songs (mostly encapsulated within
FairPlay Digital Rights Management).
Products that support AAC
Hardware
iTunes and iPod
In April 2003,
Apple Computer brought mainstream attention to AAC by announcing that its
iTunes and
iPod products would support songs in MPEG-4 AAC format (via a
firmware update for older iPods). Customers could download music in a proprietary
Digital Rights Management (DRM)-restricted form of AAC (see
FairPlay) via the
iTunes Store or create files without DRM from their own CDs using iTunes. In later years, Apple began offering music videos and movies, which also use AAC for audio encoding and are encoded using FairPlay. Apple has often attributed the proprietary nature of Fairplay-encoded files to demands by major record labels for copy protection.
On May 29, 2007, Apple began selling songs and music videos free of DRM from participating record labels, starting with
EMI. While these files mostly adhere to the AAC standard and are playable on many non-Apple products, they do include custom iTunes information such as album artwork and a purchase receipt. Along with a significantly higher bit rate, these DRM-free tracks are promoted under the brand “iTunes Plus”.
Apple added support for "Variable bit rate" (VBR), which encodes AAC tracks in "Average bit rate" (ABR) in iTunes v5.0 and above. It also added certain enhancements in higher-end iPods such as chapters (bookmarks that can incorporate web links and pictures set to appear at certain times during playback of audio books and podcasts) which are not features of AAC itself, but of the proprietary Apple file format that wraps the AAC bitstream.
Apple has still not added support for AAC+ which is fully part of the MP4 standard or proper VBR encoding to iTunes (April 2007)
Other Portable Players
★ '
Microsoft Zune': Microsoft’s Zune portable media player supports AAC among other audio and video formats.
★ '
Creative Zen':The ZEN portable media player was announced on August 29, 2007 and this is the first
Creative Technology Player to support AAC format.
★ '
SanDisk Sansa e200R': The new
Rhapsody-branded SanDisk Sansa e200R series contains updated firmware allowing for support and playback of
MP4,
M4A, and
RealAudio, using the AAC codec.
★ '
Sony PlayStation Portable (PSP)': The PSP has had support for MP4 AAC files since the version 2.0 firmware update (released August 2005), but initially for files with a
.mp4 extension only, meaning
.m4a files needed to be renamed. This was fixed in the 2.7 firmware update.
★ '
Sony Walkman (Walkman)': The Walkman S series of MP3 players can use AAC encoded files. Older series may be able to add support with a firmware update.
Sony PlayStation 3
With the launch of the
PlayStation 3 (
November 11,
2006),
Sony announced support for the AAC format for music (MPEG-4 AAC) and video with AAC audio. This allows for easy interoperability with the
PSP system that supports AAC already. 128 kbit/s AAC is the default format for audio CDs imported to the PS3 hard disk.
[7]
Microsoft Xbox 360
To listen to music files encoded in the AAC audio format, an Xbox 360 console will need the AAC codec (a processing file), which is available as a free download from Xbox Live Marketplace. Optional iPod Support or Optional Media Center Codec is the file required to play an iPod with the Xbox.
Mobile phones
For a number of years, many mobile phones from manufacturers such as
Nokia,
Motorola,
Samsung,
Sony Ericsson,
BenQ-Siemens and
Philips have supported AAC playback. The first such phone was the
Nokia 5510 released in 2002 which also plays MP3s. However this phone was a commercial failure and such phones with integrated music players did not gain mainstream popularity until 2005 when the trend of having AAC as well as MP3 support continued. Most new smartphones and music-themed phones support playback of these formats.
★ '
Apple's
iPhone supports AAC and
FairPlay protected AAC files used as the default encoding format in the iTunes store.
★ '
Sony Ericsson' phones support various AAC formats in MP4 container. AAC-LC is supported in all phones beginning with
K700, phones beginning with
W550 have support of HE-AAC. The latest devices such as the
P990,
K800 and later support HE-AAC v2.
★ '
Nokia Nseries' and other Nokia multimedia phones: also support AAC format.
★ '
BlackBerry': RIM’s latest series of Smartphones such as the 8100 ("Pearl") and 8800 support AAC.
★ The 'Samsung SGH-X630' plays AAC only as raw files and refuses to play when AAC is wrapped in the MP4 container. It plays LC files as well as HE-AAC and HE-AAC v2 files.Also the d807x only allows for the use of .aac.dm files as ringtones.
Other Devices
★ '
Palm OS PDAs': Many Palm OS based PDAs and smartphones can play AAC and HE-AAC with the 3rd party software
Pocket Tunes. Version 4.0, released in December 2006, added support for native AAC and HE-AAC files. The AAC codec for
TCPMP, a popular video player, was withdrawn after version 0.66 due to patent issues, but can still be downloaded from sites other than corecodec.org. CorePlayer, the commercial follow-on to TCPMP, includes AAC support. Other PalmOS programs supporting AAC include Kinoma Player and AeroPlayer.
★ '
Microsoft Windows Mobile' platforms support AAC either by the native
Windows Media Player or by third-party products (TCPMP, CorePlayer)
★ '
Epson' supports AAC playback in the
P-2000 and
P-4000 Multimedia/Photo Storage Viewers. This support is not available with their older models, however.
★ '
Vosonic' supports AAC recording and playback in the VP8350, VP8360 and VP8390 MultiMedia Viewers.
★ The '
Sony Reader' portable eBook plays M4A files containing AAC, and displays metadata created by iTunes. Other Sony products, including the A and E series Network Walkmans, support AAC with firmware updates (released May 2006). While the S series supports it out of the box.
★ Nearly every major car stereo manufacturer offers models that will playback .m4a files recorded onto CD in a data format. This includes
Pioneer,
Sony,
Alpine,
Kenwood,
Clarion,
Panasonic, and
JVC.
★ The '
Sonos Digital Media Player' supports playback of AAC files.
★ The 'Roku
SoundBridge' network audio player supports playback of AAC encoded files.
Software
The
Rockbox Open source firmware (available for multiple portable players) also offers support for AAC to varying degrees, depending on the model of player and the AAC profile.
Optional iPod Support (playback of unprotected AAC files) for the
Xbox 360 is available as a free download from
Xbox Live.
[8]
Other software media players
Almost all current computer media players include built-in decoders for AAC, or can utilize a
library to decode it. On
Microsoft Windows,
DirectShow can be utilized this way with the corresponding filters to enable AAC playback in any
DirectShow based player.
Software player applications of particular note include:
★
ffdshow is a free
open source DirectShow filter for
Microsoft Windows operating systems that uses FAAD2 to support AAC decoding
★
foobar2000 is a
freeware audio player for
Windows that supports LC and HE AAC
★
Winamp for
Windows, which includes an AAC encoder that supports LC and HE AAC;
★
Songbird (software) for
Windows Linux Apple Macintosh, which is based on I-Tunes that supports AAC encoder, including the DRM rights management encoding used for purchased music from the I-Tunes store.
★
MPlayer or
xine are often used as AAC decoders on
Linux
★
RealPlayer includes
RealNetworks’s RealAudio 10 AAC encoder
★ Another Real product,
Rhapsody supports the RealAudio AAC codec, in addition to offering subscription tracks encoded with AAC.
★
VLC media player supports playback of MP4 and AAC files
★
Media Player Classic
★
XBMC ('XB'ox 'M'edia 'C'enter) supports both AAC (LC and HE) on modified
Xbox game-consoles.
★
KSP Sound Player also supports AAC
★
Sony SonicStage also support AAC in the version 4,
★
The KMPlayer also supports AAC
★
XMMS supports mp4 playback using a plugin provided by the faad2 library.
★
ConvertDirect.com serves AAC Files using Youtube Video conversion. It converts Youtube video to AACs.
Some of these players (e.g., foobar2000, Winamp, and VLC) also support the decoding of raw or MP4-contained AAC streamed over HTTP using the
SHOUTcast protocol. Plug-ins for Winamp and foobar2000 enable the creation of such streams.
Nero Digital Audio
In May 2006,
Nero AG released a free AAC encoding tool, ''Nero Digital Audio''
[3], which is capable of encoding LC, HE and HEv2 AAC streams. The tool is a
Command Line Interface tool only, and a separate utility is included to decode to PCM
WAV.
Various tools including the
foobar2000 audio player and
MeGUI can provide a
GUI for the encoder.
FAAC and FAAD2
FAAC and FAAD2 stand for Freeware Advanced Audio Coder and Decoder 2 respectively, collectively make up an open source implementation of AAC.
Extensions and improvements
Some extensions have been added to the original AAC standard:
★ 'Perceptual Noise Substitution (PNS)' – added in MPEG-4. It allows the coding of noise as
pseudorandom data.
★ '
MPEG-4 Scalable To Lossless (SLS)';
★ 'High Efficiency AAC (
HE-AAC)', a.k.a.
aacPlus v1 or AAC+ – the combination of
SBR (Spectral Band Replication) and AAC; used for low bitrates;
★ '
HE-AAC v2', a.k.a.
aacPlus v2 or
eAAC+ – the combination of
Parametric Stereo (PS) and HE-AAC; used for even lower bitrates;
★ 'Long Term Predictor (LTP)' – added in
MPEG-4.
See also
AAC Technology
★
AAC-LD
★
MPEG-4 container format
General Category
★
Audio data compression
★
Comparison of audio codecs
Related Technologies
★
MP3 (predates AAC, AAC is not backwards compatible with MP3 nor Musicam Layer II)
★
Musicam (predates MP3, MP3 adds a third compatible compression layer to Musicam Layer II)
★
Ogg (an open standard for a free container format for digital multimedia, unrestricted by software patents and designed for efficient streaming and manipulation)
Notes
1. http://www.soundexpert.info/
2. http://www.codingtechnologies.com/products/assets/CT_aacPlus_whitepaper.pdf
3. MPEG-4 Audio Licensing FAQ Q6 Via Licensing
4. MPEG-4 AAC License Fees Via Licensing
5. http://www.apple.com/pr/library/2006/jul/19results.html
6. http://www.appleinsider.com/article.php?id=1896
7. http://manuals.playstation.net/document/en/ps3/current/music/cdimport.html
8. http://www.xbox.com/en-US/support/systemuse/xbox360/digitalmedia/ipod.htm
External links
★
Apple's page on MPEG-4 AAC
★
EE Times article on AAC
★
Fraunhofer MPEG-2 AAC Information
★
AAC Licensing
★
Open Source AAC codec libraries FAAD2 ('F'ree 'A'dvanced 'A'udio 'D'ecoder) decoder and FAAC ('F'ree 'A'dvanced 'A'udio 'C'oding) encoder.
★
Roberto’s public listening tests – blind, controlled listening tests of lossy compression formats including AAC
★
Some facts about AAC – Excellent article discussing on some common misconceptions about the AAC encoding format.
★
mp3PRO vs MP3 - includes graphs comparing high-frequency performance for WMA/MP3/WAV