# ATRAC

Adaptive Transform Acoustic Coding (ATRAC) is a family of proprietary audio compression algorithms developed by Sony. MiniDisc was the first commercial product to incorporate ATRAC, in 1992. ATRAC allowed a relatively small disc like MiniDisc to have the same running time as CD while storing audio information with minimal perceptible loss in quality. Improvements to the codec in the form of ATRAC3, ATRAC3plus, and ATRAC Advanced Lossless followed in 1999, 2002, and 2006 respectively.
Files in ATRAC3 format originally had the .aa3 extension; however, in most cases, the files would be stored in an OpenMG Audio container using the extension .oma. Previously, files that were encrypted with OpenMG had the .omg extension, which was replaced by .oma starting in SonicStage v2.1. Encryption is no longer compulsory as of v3.2.
Other MiniDisc manufacturers such as Sharp and Panasonic also implemented their own versions of the ATRAC codec.

## History

ATRAC was developed for Sony's MiniDisc format. ATRAC was updated with version 2, then version 3, version 4, version 4.5, and Type R and Type S.
The first major update was ATRAC3 (not to be confused with version 3 of original ATRAC) in 1999. ATRAC3 was used on MiniDisc as well as the Network Walkman and Vaio Music Clip. ATRAC3plus launched in 2003 for Hi-MD, but was also compatible with some PlayStation, VAIO and Xplod devices.
On 31 March 2008 Sony all but dropped the ATRAC-related codecs in the United States and Europe, and in their SonicStage powered Connect Music Store (Sony's equivalent of iTunes and iTunes Music Store). This was partly due to low adoption of the format, with a source claiming that 90% of European Walkman users did not use ATRAC. Walkman digital players outside Japan no longer worked with ATRAC after September 2007.
Until 1 October 2012, ATRAC was the only codec available to download music from mora until they transitioned to a DRM free model and began offering FLAC files the next year.
ATRAC9 was designed for PlayStation audio and debuted with the PlayStation Vita.

## Bitrate quality

ATRAC's 292 kbit/s bitrate used on the original MiniDiscs was designed to be near to CD audio quality. Years later ATRAC was improved over earlier versions at similar bitrates. For comparison, CDs are encoded at 1411.2 kbit/s, and lossless encoders can encode most CDs below 1000 kbit/s, with further bitrate reduction for easier-to-encode content such as voice.

## Performance

ATRAC algorithms were developed in close cooperation with LSI integrated circuit development engineers within Sony in order to deliver a product that could encode at high speeds and with minimal power consumption. This contrasts with other codecs developed on computers without regard for the constraints of portable hardware. This is reflected in the design of the ATRAC codecs, which emphasize processing smaller groups of samples at a time to save memory at the cost of compression efficiency and additional multiplies. These trade-offs are logical for DSP systems, where memory was often at a premium compared to multiplier performance.
Sony Walkmans offer better battery life when playing ATRAC files than when playing MP3 files. However, as Sony only pushed ATRAC compatibility in Sony Ericsson Walkman series phones in the Japanese market, it is not supported in GSM/UMTS market phones. Sony's Xplod series of car audio CD players support ATRAC CDs. Minidiscs with ATRAC format songs have, in the past, been supported on Eclipse brand car stereos.

## Formats
### ATRAC (1) (versions 1.0–4.5, Type R/S)

ATRAC1 was first used in Sony's own theater format SDDS system in the 1990s, and in this context is a direct competitor to Dolby Digital (AC3) and DTS. SDDS uses ATRAC1 with 8 channel encoding, and with a total encoding rate over all the channels of 1168 kbit/s.
Two stacked quadrature mirror filters split the signal into 3 parts:
* 0 to 5.5125 kHz
* 5.5125 to 11.025 kHz
* 11.025 to 22.05 kHz
Full stereo (i.e., independent channel) encoding with a data rate of 292 kbit/s.
High-frequency lowpass depends on the complexity of the material; some encodings have content clear up to 22.05 kHz.
ATRAC1 can also be used in mono (one channel) mode, doubling recording time.
FFmpeg has an implementation of an ATRAC1 decoder.

### ATRAC3 (LP2 and LP4 Modes)

Like ATRAC1 and MP3, ATRAC3 is also a hybrid subband-MDCT encoder, but with several differences.
In ATRAC3, Three stacked QMF split the signal into 4 parts:
* 0 to 2.75625 kHz (DC to f/16)
* 2.75625 to 5.5125 kHz (f/16 to f/8)
* 5.5125 to 11.025 kHz (f/8 to f/4)
* 11.025 to 22.05 kHz (f/4 to f/2)
The four subbands are then MDCT encoded using a fixed-length transform. Unlike nearly all modern formats, the transform length cannot be varied to optimize coding transients. Instead, a simpler transient encoding technique called gain control is used, in which the gain of different subbands is varied during a transient prior to MDCT and then restored during decoding after the inverse MDCT to try to smooth over transients. Additionally, prior to quantization, tonal components are subtracted from the signal and independently quantized. During decoding, they are separately reconstructed and added back to reform the original MDCT coefficients.
Sony claims the major advantage of ATRAC3 is its coding efficiency, which was tuned for portable DSP which provides less computing power and battery life. However, as ATRAC is a hybrid subband-MDCT codec that is algorithmically very similar to MP3, any advantage is probably exaggerated. Compared to newer formats such as Ogg Vorbis which use a simple MDCT rather than a hybrid, ATRAC3 must perform an additional computationally expensive inverse-QMF, although the hybrid system significantly reduces memory usage, which was likely a factor given the limited memory available when ATRAC was first developed.

#### LP2 Mode

This uses a 132 kbit/s data rate, the quality of which is advertised to be similar to that of MP3 encoded at a similar bit rate. However, in an independent double-blind test (2004/05) without format encoding parameters reference against Ogg Vorbis, AAC, and LAME VBR MP3, ATRAC3 came last.

#### LP4 Mode

This reduces the data rate to 66 kbit/s (half that of LP2), partly by using joint stereo coding and a lowpass filter around 13.5 kHz. It allows 324 minutes to be recorded on an 80-minute MiniDisc, with the same padding required as LP2.

#### Notes

FFmpeg has an implementation of an ATRAC3 decoder, which was converted to fixed precision and implemented in the Rockbox series of firmware for ARM, Coldfire and MIPS processors. RealAudio8 is a high-bitrate implementation of ATRAC3 (up to 352.8kbit/s). Atracdenc is an open source implementation of ATRAC3 compatible encoder which also can use RealAudio container.
The PlayStation 3 video game Race Driver: Grid uses 224 simultaneous streams of ATRAC3 compressed audio, with between one and eight channels per stream at sample rates between 24 and 48 kHz, each filtered using 512 frequency bands of adaptive equalisation, routed via six reverb units running on the same SPU co-processor (one of eight on the PS3's Cell chip), alongside 7.1 channel hybrid third-order Ambisonic mixing.

### ATRAC3plus

This codec is used in Sony Hi-MD Walkman devices (e.g., "Hi-LP and Hi-SP"), Network Walkman players, Memory Stick players, VAIO Pocket, PS3 and PSP console, and ATRAC CD players. It is a hybrid subband/MDCT codec based on a 16 channel QMF followed by a 128-point MDCT. Prior to MDCT coding, Generalized Harmonic Analysis (GHA) is used to extract tonal components, an improved version of the process used in ATRAC3. As in previous ATRAC versions, gain control is used to control preecho rather than variable sized transforms, although different MDCT windows are apparently possible.
SonicStage version 3.4, released in February 2006, introduced ripping CDs in bitrates 320 and 352. The available bitrates are: 48, 64, 96, 128, 160, 192, 256, 320 and 352 kbit/s. The newer bitrates are not always compatible with all older hardware decoders, however, some of the older hardware has been found to be compatible with certain newer ATRAC3plus bitrates.
MiniDiscs recorded in this format are incompatible with older players.
In a test conducted by an independent firm, but financed by Sony, it was concluded that ATRAC3plus at 64 kbit/s is equal in subjective sound quality to an obsolete MP3 encoder at 128 kbit/s. Performance against modern high quality MP3 encoders was not evaluated.

### ATRAC Advanced Lossless

ATRAC Advanced Lossless is a "scalable" lossless audio codec that records a lossy ATRAC3 or ATRAC3plus stream, and supplements it with a stream of correction information stored within the file itself that allows the original signal to be reproduced, if desired. A player/decoder can extract and use just the ATRAC3 or ATRAC3plus data, or it can combine that with the correction stream to perfectly reproduce the original audio information. This allows the file to be decoded as either lossless or lossy. It is implemented in such a way that allows the file size to be smaller than uncompressed or compressed versions of the same file. Compression is approximately 30–80% of the original file. Benefits of scalable compression include providing backward compatibility, such that older devices that are not AAL-aware can still have the ATRAC3 stream available for playback without understanding the AAL format, and faster transfer speed between portable audio devices and PC.
ATRAC Advanced Lossless is widely supported in older Walkman players and SonicStage version 4 or later. SonicStage 4 allows download of ATRAC Advanced Lossless to MiniDisc Players, PlayStation Portable, and PlayStation 3. Recent Walkman players do not support ATRAC Advanced Lossless/ATRAC.
AAL's use of a "core" (lossy) and "residual" (correction) stream is similar to the idea behind Opus, MPEG-4 SLS, DTS-HD Master Audio, Dolby TrueHD and Ogg Vorbis bitrate peeling. In fact, AAL was the first to be released in the commercial market with this scheme for backward compatibility.
WavPack hybrid mode and OptimFROG DualStream are in the same category, but store the correction stream in a separate file.

### ATRAC9

According to Sony ATRAC9 is a high-compression audio codec optimized for games, offering low delay (granularity) and low CPU and memory usage. It is used in the PS5, PS4 and PS Vita consoles. Audio middleware such as FMOD and Audiokinetic Wwise supports it.
FFmpeg has an implementation of an ATRAC9 decoder.