win32 executables for testing
LAME modifications
(These binary executables are compiled with
MinGW GCC 2.95.2 or 2.95.3,
and tested on Windows 98SE.)
LAME 3.90, December 22 (CVS)
3.90 release, compiled from the CVS repository.
(The original packaged 3.90 release was missing a file, "vbrquantize.h".)
Old tests:
Note the option "--adapt-thres-type" has been renamed to "--athaa-loudapprox",
and "--adapt-thres-level" has been renamed to "--athaa-sensitivity".
LAME 3.90, July 23 alpha 4 (CVS)
Increased effectiveness of the ATH auto-leveling on very quiet samples.
LAME 3.89, July 1 alpha 8 (CVS)
A bug was corrected in ATH auto-leveling with "--adapt-thres-type 1".
Auto-adjust regions have been retuned.
(The "--adapt-thres-type 2" option was defaulted sometime earlier.)
LAME 3.89, Mar 31 alpha 1 (CVS)
Added option to allow tuning the ATH auto-adjust region. For example,
use "--adapt-thres-level 3" to raise the point that the auto-adjust
takes effect by 3 dB, or "--adapt-thres-level -3" to lower the point
that the auto-adjust takes effect. This option applies to both adaptive
threshold adjustment types, 1 (default) and 2.
Use the command line option "--adapt-thres-type 2" to enable the
frequency-based loudness ATH auto-adjust.
LAME, Mar 12 alpha 10 (no modification from CVS)
LAME, Mar 12 alpha 10 with frequency-based loudness ATH adjust mod.
LAME, Mar 06 alpha 10 (no modification from CVS)
LAME, Mar 06 alpha 10 with continuous ATH mod. (revision c),
plus 32 peak samples per channel loudness approx.
LAME, Feb 27 alpha 10 (no modification from
CVS)
LAME, Feb 27 alpha 10 with continuous ATH mod. (revision b)
LAME, Feb 27 alpha 10 with continuous ATH mod. (revision c),
plus 32 peak samples per channel loudness approx.
These modifications mainly affect VBR mode (-V1, -V2, ...)
custom LAME modifications
While this code has been moderately tested, and checked with a debugger
for the desired functionality, I may have overlooked something. Please
let me know if you have any suggestions or comments.
Mar 27 (integrated with the LAME CVS)
- The same as the Mar 20 ATH auto-adjust mod., but with a change to fix a
minor mismatch with the granule delay in the psymodel module.
Mar 20 source diff for
frequency-based loudness ATH adjust mod.,
and more aggressive ATH auto-adjust tuning
- The same as the Mar 12 frequency-based loudness ATH adjust mod., but with
with a shifted ATH auto-adjust curve, to better match the ATH auto-adjust
curve of the LAME CVS at the most sensitive frequencies (800 to 6000 Hz).
- This patch does not attempt to preserve the same bit rate as the LAME CVS,
but reduces it.
Mar 12 source diff for
frequency-based loudness ATH adjust mod.
- This mod. replaces the original flat loudness approximation used for
ATH auto-adjusting with a loudness approximation based on the model of
the ear's frequency sensitivity (already a part of LAME, the ATH).
- The power in each frequency band is weighted and combined to form the
loudness approximation.
The following continuous ATH mod. (revision c) is now part of the LAME CVS.
Feb 27 source diff for
continuous ATH adjust mod. (revision c)
- Revision b, tuned for the combination with the 32 peak sample per channel
loudness approximation.
Feb 27 source diff for
continuous ATH adjust mod. (revision b)
- This mod. was originally based on creating a continous curve from
Gabriel's original step-wise auto-ATH adjustment. Revision b of this
code is tuned to begin ATH adjust lowering at loudness values below 0.5.
- The speed of the ATH adjust lowering varies, based on the loudness
approximation. At a 44.1 kHz sampling freq., the maximum speed is
a bit over -12 dB per second, at roughly -0.3 dB per frame. (This
dB calculation assumes that ATH adjust scales the ATH energy
per frame.)
- ATH adjust raising occurs at once after a delay of one frame,
unless the loudness falls in the next frame. Given such a fall,
the ATH adjust raising is diminished, or is canceled in favor
of a lowering. This behavior keeps a loud sound at the end of
a frame from disrupting the ATH adjust for a leading quiet
sound. The chance that a very brief loud sound will disrupt
the ATH adjust of an otherwise quiet signal is also reduced.
- Compared to the original code, ATH adjust is raised in a finer
fashion, as opposed to an all or nothing raise to 1.0.
Feb 27 source diff for
continuous ATH adjust mod.
- While this older revision better approximated Gabriel's original
stepped function in the integral sense, it lowered the ATH sooner
at higher loudness levels, resulting in larger file sizes.
Feb 27 source diff for
32 peak samples per channel loudness
approx.
- This mod. simply creates a loudness approximation based on the mean of
the top 32 samples per channel.
- Compared to the original code that only used one peak sample, this
code should better reject occasional sample glitches or stray peaks.
- This mod. also averages the loudness approximation for both channels,
instead of ignoring one (potentially much quieter) channel.
/
code/
audio/
Copyright © 2001 jodarom
-- last update: December 22, 2001