Help - Search - Members - Calendar
Full Version: lame 3.96.1 - new ATH type
Hydrogenaudio Forums > Lossy Audio Compression > MP3 > MP3 - Tech
Zenzile
hi,

first sorry for bad english...

I noticed that the 3.96.1 version of lame uses ATH type 4 by default, the olders versions used ATH type 2 by default.

i understand that ATH means 'Absolute threshold of hearing' and it means that whats encoded will only be frequencies that humans can hear.

but why they have decided to use 4 as the default if 2 is supposed to be optimal in olders versions ?

and what's the difference between all types ? (1 to 5)

thank's for all answer smile.gif
Zenzile
i just find this in the "Full command line switch reference" :

QUOTE
* --athtype 0/1/2    select ATH type
The Absolute Threshold of Hearing is the minimum threshold under which humans are unable to hear any sound. In the past, LAME was using ATH shape 0 which is the Painter & Spanias formula. Tests have shown that this formula is innacurate for the 13-22 kHz area, leading to audible artifacts in some cases. Shape 1 was thus implemented, which is over sensitive, leading to very high bitrates. Shape 2 formula was accurately modelized from real data in order to real optimal quality while not wasting bitrate. In CBR and ABR modes, LAME uses ATH shape 2 by default.
In VBR mode, LAME is adapting its shape according to the -V value, going gradually from the 0 shape at -V9 up to shape 2 at -V0.


a mp3 encode with this command line :

--abr 128 -m j -q2

EncSpot says that the ATH type is 4, is this a lame bug ? encspot bug ? Zenzile bug ? other ?
music_man_mpc
The encoder has changed in a wide variety of ways since the older versions asking why one or two different variables have changed since 3.90.3 is meaningless. The default settings for the --alt-presets in 3.90.3 would produced very different results in 3.96.1 due to developments in the code, not to mention sub-optimal results.
music_man_mpc
QUOTE (Zenzile @ Feb 8 2005, 12:57 PM)
a mp3 encode with this command line :

--abr 128 -m j -q2

EncSpot says that the ATH type is 4, is this a lame bug ? encspot bug ? Zenzile bug ? other ?
*

#1. I believe that --abr 128 should produce the same files as --preset 128, but if not --preset 128 will be a better choice. If they are the same then -m j is default and you need not add it to your command line.

#2. If -q2 is not the default for --preset 128 it is probably sub-optimal so just use --preset 128.

#3. Encspot isn't perfect, but be it right or wrong the default ATH is almost certainly perferrable, just leave the presets alone.

#4. If you don't mind using VBR -V5 --athaa-sensitivity 1 will produce better quality at ~128kbit/s. --athaa-sensitivity 1 is used because of a bug in LAME 3.96.1 by the next version adding this switch will probably reduce quality, but for now it is better.
Zenzile
ok thank's for your answer smile.gif

don't you think it could be an error made by the developpers ? I think that it would be better to ask us...

finally, what the switch "--athaa-sensitivity 1" do ?
Gabriel
Ath4 has a parameter to adjust its slopness, so it can take the shape of ath 0-3 from previous versions.
In current versions every ath curve is internally ran through the ath4 model, with different parameters.
So this is just a simplification in the code.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2009 Invision Power Services, Inc.