OK... here we go.
http://static.hydrogenaudio.org/extra/lame_dm_rev7.zip
http://static.hydrogenaudio.org/extra/lame_dm_rev7-src.zip
Just to summarize everything for people who may not have kept up on some of the massive threads in the past, here is what the current situation is:
1. --alt-preset normal is no more. I removed that. It's back to standard/extreme/insane now.
2. --alt-preset standard has been modified to include many of the changes or tweaks I learned from my experience with --alt-preset normal.
List of What's New in --alt-preset standard and which clips it helps or what it does:
- tweaked block switching thresholds (helps fatboy and florida_seq)
- --nsmsfix 2.13 is used now in addition to internal modifications to masking thresholds of mid-side channels. These two in combination allow for less ss frames (reduced bitrate) in situations which do not seem to need them as much and more where they are necessary (serioustrouble for example)
- added method to switch noise measuring functions on non-normal blocks (start, short, stop) (helps fatboy and other impulse samples)
- added method to switch noise shaping functions depending on athadjust (helps fatboy and other impulse samples)
- added --athlower -1 (decreases bitrate)
- changed --ns-sfb21 3 to --ns-sfb21 3.75 (decreases bitrate)
- changed lowpass to 19khz (decreases bitrate)
- What all this means? That --alt-preset is now lower in bitrate (competitive with --r3mix) and higher in quality than before.
Many of these changes are activated only with --dm-preset standard (appropriate tweaks will eventually propagate to all --alt-presets) as a switch, there are no external switches to turn them on and there will not be any added. The reason for this is because doing such a thing would add quite a few new experimental switches which really should be handled internally in the first place, not to mention most of these modifications are tuned right to the threshold, there's not much room for tweaking without further code level modifications.
Clips which are significantly improved over the old dm-standard include fatboy, ravebase, gbtinc, serioustrouble, and to some extent short.
Many clips now encode to a much lower bitrate with essentially identical quality.
Clips which --alt-preset standard significantly outperforms --r3mix on include:
amnesia
2nd_vent_clip
serioustrouble
death2
castanets
short
ravebase
gbtinc
florida_seq
fatboy
gekkou-intro
velvet
etc..
There a lot more, those are just the ones that come to me off the top of my head. As it stands right now I don't believe I know of any clip where --r3mix is even marginally better sounding anymore. Before --r3mix did a little better on fatboy due to some flaws in masking/noise shaping which I have now compensated for in the new mode.
As with --alt-preset normal, the theme stays basically the same:
- On heavily distorted clips like metal, this preset will often provide a lower bitrate (bitrate may be reduced even more, theres some stuff with the joint stereo that could possibly still be tweaked better).
- On quieter clips this preset should not dip as low, and on quiet clips with lots of transients (such as death2) this preset will scale upwards accordingly instead of sticking with too low of a bitrate.
This preset basically also shouldn't bloat on quieter samples to the degree that --alt-preset normal did. It also doesn't have ath problems -- try encoding the love.wav sample for example... solid frequency encoding all the way up to 16khz, which is higher than --r3mix's (13khz with some speckling upwards) and standard still manages to encode to a lower bitrate!
I'm including the source also, but keep in mind that parts of it are kind of hackish, certain command line settings are overridden internally (sometimes with hardcoded values) at the moment because I haven't had time to implement everything "properly" yet. This will not be the final source. Also, many of these changes seem a tad underwhelming considering how long in the making they have been but keep in mind that it's the tuning that's the hard part.. actually finding out where to make the changes and what actually works.
That's about all I can think of for now...
Oh one last thing.. I'm aware of certain people going back to using sine sweeps to test presets now and I just want to say that that's about the most foolish way to test for quality. In addition, designing presets around sine sweeps is even more pointless. Part of the problem with many of the sine sweeps people are using is that they induce clipping and contain frequencies of such high amplitude all the way to 22khz that they artificially induce artifacts. Udial.wav is a perfect example of this. These samples are totally pointless because you are never going to hear them in real music (the risk of blowing speakers out is too high for one, not to mention they hurt your ears). So if you see someone passing judgement on something based on a single sine sweep test alone, make sure to take that with a grain of salt.
All the presets I work on are tuned with a multitude of extremely difficult samples from real music. They come from all different styles from acoustic, to heavily distorted, to bizarre electronic, to classical and nearly everything in between.
The argument that sine sweeps may be representative of some fringe electronic music is flawed IMO because I happen to listen to quite a lot of the more unusual electronic music (autechre, two lone swordsmen, pan sonic, brume, v/vm, etc just to name a few) and I've never heard a sample like udial.wav or some of these clipping inducing sine sweeps in any of them. Just a bit of perspective there...
Anyway, enjoy the new preset (it might have some bugs but I think it's fairly solid). Feedback is appreciated as always. I'll try to come read and respond to posts here as much as I can but no guarantees on being able to answer rapidly or anything like that.