aboutsummaryrefslogtreecommitdiffstats
path: root/libtoolame-dab/html/changes.html
diff options
context:
space:
mode:
Diffstat (limited to 'libtoolame-dab/html/changes.html')
-rw-r--r--libtoolame-dab/html/changes.html107
1 files changed, 107 insertions, 0 deletions
diff --git a/libtoolame-dab/html/changes.html b/libtoolame-dab/html/changes.html
new file mode 100644
index 0000000..544ad7b
--- /dev/null
+++ b/libtoolame-dab/html/changes.html
@@ -0,0 +1,107 @@
+<html>
+<head>
+<title>tooLAME changes</title>
+<style>
+<!-- BODY { BACKGROUND: #FFFFFF; COLOR: #000000; FONT-SIZE: 10pt; FONT-FAMILY: verdana, sans-serif }
+ A { COLOR: #111177; TEXT-DECORATION: none }
+ TD { font-size: medium; font-weight:normal }
+--!>
+</STYLE>
+</head>
+<body>
+<table border = 0 width="75%" align="center"><tr><td>
+<h1>TooLAME 02l - 2 March 2003</h1>
+<UL>
+<LI> <b>Major psychoacoustic model overhauls</b>
+<UL>
+ <LI> For more detail, see <a href="psycho.html">psycho models</a>
+ <LI> <b>Psychoacoustic Model 3</b>
+ <UL>
+ <LI> Psycho3 is a reimplementation of the psychoacoustic model 1 from the
+ ISO standard. Pretty much totally rewritten from the ground up, following the nomenclature of the ISO standard.
+ <LI> Uses arrays for keeping tone/noise labels rather than the really
+ hard to grok pointer-stuff from the dist10 code.
+ <LI> Uses Painter + Spanias' Formula for the ATH rather than the tables from the standard.
+ <LI> Uses LAME's freq-to-bark conversion to construct the critical bands.
+ <LI> Future: Needs a proper geometric mean for weighting the noise. Needs one more function added to the decimation routines which would eliminate maskers within 0.5 dB of each other.
+ <LI> Eliminated all the ISO/dist10 tables. Everything is from equations or built from scratch.
+ </ul>
+ <LI> <b>Psychoacoustic Model 4</b>
+ <UL>
+ <LI> A reimplementation of psychoacoustic model 2.
+ <LI> Eliminated all the ISO/dist10 tables. Everything (ath, bark, critical bands) is from equations or built from scratch
+ <LI> FUTURE: For psycho model 2 and 4 there's some really bad "warbling" and "Davros" type noise. Depending on the loudness of your sound sample, this can get really annoying. I don't know where it's coming from.
+ </ul>
+ <LI> <b>Psychoacoustic Model 0</b>
+ <UL>
+ <LI> This model uses the ATH and the scalefactors for each subband to build an approximate SMR for each subband at nearly zero cost.
+ <LI> Based upon an idea mentioned in "Low power mpeg/audio encoders using simplified psychoacoustic model and fast bit allocation" by Hyen-O Oh et al.
+ <LI> For the amount of effort that this psycho model puts in, the results are pretty good.
+ <LI> Future: Add some parameters to the equation to allow it to be tweaked on the fly.
+ </UL>
+ <LI> <b>Psychoacoustic Model -1</b>
+ <UL>
+ <LI> This is the old "fast" psychoacoustic model ("-f").
+ <LI> All it does is copy over a static set of pre-calculated SMR values
+ <LI> Sounds OK for most stuff.
+ </UL>
+</UL>
+<LI> <b>New bitstream encoding routines (encode_new.c)</b>
+<UL>
+ <LI> All the old tables.c/alloc_table stuff is now superfluous.
+ <LI> All tables are now at the top of encode_new.c
+ <LI> The tables have quite a bit of indirection to get to the value that you need (but really not any more indirection than the old alloc_table stuff). Probably need to add some more docs to say what's going on.
+ <LI> These new routines are the default, but you can remove the "NEWENCODE" definition and use the old ones (just in case).
+ <LI> The new routines will become the default in the next release.
+</UL>
+<LI> <b>More speed</b>
+<UL>
+<LI> All the trig stuff for psychomodel 4 is now done with tables instead of calculating exact values.
+<LI> The <i>exact</i> trig values aren't really used directly in the encoder. They're sort of averaged over a couple of iterations and used as a predictor of uncertainty. So being off a few thousandths won't really affect anything.
+</UL>
+</UL>
+<HL>
+<h1>TooLAME 02k - 16 February 2003</h1>
+<UL>
+<LI> Some great speedups with a combined filtersubband and windowsubband (Ricardo Schelp ricardoschelp at arnet.com.ar)
+<LI> Cleaned up the psycho model calling (should be easier to add your own psycho
+model if you felt like having a hack)
+<LI> DAB Extensions are now of variable length controlled by an argument to the -D switch
+ (Nicolas Croiset - ncroiset at vdl.fr)
+<LI> Fixed raw PCM reading to no longer miss the first 40 bytes. (MFC)
+<LI> No longer a 4GB limit when reading from stdin (or if your filesys supports) (Nicolas)
+<LI> Tweaks to the end of the bitstream to allow concatentation of mp2 files (Nicolas)
+<LI> Finally (?) fixed the segfaults using psy model 1 (Nicolas et al)
+</ul>
+<HL>
+<h1>TooLAME 02j - 12 Feb 2003</h1>
+<UL>
+<LI>Definitely LGPL now.
+
+<LI>encode.c - VBR mode has been stabilised to work correctly for all sampling frequencies (<a href="vbr.html">README.VBR</a> has more details)
+
+<LI>get_audio.c has become audio_read.c - cleaned up that really dodgy wave header parsing.
+(thanks to Philippe Jouguet - philippe.jouguet at vdl.fr and Henrik Herranen - leopold at vlsi.fi)
+
+<LI>spelling fix for 'extension' - Philippe again
+
+<LI>psycho_I.c - Speedup for "% 1408" calcs "-DSAMI_P1" sami.sallinen at g-cluster.com
+ (about 4% overall speedup for me)
+
+<LI>subband.c - Pointer arithmetic for filter subband "-DSAMI_SB" (sami again)
+ (doesn't give any advantage over gcc3.2 on my system)
+
+<LI>psycho_II.c
+<UL>
+ <LI> enabled the use of gcc's _sincos(). "-DSINCOS -D_GNU_SOURCE"
+ about a 5% overall speed-up in encoding (Philippe again)
+ <LI> added the LSF frequencies so that you can use psy model 2 with LSF (good old Philippe)
+</UL>
+<LI>verbosity - added a '-t' flag to set the 'talkativity' level needed for transcode plugin (Andreas neukoetter - anti at webhome.de)
+
+<LI>toolame.c - LSF files should now select a valid default bitrate by default. (96kbps)
+
+</li>
+</tr></td>
+</body>
+</html>