The term
joint stereo became prominent as the early
Internet allowed for the transfer of relatively low
bit rate, acceptable-quality audio with modest Internet access speeds. Joint stereo refers to any number of encoding techniques used for this purpose. Two forms are described here, both of which are implemented in various ways with different
codecs, such as
MP3,
AAC and
Ogg Vorbis.
Intensity stereo coding This form of joint stereo uses a technique known as
joint frequency encoding, which functions on the principle of
sound localization. Human hearing is predominantly less acute at perceiving the direction of certain audio frequencies. By exploiting this characteristic, intensity stereo coding can reduce the data rate of an audio stream with little or no perceived change in apparent quality. More specifically, the dominance of
inter-aural time differences for sound localization by humans is only present for lower frequencies. That leaves
inter-aural amplitude differences as the dominant location indicator for higher frequencies (the cutoff being ~2 kHz). The idea of intensity stereo coding is to merge the lower spectrum into just one channel (thus reducing overall differences between channels), and to transmit a little side information about how to
pan certain frequency regions to recover the amplitude difference cues. ITD is not lost completely in this scheme however, the shape of the ear makes it such that, the ITD can be recovered from IAD if the sound comes from free space; i.e. played through loudspeakers, not headphones. This type of coding does not perfectly reconstruct the original audio because of the loss of information which results in the simplification of the
stereo image and can produce perceptible
compression artifacts. However, for very low bit rates this type of coding usually yields a gain in perceived quality of the audio. It is supported by many audio compression formats (including
MP3,
AAC,
Vorbis and
Opus) but not always by every encoder.
M/S stereo coding M/S stereo coding transforms the left and right channels into a mid channel and a side channel. The mid channel is the sum of the left and right channels, or M = L+R. The side channel is the difference of the left and right channels, or S = L-R. Unlike intensity stereo coding, M/S coding is a special case of
transform coding, and retains the audio perfectly without introducing artifacts.
Lossless codecs such as
FLAC or
Monkey's Audio use M/S stereo coding because of this characteristic. To reconstruct the original signal, the channels are either added L = \frac{M + S}{2} or subtracted R = \frac{M - S}{2}. This form of coding is also sometimes known as matrix stereo and is used in many different forms of
audio processing and recording equipment. It is not limited to digital systems and can even be created with passive audio
transformers or analog
amplifiers. One example of the use of M/S stereo is in
FM stereo broadcasting, where L+R
modulates the
carrier wave and L-R modulates a
subcarrier. This enables backwards compatibility with mono equipment, which will only require the mid channel. Another example of M/S stereo is the
stereophonic microgroove record. Lateral motions of a stylus represent the sum of two channels and the vertical motion represents the difference between the channels; two perpendicular coils mechanically decode the channels. M/S is also a common technique for production of stereo recordings. See . M/S encoding does not strictly require that the left and right channels use the same weight. In Opus CELT, M/S encoding is combined with an angle parameter, so that different weights can be used to maximize de-correlation. A similar form of joining multiple channels is seen in the
ambisonics implementation of Opus 1.3. A matrix may be used to mix the spherical harmonic channels together, reducing redundancy.
Parametric stereo Parametric stereo is similar to intensity stereo, except that parameters beyond the intensity difference is used. In the MPEG-4 (
HE-AAC) version, the intensity difference and time delay difference are used, allowing all bands to be used without hurting localization. HE-AAC also adds "correlation" information, which replicates ambience by synthesizing some difference between channels. Binaural Cue Coding (BCC) is the HE-AAC PS technique extended for many input channels, all downmixing into one. The very same ILD, ITD, and IC parameters were used.
MPEG Surround is similar to BCC, but allows downmixing to multiple channels, and does not seem to use ITD. ==Implementations==