blob: ba53e4ad73268909a484e8b400881439ce5e6978 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
|
v0.1a - initial release (7 Nov 1998)
v0.1b - released 1 Oct 99
- filter subband and window subband from Lame3.x added
- cleaned up some memory stuff in psy.c
- a fast mode switch (-f) which turns off psychoacoustics
-instead of having the psymodel calculate SNR
just use a bunch of preset values. I just made up
some SNR values based upon my test file. These
could probably be tuned so that there's a set of SNR
values for rock, pop, classical, voice etc.
v0.1d - released 14 Oct 99
- cleaned up some code
- removed decoding source code (use mpg123 instead :)
- renamed subs.c to fft.c (which is mostly what it does :)
- moved the filter/window_subband into subband.c
- split encode.c into generic code (encode), LayerI code (encodeI)
and layerII code (encodeII)
- no longer use obtain_parameters(). interactive input is a pain
v0.1e - released 15 Oct 99
- cleaned up some code
- defaults to 192kbps, psy model 1 with extension mp2 (see encoder.h)
- added (-a) downmix to mono option (code in encode.c/get_audio() )
- transplanted FHT-based fft() from LAME.
- II_f_f_t() now calls fht(). heaps faster. (in tonal.c used by psymodel 1)
This could be neater though.
- PDS's II_scale_factor_calc() put in encodeII.c
v0.1f - released 16 Oct 99
- PDS's updated scale_factor_calc
- integrated a few functions in tonal.c/II_psycho_one() which gave about a 15%
speedup when using psymodel 1
v0.1g - released
- tweaked tonal.c/threshold() 10-15% improvement in this routine.
v0.2a - released 24 october 1999
- changed base source code from mpegaudio.tar to the dist10/lsf/encoder. This new code includes lower sampling frequency (LSF) extensions.
- added in most of the changes already done.
- LSF mode is faulty. Seg faults after about 190 frames here. LSF mode works if you turn off psy models though (-f)
v0.2b - released 30 October 1999
- added a "-q n" mode. will only calculate the psy model every n frames.
"-q 0" is equivalent to "-f".
- reimplemented "downmix to mono" -a switch
- WAV file support from Nick Burch <gagravarr@SoftHome.net>
- some code cleanup - removed more LayerI & III stuff.
v0.2c - skipped this release
v0.2d - released 6 November 1999
- used Mathew Hendry's enhanced fht() with table lookup (20% faster)
- made add_db an inline function and tweaked it (25% faster)
- code cleanup - renamed psy.c->psycho_II.c, tonal.c->psycho_I.c, other misc stuff
- added a "no padding" (-r) switch. Needed by the rfa.org (thanks to Federico Grau)
- tweaked threshold 33% speedup.
v0.2e - released 14 December 1999
- Some minor speedups from PDS in encode.c
- Changed // comments to /* */ style
- Merged some functions in subband.c
- Cleaned up file input parsing a little.
- Now reads PCM from /dev/stdin if this is specified as input filename (kludgy but works for me)
- Started putting tables into exe. (only enwindow done so far)
v0.2f - released 15 April 2000
- mainly cosmetic changes in the source and code layout
- removed a lot of unused functions, and split common.c into more logical subumits.
- about 15-20% faster when using psymodel I. (merged some functions in psycho_i.c)
v0.2g - released 22 April 2000
- added a VBR mode. See README.VBR
- cleaned up more code.
v0.2h - stdio/stdout now parse a little better using '-'
- tables now included in the exe thanks to Oliver Lietz <lietz@nanocosmos.de>
(I haven't had a chance to test it much though)
- including the tables in the exe seems to have boosted speed quite a bit (25%?)
- re-implemented byte-swapping in get_audio.c (command line switch -x )
v0.2i - Released 13 July 2001
- DAB extensions from Phillipe Jouguet <philippe.jouguet@vdldiffusion.com>
- Added a switch to swap the input channels (can someone confirm that toolame
swaps them incorrectly by default)
v0.2j - Released 13 February 2003
- Definitely LGPL
- VBR mode is stable for all sampling frequencies. (See README.VBR for details)
- speedups and cleanups from
Phillipe Jouguet - philippe.jouguet at vdl.fr
(spelling, LSF using psyII, WAVE reading)
Henrik Herranen - leopold at vlsi.fi
(WAVE reading)
Andreas Neukoetter - anti at webhome.de
(verbosity patch '-t' switch for transcode plugin)
Sami Sallinen - sami.sallinen at g-cluster.com
filter_subband loop unroll
psycho_i fix for "% 1408" calcs)
v0.2k - Released 16 February 2003
- Nicolas Croiset
unlimited file read size for stdin
fixed bitstream ending so that mp2 files can be concatenated
DAB options now comes with a size argument
(finally?) fixed the core dump in psycho_1
- Ricardo Schelp ricardoschelp at arnet.com.ar
combined window/filter subband routine. nice speed increase.
v0.2l - Released 3 March 2003
- Added new psychomodels
-1 use precomputed values
0 very low complexity
1 same old psy model 1
2 same old psy model 2
3 psy model 1 rewritten from scratch
4 rewritten psy model 2
- Rewrote the bitstream encoding routines
- Sped up the sin/cos/atan stuff in psymodel 4 (using tables now)
v0.2l with ZMQ output - February 2014
- added outputzmq.{h, c}
Matthias P. Braendli
- integrate into FDK-AAC-DABplus in February 2016
mike (mikecheng at NOT planckenergy.com) [remove the NOT]
|