|
Packit |
47f805 |
|
|
Packit |
47f805 |
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
Packit |
47f805 |
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
Packit |
47f805 |
<head>
|
|
Packit |
47f805 |
<meta name="generator" content="PSPad editor, www.pspad.com" />
|
|
Packit |
47f805 |
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
|
Packit |
47f805 |
<link rel="stylesheet" type="text/css" href="styles/lame.css" />
|
|
Packit |
47f805 |
<title>LAME MP3 Encoder :: Mid/Side Stereo</title>
|
|
Packit |
47f805 |
</head>
|
|
Packit |
47f805 |
<body>
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
Index page
|
|
Packit |
47f805 |
About LAME
|
|
Packit |
47f805 |
Intro to encoding
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
CBR
|
|
Packit |
47f805 |
ABR
|
|
Packit |
47f805 |
VBR
|
|
Packit |
47f805 |
M/S Stereo
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
Usage of LAME
|
|
Packit |
47f805 |
Version history
|
|
Packit |
47f805 |
Coders of LAME
|
|
Packit |
47f805 |
Contact LAME
|
|
Packit |
47f805 |
LAME links
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
![LAME Official Logo](images/logo.gif)
|
|
Packit |
47f805 |
LAME - Mid/Side Stereo
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
During years, what is called Joint-stereo has been misunderstood.
|
|
Packit |
47f805 |
Joint stereo in MP3 is a mechanism to selectively choose between three modes
|
|
Packit |
47f805 |
of storing stereo information. These three modes are Simple Stereo
|
|
Packit |
47f805 |
, Mid-Side Stereo, and Intensity-Stereo.
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
In Simple Stereo, the encoder analyzes the left and the right channels
|
|
Packit |
47f805 |
independently and stores the information as-is, without further checking the
|
|
Packit |
47f805 |
similarities in the signal<sup>1</sup>
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
In Mid-Side Stereo, the encoder analyzes the left, right<sup>2
|
|
Packit |
47f805 |
</sup>, mid (l+r) and side (l-r) channels. It then gives more bits to the
|
|
Packit |
47f805 |
mid than the side channel (as usually the side channel is less complex) and then
|
|
Packit |
47f805 |
stores just the mid and side channels into the resulting MP3.
|
|
Packit |
47f805 |
This way, the mid channel can be encoded as if the frame was bigger, and as such
|
|
Packit |
47f805 |
have more quality with the same bitrate.
|
|
Packit |
47f805 |
Note: Mid/side in MP3 is switched frame-by-frame. In AAC, it can be switched
|
|
Packit |
47f805 |
band by band.
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
Intensity-Stereo (not supported in LAME) uses a technique known as joint
|
|
Packit |
47f805 |
frequency encoding, which is based on the principle of sound localization.
|
|
Packit |
47f805 |
Human hearing is predominantly less acute at perceiving the direction of certain
|
|
Packit |
47f805 |
audio frequencies. By exploiting this 'limitation', intensity stereo coding can
|
|
Packit |
47f805 |
reduce the data rate of an audio stream with little or no perceived change in
|
|
Packit |
47f805 |
apparent quality.
|
|
Packit |
47f805 |
It works by merging the upper spectrum into just one channel (thus reducing
|
|
Packit |
47f805 |
overall differences between channels) and transmiting a little side information
|
|
Packit |
47f805 |
about how to pan certain frequency regions.
|
|
Packit |
47f805 |
This type of coding does not perfectly reconstruct the original audio because
|
|
Packit |
47f805 |
of the loss of information and can cause unwanted artifacts. However, for very
|
|
Packit |
47f805 |
low bitrates this tool usually provides a gain of perceived quality.
|
|
Packit |
47f805 |
<sup>3</sup>
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
The LAME mid/side switching criterion, and mid/side masking thresholds are
|
|
Packit |
47f805 |
taken from Johnston and Ferreira, <u>Sum-Difference Stereo Transform
|
|
Packit |
47f805 |
Coding,</u> Proc. IEEE ICASSP (1992) p 569-571.
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
The MPEG AAC standard claims to use mid/side encoding based on this paper.
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
This is not the same than dual-mono. Dual-mono should be
|
|
Packit |
47f805 |
used where the left and right channels of the input file contain two different
|
|
Packit |
47f805 |
streams, where you should choose one (as in two different languages)
|
|
Packit |
47f805 |
If one channel has much less noise masking in a certain
|
|
Packit |
47f805 |
band than the other, it could happen than the noise spread (by mid/side stereo)
|
|
Packit |
47f805 |
may no longer be masked for that channel. If both channels have the same
|
|
Packit |
47f805 |
masking, then the noise spread between both channels will be equally well masked.
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
To prevent this from happening, there is an analysis done on the left and right
|
|
Packit |
47f805 |
channel to determine the noise masking thresholds and properly mask the noise.
|
|
Packit |
47f805 |
Quote from wikipedia
|
|
Packit |
47f805 |
href="http://en.wikipedia.org/wiki/Joint_stereo">Joint_stereo.
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
alt="Get LAME (Lame Aint an MP3 Encoder) at SourceForge.net. Fast, secure and Free Open Source software downloads"
|
|
Packit |
47f805 |
border="0" height="30" width="120" />
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
alt="Valid XHTML 1.0 Transitional" border="0" height="31" width="88" />
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
alt="Valid CSS!" border="0" height="31" width="88" />
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
HTML markup and design by
|
|
Packit |
47f805 |
href="http://www.rjamorim.com" target="_blank">Roberto Amorim and
|
|
Packit |
47f805 |
href="http://www.maresweb.de" target="_blank">Sebastian Mares. Logo by
|
|
Packit |
47f805 |
href="http://www.brightercreative.co.uk">Sam Fisher.
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
|
|
Packit |
47f805 |
</body>
|
|
Packit |
47f805 |
</html>
|