1159b3361Sopenharmony_ci<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
2159b3361Sopenharmony_ci    "http://www.w3.org/TR/html4/loose.dtd">
3159b3361Sopenharmony_ci<html>
4159b3361Sopenharmony_ci    <head>
5159b3361Sopenharmony_ci        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
6159b3361Sopenharmony_ci        <meta name="GENERATOR" content="Mozilla/4.7 [en] (X11; I; Linux 2.2.12-20 i686) [Netscape]">
7159b3361Sopenharmony_ci        <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
8159b3361Sopenharmony_ci        <title>LAME Changelog</title>
9159b3361Sopenharmony_ci    </head>
10159b3361Sopenharmony_ci    <body style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" alink="#bbbbbb" link="#888888" vlink="#555555">
11159b3361Sopenharmony_ci        <center>
12159b3361Sopenharmony_ci            <h1>History</h1>
13159b3361Sopenharmony_ci        </center>
14159b3361Sopenharmony_ci        Starting with LAME 3.0: <br>
15159b3361Sopenharmony_ci        <font color="#ff0000">red = features and bug fixes which affect quality</font> <br>
16159b3361Sopenharmony_ci        <font color="#3366ff">blue = features and bug fixes which affect speed</font> <br>
17159b3361Sopenharmony_ci        black = usability, portability, other
18159b3361Sopenharmony_ci        <hr>
19159b3361Sopenharmony_ci        <h3>LAME 3.100.1 &nbsp;under construction</h3>
20159b3361Sopenharmony_ci        <ul>
21159b3361Sopenharmony_ci            <li>
22159b3361Sopenharmony_ci                Robert Hegemann
23159b3361Sopenharmony_ci                <ul>
24159b3361Sopenharmony_ci                    <li>Patch submitted by KO Myung-Hun, patch ticket <i>[ #80 ] OS/2 patches</i>
25159b3361Sopenharmony_ci                    </li>
26159b3361Sopenharmony_ci                    <li>Patch submitted by Elio Blanca, patch ticket <i>[ #82 ] Take advantage of terminal width on printing file names</i>
27159b3361Sopenharmony_ci                    </li>
28159b3361Sopenharmony_ci                    <li><font color="#ff0000">
29159b3361Sopenharmony_ci                        Bug fix for item <i>[ #496 ] A critical bug in init_xrpow_core_sse</i>
30159b3361Sopenharmony_ci                        </font>
31159b3361Sopenharmony_ci                    </li>
32159b3361Sopenharmony_ci                    <li><font color="#ff0000">
33159b3361Sopenharmony_ci                        Bug fix for item <i>[ #500 ] Buffer overflow in encoder</i>
34159b3361Sopenharmony_ci                        </font>
35159b3361Sopenharmony_ci                    </li>
36159b3361Sopenharmony_ci                    <li><font color="#ff0000">
37159b3361Sopenharmony_ci                        Bug fix for item <i>[ #501 ] Encoder: Assertion 'eov->bitrate_index &lt;&#61; cfg->vbr_max_bitrate_index' failed during ABR encoding</i>
38159b3361Sopenharmony_ci                        </font>
39159b3361Sopenharmony_ci                    </li>
40159b3361Sopenharmony_ci                    <li>Bug fix for item <i>[ #444 ] msacmdrv.h (structure packing alignment)</i>
41159b3361Sopenharmony_ci                    </li>
42159b3361Sopenharmony_ci                </ul>
43159b3361Sopenharmony_ci            </li>
44159b3361Sopenharmony_ci            <li>
45159b3361Sopenharmony_ci                Alexander Leidinger
46159b3361Sopenharmony_ci                <ul>
47159b3361Sopenharmony_ci                    <li><font color="#3366ff">Add faster CRC routine. The speed improvement is very small for typical use cases, but may be valuable if a lot of independent encodes are running and/or for a very long time. Patch by Robert Kausch of the fre:ac project.
48159b3361Sopenharmony_ci                        </font>
49159b3361Sopenharmony_ci                    </li>
50159b3361Sopenharmony_ci                    <li><font color="#3366ff">Fix configure script glob-ranges matching of compiler versions. This may result in faster code if no compiler optimization flags are specified during the configure step. This is part of patch ticket <i>[ #491 ] lame 3.100 slower than 3.99.5</i>
51159b3361Sopenharmony_ci                        </font>
52159b3361Sopenharmony_ci                    </li>
53159b3361Sopenharmony_ci                    <li><font color="#3366ff">Disable Takehiros IEEE753 hack by default. On modern CPUs (anything more recent from AMD than hammer/k8; Intel: Core2, i3/5/7/9 and similar -- no idea about recent Atom/Pentium) it is a speed pessimization. Add a configure option for it so that it can be enabled on old CPUs.
54159b3361Sopenharmony_ci                        </font>
55159b3361Sopenharmony_ci                    </li>
56159b3361Sopenharmony_ci                    <li>Update to more recent autotools based scripts, this may or may not fix issues during the configure stage for less popular or more recent OS or architectures.
57159b3361Sopenharmony_ci                    </li>
58159b3361Sopenharmony_ci                </ul>
59159b3361Sopenharmony_ci            </li>
60159b3361Sopenharmony_ci        </ul>
61159b3361Sopenharmony_ci        <br>
62159b3361Sopenharmony_ci        <h3>LAME 3.100 &nbsp;October 13 2017</h3>
63159b3361Sopenharmony_ci        <ul>
64159b3361Sopenharmony_ci            <li>
65159b3361Sopenharmony_ci                Rog&eacute;rio Brito
66159b3361Sopenharmony_ci                <ul>
67159b3361Sopenharmony_ci                    <li>
68159b3361Sopenharmony_ci                        Don't include the debian directory as one that is needed during
69159b3361Sopenharmony_ci                        builds.  Patch taken from Debian's packaging of lame.
70159b3361Sopenharmony_ci                    </li>
71159b3361Sopenharmony_ci                    <li>
72159b3361Sopenharmony_ci                        Resurrect Owen Taylor's code dated from 97-11-3 to properly deal
73159b3361Sopenharmony_ci                        with GTK1.  This was transplanted back from aclocal.m4 with a patch
74159b3361Sopenharmony_ci                        provided by Andres Mejia. This change makes it easy to regenerate
75159b3361Sopenharmony_ci                        autotools' files with a simple invocation of <code>autoconf -vfi</code>.
76159b3361Sopenharmony_ci                    </li>
77159b3361Sopenharmony_ci                    <li>
78159b3361Sopenharmony_ci                        Fix possible race condition causing build failures in libmp3lame.
79159b3361Sopenharmony_ci                        Discovered in automated builds by the Debian project with patch
80159b3361Sopenharmony_ci                        provided by Andres Mejia.
81159b3361Sopenharmony_ci                    </li>
82159b3361Sopenharmony_ci                </ul>
83159b3361Sopenharmony_ci            </li>
84159b3361Sopenharmony_ci            <li>
85159b3361Sopenharmony_ci                Robert Hegemann
86159b3361Sopenharmony_ci                <ul>
87159b3361Sopenharmony_ci                    <li>
88159b3361Sopenharmony_ci                        Improved detection of MPEG audio data in RIFF WAVE files. 
89159b3361Sopenharmony_ci                        Tracker item <i>[ 3545112 ] Invalid sampling detection</i>
90159b3361Sopenharmony_ci                    </li>
91159b3361Sopenharmony_ci                    <li>
92159b3361Sopenharmony_ci                        New switch <b>--gain &lt;decibel&gt;</b>, range -20.0 to 
93159b3361Sopenharmony_ci                        +12.0, a more convenient way to apply Gain adjustment in 
94159b3361Sopenharmony_ci                        decibels, than the use of <i>--scale &lt;factor&gt;</i>.
95159b3361Sopenharmony_ci                    </li>
96159b3361Sopenharmony_ci                    <li>
97159b3361Sopenharmony_ci                        Fix for tracker item <i>[ 3558466 ] Bug in path handling</i>
98159b3361Sopenharmony_ci                    </li>
99159b3361Sopenharmony_ci                    <li>
100159b3361Sopenharmony_ci                        Fix for tracker item <i>[ 3567844 ] problem with Tag 
101159b3361Sopenharmony_ci                        genre</i>
102159b3361Sopenharmony_ci                    </li>
103159b3361Sopenharmony_ci                    <li>
104159b3361Sopenharmony_ci                        Fix for tracker item <i>[ 3565659 ] no progress 
105159b3361Sopenharmony_ci                        indication with pipe input</i>
106159b3361Sopenharmony_ci                    </li>
107159b3361Sopenharmony_ci                    <li>
108159b3361Sopenharmony_ci                        Fix for tracker item <i>[ 3544957 ] scale (empty) silent 
109159b3361Sopenharmony_ci                        encode without warning</i>
110159b3361Sopenharmony_ci                    </li>
111159b3361Sopenharmony_ci                    <li>
112159b3361Sopenharmony_ci                        Fix for tracker item <i>[ 3580176 ] environment variable 
113159b3361Sopenharmony_ci                        LAMEOPT doesn't work anymore</i>
114159b3361Sopenharmony_ci                    </li>
115159b3361Sopenharmony_ci                    <li>
116159b3361Sopenharmony_ci                        Fix for tracker item <i>[ 3608583 ] input file name 
117159b3361Sopenharmony_ci                        displayed with wrong character encoding (on windows 
118159b3361Sopenharmony_ci                        console with CP_UTF8)</i>
119159b3361Sopenharmony_ci                    </li>
120159b3361Sopenharmony_ci                    <li>
121159b3361Sopenharmony_ci                        Fix for bug ticket <i>[ #447 ] Fix dereference NULL and 
122159b3361Sopenharmony_ci                        Buffer not NULL terminated issues. Thanks to Surabhi 
123159b3361Sopenharmony_ci                        Mishra</i>
124159b3361Sopenharmony_ci                    </li>
125159b3361Sopenharmony_ci                    <li>
126159b3361Sopenharmony_ci                        Fix for bug ticket <i>[ #445 ] dereference of a null 
127159b3361Sopenharmony_ci                        pointer possible in loop. Thanks to Renu Tyagi</i>
128159b3361Sopenharmony_ci                    </li>
129159b3361Sopenharmony_ci                    <li>
130159b3361Sopenharmony_ci                        Fix for bug ticket <i>[ #449 ] Make sure functions with 
131159b3361Sopenharmony_ci                        SSE instructions maintain their own properly aligned 
132159b3361Sopenharmony_ci                        stack. Thanks to Fabian Greffrath</i>
133159b3361Sopenharmony_ci                    </li>
134159b3361Sopenharmony_ci                    <li>
135159b3361Sopenharmony_ci                        Fix for bug ticket <i>[ #458 ] Multiple Stack and Heap 
136159b3361Sopenharmony_ci                        Corruptions from Malicious File. Thanks to Gareth Evans 
137159b3361Sopenharmony_ci                        and Elio Blanca</i>
138159b3361Sopenharmony_ci                    </li>
139159b3361Sopenharmony_ci                    <li>
140159b3361Sopenharmony_ci                        Fix for bug ticket <i>[ #460 ] A division by zero 
141159b3361Sopenharmony_ci                        vulnerability. Thanks to Wang Shiyang, Liu Bingchang</i>
142159b3361Sopenharmony_ci                    </li>
143159b3361Sopenharmony_ci                    <li>
144159b3361Sopenharmony_ci                        Fix for bug ticket <i>[ #461 ] CVE-2017-9410 
145159b3361Sopenharmony_ci                        fill_buffer_resample function in libmp3lame/util.c 
146159b3361Sopenharmony_ci                        heap-based buffer over-read and ap</i>
147159b3361Sopenharmony_ci                    </li>
148159b3361Sopenharmony_ci                    <li>
149159b3361Sopenharmony_ci                        Fix for bug ticket <i>[ #462 ] CVE-2017-9411 
150159b3361Sopenharmony_ci                        fill_buffer_resample function in libmp3lame/util.c 
151159b3361Sopenharmony_ci                        invalid memory read and application crash</i>
152159b3361Sopenharmony_ci                    </li>
153159b3361Sopenharmony_ci                    <li>
154159b3361Sopenharmony_ci                        Fix for bug ticket <i>[ #463 ] CVE-2017-9412 
155159b3361Sopenharmony_ci                        unpack_read_samples function in frontend/get_audio.c 
156159b3361Sopenharmony_ci                        invalid memory read and application crash</i>
157159b3361Sopenharmony_ci                    </li>
158159b3361Sopenharmony_ci                    <li>
159159b3361Sopenharmony_ci                        Fix for bug ticket <i>[ #434 ] clip detect scale 
160159b3361Sopenharmony_ci                        suggestion unaware of scale input value</i>
161159b3361Sopenharmony_ci                    </li>
162159b3361Sopenharmony_ci                    <li>
163159b3361Sopenharmony_ci                        HIP decoder bug fixed: decoding mixed blocks of lower 
164159b3361Sopenharmony_ci                        sample frequency Layer3 data resulted in internal buffer 
165159b3361Sopenharmony_ci                        overflow (write). Thanks to Henri Salo</i>
166159b3361Sopenharmony_ci                    </li>
167159b3361Sopenharmony_ci                </ul>
168159b3361Sopenharmony_ci            </li>
169159b3361Sopenharmony_ci            <li>
170159b3361Sopenharmony_ci                Alexander Leidinger
171159b3361Sopenharmony_ci                <ul>
172159b3361Sopenharmony_ci                    <li>
173159b3361Sopenharmony_ci                        Feature request, patch ticket <i>[ #27 ] Add 
174159b3361Sopenharmony_ci                        lame_encode_buffer_interleaved_int() by Michael Fink</i>
175159b3361Sopenharmony_ci                    </li>
176159b3361Sopenharmony_ci                </ul>
177159b3361Sopenharmony_ci            </li>
178159b3361Sopenharmony_ci        </ul>
179159b3361Sopenharmony_ci        <br>
180159b3361Sopenharmony_ci        <hr>
181159b3361Sopenharmony_ci        <h3>LAME 3.99.5 &nbsp;February 28 2012</h3>
182159b3361Sopenharmony_ci        <ul>
183159b3361Sopenharmony_ci            <li>
184159b3361Sopenharmony_ci                Rog&eacute;rio Brito
185159b3361Sopenharmony_ci                <ul>
186159b3361Sopenharmony_ci                    <li>
187159b3361Sopenharmony_ci                        autotools: Fix compilation on alpha using proper ifdef 
188159b3361Sopenharmony_ci                        guards. Thanks to Andres Mejia.
189159b3361Sopenharmony_ci                    </li>
190159b3361Sopenharmony_ci                    <li>Small correction of the documentation.</li>
191159b3361Sopenharmony_ci                </ul>
192159b3361Sopenharmony_ci            </li>
193159b3361Sopenharmony_ci            <li>
194159b3361Sopenharmony_ci                Robert Hegemann
195159b3361Sopenharmony_ci                <ul>
196159b3361Sopenharmony_ci                    <li>
197159b3361Sopenharmony_ci                        Workaround for cygwin build problem. Tracker item 
198159b3361Sopenharmony_ci                        <i>[ 3480692 ] mingw-w64 compilation error</i>
199159b3361Sopenharmony_ci                    </li>
200159b3361Sopenharmony_ci                    <li>
201159b3361Sopenharmony_ci                        Fix for a problem when LAME is compiled with <i>fast 
202159b3361Sopenharmony_ci                        floating point math</i>. It could result in <i>bitrate 
203159b3361Sopenharmony_ci                        bloat</i> with silent input data.
204159b3361Sopenharmony_ci                    </li>
205159b3361Sopenharmony_ci                    <li>
206159b3361Sopenharmony_ci                        <font color="#ff0000">Bug fix for tracker item <i>[ 
207159b3361Sopenharmony_ci                        3486753 ] Artifacts at the beginning of <b>decoded</b> 
208159b3361Sopenharmony_ci                        file</i></font>
209159b3361Sopenharmony_ci                    </li>
210159b3361Sopenharmony_ci                </ul>
211159b3361Sopenharmony_ci            </li>
212159b3361Sopenharmony_ci        </ul>
213159b3361Sopenharmony_ci        <br>
214159b3361Sopenharmony_ci        <h3>LAME 3.99.4 &nbsp;January 25 2012</h3>
215159b3361Sopenharmony_ci        <ul>
216159b3361Sopenharmony_ci            <li>
217159b3361Sopenharmony_ci                Robert Hegemann
218159b3361Sopenharmony_ci                <ul>
219159b3361Sopenharmony_ci                    <li>
220159b3361Sopenharmony_ci                        Fix for tracker item <i>[ 3475581 ] lame crashes at .w64 
221159b3361Sopenharmony_ci                        input file</i> 
222159b3361Sopenharmony_ci                    </li>
223159b3361Sopenharmony_ci                    <li>
224159b3361Sopenharmony_ci                        Addressing things brought to attention by tracker item 
225159b3361Sopenharmony_ci                        <i>[ 3463197 ] 3.99.x problem WFED and PCST frames </i>
226159b3361Sopenharmony_ci                        <ul>
227159b3361Sopenharmony_ci                            <li>
228159b3361Sopenharmony_ci                                WFED and PCST frames can now be added, to tag 
229159b3361Sopenharmony_ci                                podcasts iTunes recognizes</li>
230159b3361Sopenharmony_ci                            <li>USER frames are now supported</li>
231159b3361Sopenharmony_ci                            <li>
232159b3361Sopenharmony_ci                                COMM frames can now have a description, when 
233159b3361Sopenharmony_ci                                passed via --tv "COMM=description=full text"
234159b3361Sopenharmony_ci                            </li>
235159b3361Sopenharmony_ci                            <li>
236159b3361Sopenharmony_ci                                possible divide-by-zero exception should be fixed
237159b3361Sopenharmony_ci                            </li>
238159b3361Sopenharmony_ci                            <li>
239159b3361Sopenharmony_ci                                adding malformed user-defined-frames could result 
240159b3361Sopenharmony_ci                                in abnormal program termination, fixed
241159b3361Sopenharmony_ci                            </li>
242159b3361Sopenharmony_ci                        </ul>
243159b3361Sopenharmony_ci                    </li>
244159b3361Sopenharmony_ci                </ul>
245159b3361Sopenharmony_ci            </li>
246159b3361Sopenharmony_ci        </ul>
247159b3361Sopenharmony_ci        <br>
248159b3361Sopenharmony_ci        <h3>LAME 3.99.3 &nbsp;November 26 2011</h3>
249159b3361Sopenharmony_ci        <ul>
250159b3361Sopenharmony_ci            <li>
251159b3361Sopenharmony_ci                Robert Hegemann
252159b3361Sopenharmony_ci                <ul>
253159b3361Sopenharmony_ci                    <li>
254159b3361Sopenharmony_ci                        Fix for tracker item <i>[ 3441349 ] --tg does not handle 
255159b3361Sopenharmony_ci                        genre number when adding unicode tag</i> 
256159b3361Sopenharmony_ci                    </li>
257159b3361Sopenharmony_ci                </ul>
258159b3361Sopenharmony_ci            </li>
259159b3361Sopenharmony_ci        </ul>
260159b3361Sopenharmony_ci        <br>
261159b3361Sopenharmony_ci        <h3>LAME 3.99.2 &nbsp;November 18 2011</h3>
262159b3361Sopenharmony_ci        <ul>
263159b3361Sopenharmony_ci            <li>
264159b3361Sopenharmony_ci                Robert Hegemann
265159b3361Sopenharmony_ci                <ul>
266159b3361Sopenharmony_ci                    <li>
267159b3361Sopenharmony_ci                        Due to some bugs in 3rd party HW/SW decoders, those were not
268159b3361Sopenharmony_ci                        be able to make use of LAME's extended info tag anymore,
269159b3361Sopenharmony_ci                        resulting in problems with things like gapless playback.
270159b3361Sopenharmony_ci                    </li>
271159b3361Sopenharmony_ci                </ul>
272159b3361Sopenharmony_ci            </li>
273159b3361Sopenharmony_ci        </ul>
274159b3361Sopenharmony_ci        <br>
275159b3361Sopenharmony_ci        <h3>LAME 3.99.1 &nbsp;November 5 2011</h3>
276159b3361Sopenharmony_ci        <ul>
277159b3361Sopenharmony_ci            <li>
278159b3361Sopenharmony_ci                Robert Hegemann
279159b3361Sopenharmony_ci                <ul>
280159b3361Sopenharmony_ci                    <li>
281159b3361Sopenharmony_ci                        Fixes for several issues with ID3v2 unicode tags, using 
282159b3361Sopenharmony_ci                        Big-Endian text encodings. Because of several other 
283159b3361Sopenharmony_ci                        software (like Windows Media Player),
284159b3361Sopenharmony_ci                        LAME writes Little-Endian unicode tags only.<br>
285159b3361Sopenharmony_ci                        Thanks to Taihei Monma, for reporting these issues.
286159b3361Sopenharmony_ci                        Tracker items: <i>[ 3431203, 3431222, 3431241 ]</i>
287159b3361Sopenharmony_ci                    </li>
288159b3361Sopenharmony_ci                </ul>
289159b3361Sopenharmony_ci            </li>
290159b3361Sopenharmony_ci        </ul>
291159b3361Sopenharmony_ci        <br>
292159b3361Sopenharmony_ci        <h3>LAME 3.99 &nbsp;October 15 2011</h3>
293159b3361Sopenharmony_ci        <ul>
294159b3361Sopenharmony_ci            <li>3.99 beta 1 becomes 3.99</li>
295159b3361Sopenharmony_ci        </ul>
296159b3361Sopenharmony_ci        <br>
297159b3361Sopenharmony_ci        <h3>LAME 3.99 beta 1 &nbsp;not yet released</h3>
298159b3361Sopenharmony_ci        <ul>
299159b3361Sopenharmony_ci            <li>
300159b3361Sopenharmony_ci                Robert Hegemann
301159b3361Sopenharmony_ci                <ul>
302159b3361Sopenharmony_ci                    <li>
303159b3361Sopenharmony_ci                        Fix for Bugtracker item <i>[ 3395813 ] 
304159b3361Sopenharmony_ci                        id3tag_set_fieldvalue for URL link frames Broken</i>
305159b3361Sopenharmony_ci                    </li>
306159b3361Sopenharmony_ci                    <li>
307159b3361Sopenharmony_ci                        Fix for Bugtracker item <i>[ 3368977 ] Wave Parser 
308159b3361Sopenharmony_ci                        doesn't pad chunks</i>
309159b3361Sopenharmony_ci                    </li>
310159b3361Sopenharmony_ci                    <li>
311159b3361Sopenharmony_ci                        Fix for Bugtracker item <i>[ 3034259 ] confusing fatal 
312159b3361Sopenharmony_ci                        error: can't update LAME-tag frame!</i>
313159b3361Sopenharmony_ci                    </li>
314159b3361Sopenharmony_ci                </ul>
315159b3361Sopenharmony_ci            </li>
316159b3361Sopenharmony_ci        </ul>
317159b3361Sopenharmony_ci        <h3>LAME 3.99 beta 0 &nbsp;not officially released</h3>
318159b3361Sopenharmony_ci        <ul>
319159b3361Sopenharmony_ci            <li>
320159b3361Sopenharmony_ci                Josep Maria Antol&iacute;n Segura
321159b3361Sopenharmony_ci                <ul>
322159b3361Sopenharmony_ci                    <li>
323159b3361Sopenharmony_ci                        Documentation work
324159b3361Sopenharmony_ci                    </li>
325159b3361Sopenharmony_ci                </ul>
326159b3361Sopenharmony_ci            </li>
327159b3361Sopenharmony_ci            <li>
328159b3361Sopenharmony_ci                Rog&eacute;rio Brito
329159b3361Sopenharmony_ci                <ul>
330159b3361Sopenharmony_ci                    <li>
331159b3361Sopenharmony_ci                        Improve Debian packaging.
332159b3361Sopenharmony_ci                        <ul>
333159b3361Sopenharmony_ci                            <li>Include suggestions made by Fabian Greffrath</li>
334159b3361Sopenharmony_ci                            <li>
335159b3361Sopenharmony_ci                                Update version of the Debian package to reflect 
336159b3361Sopenharmony_ci                                that it is taken from CVS.
337159b3361Sopenharmony_ci                            </li>
338159b3361Sopenharmony_ci                            <li>Get rid of a transitional package</li>
339159b3361Sopenharmony_ci                            <li>Much more to come...</li>
340159b3361Sopenharmony_ci                        </ul>
341159b3361Sopenharmony_ci                    <li>Minor fix to validate the history file correctly</li>
342159b3361Sopenharmony_ci                </ul>
343159b3361Sopenharmony_ci            </li>
344159b3361Sopenharmony_ci            <li>
345159b3361Sopenharmony_ci                Robert Hegemann
346159b3361Sopenharmony_ci                <ul>
347159b3361Sopenharmony_ci                    <li>
348159b3361Sopenharmony_ci                        Porting of LAME <b>mp3rtp</b> program to Windows platform
349159b3361Sopenharmony_ci                    </li>
350159b3361Sopenharmony_ci                    <li>
351159b3361Sopenharmony_ci                        Fix: <font color="#ff0000">for free format mp3 above 320
352159b3361Sopenharmony_ci                        kbps, the maximum allowed bits was limited too far.</font>
353159b3361Sopenharmony_ci                    </li>
354159b3361Sopenharmony_ci                    <li>
355159b3361Sopenharmony_ci                        Changed behaviour: LAME replaces common suffixes by 
356159b3361Sopenharmony_ci                        MP3/WAV when no output filename was given. For example, 
357159b3361Sopenharmony_ci                        a simple <tt>lame x.wav</tt> will create output file 
358159b3361Sopenharmony_ci                        <tt>x.mp3</tt>
359159b3361Sopenharmony_ci                    </li>
360159b3361Sopenharmony_ci                    <li>
361159b3361Sopenharmony_ci                        UNICODE support on Windows OS, file names and ID3v2 tags;
362159b3361Sopenharmony_ci                        related: Bugtracker item <i>[ 3052230 ] Lame.exe can't 
363159b3361Sopenharmony_ci                        find files with non-ASCII names</i>
364159b3361Sopenharmony_ci                    </li>
365159b3361Sopenharmony_ci                    <li>
366159b3361Sopenharmony_ci                        Added  support for WAVE FORMAT IEEE FLOAT input files
367159b3361Sopenharmony_ci                    </li>
368159b3361Sopenharmony_ci                    <li>
369159b3361Sopenharmony_ci                        New switch <b>--swap-channel</b> added, see tracker 
370159b3361Sopenharmony_ci                        item <i>[ 1118412 ] RFE: option to swap L and R channels</i>
371159b3361Sopenharmony_ci                    </li>
372159b3361Sopenharmony_ci                    <li>
373159b3361Sopenharmony_ci                        New switches <b>-m l</b> and <b>-m r</b> to select either
374159b3361Sopenharmony_ci                        left or right channel for mono encoding.
375159b3361Sopenharmony_ci                    </li>
376159b3361Sopenharmony_ci                    <li>
377159b3361Sopenharmony_ci                        Feature request item <i>[ 3134258 ] Allow larger images
378159b3361Sopenharmony_ci                        with LAME (>128KB)</i>
379159b3361Sopenharmony_ci                    </li>
380159b3361Sopenharmony_ci                    <li>
381159b3361Sopenharmony_ci                        Fix for Bugtracker item <i>[ 2962223 ] Encoder delay 
382159b3361Sopenharmony_ci                        and padding values ignored when re-encoding</i>
383159b3361Sopenharmony_ci                    </li>
384159b3361Sopenharmony_ci                    <li>
385159b3361Sopenharmony_ci                        Fix for Bugtracker item <i>[ 2986823 ] Error when 
386159b3361Sopenharmony_ci                        building Lame with NASM support -still exists</i>
387159b3361Sopenharmony_ci                    </li>
388159b3361Sopenharmony_ci                    <li>
389159b3361Sopenharmony_ci                        Fix for Bugtracker item <i>[ 3125235 ] make -f 
390159b3361Sopenharmony_ci                        Makefile.mingw32 fails</i>
391159b3361Sopenharmony_ci                    </li>
392159b3361Sopenharmony_ci                    <li>
393159b3361Sopenharmony_ci                        Fix for Bugtracker item <i>[ 3021935 ] ID3 tag TXXX 
394159b3361Sopenharmony_ci                        cannot be used more than once</i>
395159b3361Sopenharmony_ci                    </li>
396159b3361Sopenharmony_ci                    <li>
397159b3361Sopenharmony_ci                        Fix for Bugtracker item <i>[ 3025801 ] gain_analysis.h 
398159b3361Sopenharmony_ci                        needs int constants</i>
399159b3361Sopenharmony_ci                    </li>
400159b3361Sopenharmony_ci                    <li>
401159b3361Sopenharmony_ci                        Fix for Bugtracker item <i>[ 3277412 ] Segmentation 
402159b3361Sopenharmony_ci                        fault at layer2.c:105 with --decode</i>
403159b3361Sopenharmony_ci                    </li>
404159b3361Sopenharmony_ci                    <li>
405159b3361Sopenharmony_ci                        Changes in new VBR code:
406159b3361Sopenharmony_ci                        <ul>
407159b3361Sopenharmony_ci                            <li><font color="#ff0000">tuning on PSY model</font></li>
408159b3361Sopenharmony_ci                            <li>
409159b3361Sopenharmony_ci                                <font color="#770000">tuning on VBR scale and 
410159b3361Sopenharmony_ci                                resulting bitrates</font>
411159b3361Sopenharmony_ci                            </li>
412159b3361Sopenharmony_ci                            <li>
413159b3361Sopenharmony_ci                                <font color="#ff0000">Minor bug fix for sfb21 
414159b3361Sopenharmony_ci                                encoding</font>
415159b3361Sopenharmony_ci                            </li>
416159b3361Sopenharmony_ci                        </ul>
417159b3361Sopenharmony_ci                    </li>
418159b3361Sopenharmony_ci                    <li>
419159b3361Sopenharmony_ci                        <font color="#ff0000">All encoding modes use the PSY 
420159b3361Sopenharmony_ci                        model from new VBR code, addresses Bugtracker item <i>[ 
421159b3361Sopenharmony_ci                        3187397 ] Strange compression behavior</i></font>
422159b3361Sopenharmony_ci                    </li>
423159b3361Sopenharmony_ci                    <li>
424159b3361Sopenharmony_ci                        Fix for a possible out of bounds array access in HIP 
425159b3361Sopenharmony_ci                        decoder, addresses Bugtracker item <i>[ 3091776 ] 
426159b3361Sopenharmony_ci                        crash at III_dequantize_sample</i>
427159b3361Sopenharmony_ci                    </li>
428159b3361Sopenharmony_ci                </ul>
429159b3361Sopenharmony_ci            </li>
430159b3361Sopenharmony_ci        </ul>
431159b3361Sopenharmony_ci        <hr>
432159b3361Sopenharmony_ci        <h3>LAME 3.98.4  &nbsp;March 22 2010</h3>
433159b3361Sopenharmony_ci        <ul>
434159b3361Sopenharmony_ci            <li>
435159b3361Sopenharmony_ci                Joseph Flynn
436159b3361Sopenharmony_ci                <ul>
437159b3361Sopenharmony_ci                    <li>
438159b3361Sopenharmony_ci                        Improvements for LAME DirectShow filter:
439159b3361Sopenharmony_ci                        <ul>
440159b3361Sopenharmony_ci                            <li>Added support for the DirectShow IAMStreamConfig Interface to the LAME encoder filter output pin.
441159b3361Sopenharmony_ci                            </li>
442159b3361Sopenharmony_ci                            <li>Modified the DirectShow filter registration section so that the LAME Encoder filter is correctly registered in the Audio Compressors filter category. This will allow third-party encoding applications using the DirectShow System Device Enumerator Interface to correctly detect the LAME encoder when querying the Audio Compressors filter group.
443159b3361Sopenharmony_ci                            </li>
444159b3361Sopenharmony_ci                            <li>Modified the filter registration information so that the MP3 audio subtype is correctly reported as being supported on the encoder output pin. This will allow third-party encoding applications using the DirectShow IFilterMapper2 Interface to recognize that the LAME encoder supports MP3 output.
445159b3361Sopenharmony_ci                            </li>
446159b3361Sopenharmony_ci                            <li>Altered the Filter Merit Value that was being used when the filter was registered so that it is now using the standard DirectShow compressor filter merit value of MERIT_DO_NOT_USE (0x200000). Previously, the filter was being registered using a value of MERIT_SW_COMPRESSOR (0x100000), which was at a lower priority (i.e. worse priority) than MERIT_DO_NOT_USE. This prevented the LAME Encoder filter from being selected for use by some third-party encoding applications.
447159b3361Sopenharmony_ci                            </li>
448159b3361Sopenharmony_ci                            <li>Added code to calculate the frame length of the audio frames used for the nBlockSize element of the WAVEFORMATEX output structure. Previously this value was simply hard-coded to 1.
449159b3361Sopenharmony_ci                            </li>
450159b3361Sopenharmony_ci                        </ul>
451159b3361Sopenharmony_ci                    </li>
452159b3361Sopenharmony_ci                </ul>
453159b3361Sopenharmony_ci            </li>
454159b3361Sopenharmony_ci            <li>
455159b3361Sopenharmony_ci                Robert Hegemann
456159b3361Sopenharmony_ci                <ul>
457159b3361Sopenharmony_ci                    <li><font color="#ff0000">Fix for Bugtracker item <i>[ 2973877 ] A problem regarding the new drain code</i></font>
458159b3361Sopenharmony_ci                    </li>
459159b3361Sopenharmony_ci                </ul>
460159b3361Sopenharmony_ci            </li>
461159b3361Sopenharmony_ci        </ul>
462159b3361Sopenharmony_ci        <h3>LAME 3.98.3  &nbsp;February 27 2010</h3>
463159b3361Sopenharmony_ci        <ul>
464159b3361Sopenharmony_ci            <li>
465159b3361Sopenharmony_ci                Rog&eacute;rio Brito:
466159b3361Sopenharmony_ci                <ul>
467159b3361Sopenharmony_ci                    <li>Update the debian packaging for the new release.
468159b3361Sopenharmony_ci                    </li>
469159b3361Sopenharmony_ci                </ul>
470159b3361Sopenharmony_ci            </li>
471159b3361Sopenharmony_ci            <li>
472159b3361Sopenharmony_ci                Robert Hegemann
473159b3361Sopenharmony_ci                <ul>
474159b3361Sopenharmony_ci                    <li>The <b>ignore-tag-errors</b> switch had no effect when embedding album art, fixed.</li>
475159b3361Sopenharmony_ci                    <li>Library API change: lame_decode functions are now obsolete but still present, please use hip_decode instead.
476159b3361Sopenharmony_ci                        The reason for this change is: lame_decode functions use a single global variable within the library
477159b3361Sopenharmony_ci                        to store decoder setup, hip_decode functions don't.
478159b3361Sopenharmony_ci                        The encoder now uses hip_decode internally and it is now possible to use <b>clipdetect</b>
479159b3361Sopenharmony_ci                        feature while reencoding mp3 to mp3.
480159b3361Sopenharmony_ci                    </li>
481159b3361Sopenharmony_ci                    <li>Workaround for FFMPEG bug, which uses to call lame_encode_flush more than once in a loop.
482159b3361Sopenharmony_ci                    </li>
483159b3361Sopenharmony_ci                    <li>Windows: program icon and version info added (when building with VC9)
484159b3361Sopenharmony_ci                    </li>
485159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 2688413 ] lib name problem in Microsoft Visual Studio 6</i>
486159b3361Sopenharmony_ci                    </li>
487159b3361Sopenharmony_ci                    <li>Fix for Bugtracker items <i>[ 2051870, 2423650, 2928684 ] several small documentation issues</i>
488159b3361Sopenharmony_ci                    </li>
489159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 2723518 ] resampling in 3.98 and 3.99alpha</i>
490159b3361Sopenharmony_ci                    </li>
491159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 2891879 ] Because of Windows API change, there was a problem with the <b>prority</b> switch.</i>
492159b3361Sopenharmony_ci                    </li>
493159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 2893101 ] Access Violation in BladeMP3EncDLL if UNICODE was defined.</i>
494159b3361Sopenharmony_ci                    </li>
495159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 2887359 ] Wrong length in ID3v2 tag when num_samples isn't set</i>
496159b3361Sopenharmony_ci                    </li>
497159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 2872590 ] LameTAG: "Music length" missmatch in LAME 3.98</i>
498159b3361Sopenharmony_ci                    </li>
499159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 2824296 ] wrong enc_padding value in LAME 3.99a and 3.98.3 (from CVS)</i>
500159b3361Sopenharmony_ci                    </li>
501159b3361Sopenharmony_ci                    <li><font color="#ff0000">Revisiting the FhG decoder problem (FhG V1.5 build 50, ships with MS Windows):
502159b3361Sopenharmony_ci                        enabling the new-drain-code seems to solve that issue better, than restricting the buffer size (see below: 3.98 beta 1, May 16 2007).</font>
503159b3361Sopenharmony_ci                    </li>
504159b3361Sopenharmony_ci                    <li>Patch submitted by Bernhard Doebler, tracker item <i>[ 2807676 ] Error when building Lame with NASM support</i>
505159b3361Sopenharmony_ci                    </li>
506159b3361Sopenharmony_ci                    <li>Patch submitted by Mancuso Raffaele, tracker item <i>[ 2406420 ] compile lame_enc.dll under cygwin</i>
507159b3361Sopenharmony_ci                    </li>
508159b3361Sopenharmony_ci                </ul>
509159b3361Sopenharmony_ci            </li>
510159b3361Sopenharmony_ci        </ul>
511159b3361Sopenharmony_ci        <h3>LAME 3.98.2  &nbsp;September 22 2008</h3>
512159b3361Sopenharmony_ci        <ul>
513159b3361Sopenharmony_ci            <li>
514159b3361Sopenharmony_ci                Robert Hegemann
515159b3361Sopenharmony_ci                <ul>
516159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 2123206 ] lame 3.98.1 segfaults with -h</i>
517159b3361Sopenharmony_ci                    </li>
518159b3361Sopenharmony_ci                </ul>
519159b3361Sopenharmony_ci            </li>
520159b3361Sopenharmony_ci        </ul>
521159b3361Sopenharmony_ci        <h3>LAME 3.98.1  &nbsp;September 21 2008</h3>
522159b3361Sopenharmony_ci        <ul>
523159b3361Sopenharmony_ci            <li>
524159b3361Sopenharmony_ci                Rog&eacute;rio Brito:
525159b3361Sopenharmony_ci                <ul>
526159b3361Sopenharmony_ci                    <li>
527159b3361Sopenharmony_ci                        More fixes for the abx tool for Unix systems:
528159b3361Sopenharmony_ci                        <ul>
529159b3361Sopenharmony_ci                            <li>Plugged a memory leak.</li>
530159b3361Sopenharmony_ci                            <li>Fixed an endianness problem: users of big-endian machines
531159b3361Sopenharmony_ci                                can now do abx tests.
532159b3361Sopenharmony_ci                            </li>
533159b3361Sopenharmony_ci                        </ul>
534159b3361Sopenharmony_ci                    </li>
535159b3361Sopenharmony_ci                    <li>Fixed history's HTML doctype</li>
536159b3361Sopenharmony_ci                    <li>
537159b3361Sopenharmony_ci                        Fixed history so that it <em>finally</em> validates
538159b3361Sopenharmony_ci                        at <a href="http://validator.w3.org/">W3's validator</a>
539159b3361Sopenharmony_ci                    </li>
540159b3361Sopenharmony_ci                    <li>
541159b3361Sopenharmony_ci                        Fixed compilation of frontend <code>mp3rtp.c</code>. Thanks to Kris Karas.
542159b3361Sopenharmony_ci                        Bugtracker item <i>[ 2015432 ] mp3rtp missing uint16_t in lame 3.98</i>
543159b3361Sopenharmony_ci                    </li>
544159b3361Sopenharmony_ci                </ul>
545159b3361Sopenharmony_ci            </li>
546159b3361Sopenharmony_ci            <li>
547159b3361Sopenharmony_ci                Robert Hegemann:
548159b3361Sopenharmony_ci                <ul>
549159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 2031704 ] --id3v1-only didnt work in 3.98-final</i></li>
550159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 2022035 ] encoder_padding value and resampling</i></li>
551159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 2029282 ] Frequency filtering API broken in 3.98</i></li>
552159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 2039648 ] potential memory leak in parse_args() function in parse.c</i></li>
553159b3361Sopenharmony_ci                    <li>
554159b3361Sopenharmony_ci                        Fix for some tagging issues:
555159b3361Sopenharmony_ci                        <ul>
556159b3361Sopenharmony_ci                            <li>
557159b3361Sopenharmony_ci                                Made search for ID3v1 genres more sloppy, abbrevations may match more often as some simple typos.
558159b3361Sopenharmony_ci                                Examples:
559159b3361Sopenharmony_ci                                <ul>
560159b3361Sopenharmony_ci                                    <li>--tg "Alt. Rock" matches genre "Alternate Rock"</li>
561159b3361Sopenharmony_ci                                    <li>--tg "acapela" matches genre "A Cappella"</li>
562159b3361Sopenharmony_ci                                </ul>
563159b3361Sopenharmony_ci                            </li>
564159b3361Sopenharmony_ci                            <li>New switch --pad-id3v2-size "n": adds ID3v2 tag with n padding bytes.</li>
565159b3361Sopenharmony_ci                        </ul>
566159b3361Sopenharmony_ci                    </li>
567159b3361Sopenharmony_ci                </ul>
568159b3361Sopenharmony_ci            </li>
569159b3361Sopenharmony_ci        </ul>
570159b3361Sopenharmony_ci        <hr>
571159b3361Sopenharmony_ci        <h3>LAME 3.98  &nbsp;July 4 2008</h3>
572159b3361Sopenharmony_ci        <ul>
573159b3361Sopenharmony_ci            <li>
574159b3361Sopenharmony_ci                Anton Sergunov:
575159b3361Sopenharmony_ci                <ul>
576159b3361Sopenharmony_ci                    <li>Frontend DirectShow: enabling LAME dshow filter to connect to "File Writer Filter".
577159b3361Sopenharmony_ci                    </li>
578159b3361Sopenharmony_ci                </ul>
579159b3361Sopenharmony_ci            </li>
580159b3361Sopenharmony_ci            <li>
581159b3361Sopenharmony_ci                Rog&eacute;rio Brito:
582159b3361Sopenharmony_ci                <ul>
583159b3361Sopenharmony_ci                    <li>Updates to the Debian Packaging</li>
584159b3361Sopenharmony_ci                    <li>Fixes to the abx tool for Unix systems (so that more people
585159b3361Sopenharmony_ci                        can evaluate LAME's compression against the original files)
586159b3361Sopenharmony_ci                    </li>
587159b3361Sopenharmony_ci                </ul>
588159b3361Sopenharmony_ci            </li>
589159b3361Sopenharmony_ci            <li>
590159b3361Sopenharmony_ci                Alexander Leidinger:
591159b3361Sopenharmony_ci                <ul>
592159b3361Sopenharmony_ci                    <li>explicitely link the math lib to the lame lib</li>
593159b3361Sopenharmony_ci                    <li>add switch to disable the use of the compaq optimized math lib</li>
594159b3361Sopenharmony_ci                </ul>
595159b3361Sopenharmony_ci            </li>
596159b3361Sopenharmony_ci        </ul>
597159b3361Sopenharmony_ci        <h3>LAME 3.98 beta 8 &nbsp;April 13 2008</h3>
598159b3361Sopenharmony_ci        <ul>
599159b3361Sopenharmony_ci            <li>
600159b3361Sopenharmony_ci                Robert Hegemann:
601159b3361Sopenharmony_ci                <ul>
602159b3361Sopenharmony_ci                    <li>LAME now accepts a floating point value in the range [0,...,10[ as VBR quality setting, like <b>-V5.678</b>
603159b3361Sopenharmony_ci                    </li>
604159b3361Sopenharmony_ci                    <li>Found and fixed some suspicious code in additive masking calculation for VBR-NEW
605159b3361Sopenharmony_ci                    </li>
606159b3361Sopenharmony_ci                    <li>bug-fix:<font color="#ff0000">experimental code was defaulted by accident for VBR-NEW</font>
607159b3361Sopenharmony_ci                    </li>
608159b3361Sopenharmony_ci                    <li>fix for some endianess problem on big-endian machines
609159b3361Sopenharmony_ci                    </li>
610159b3361Sopenharmony_ci                </ul>
611159b3361Sopenharmony_ci            </li>
612159b3361Sopenharmony_ci        </ul>
613159b3361Sopenharmony_ci        <h3>LAME 3.98 beta 7 &nbsp;April 6 2008</h3>
614159b3361Sopenharmony_ci        <ul>
615159b3361Sopenharmony_ci            <li>
616159b3361Sopenharmony_ci                Robert Hegemann:
617159b3361Sopenharmony_ci                <ul>
618159b3361Sopenharmony_ci                    <li>libmp3lame API: allow frontends to separately retrieve LAME/Xing and ID3 data, because the old library automatism
619159b3361Sopenharmony_ci                        makes it impossible to make fully buffered encodes.
620159b3361Sopenharmony_ci                    </li>
621159b3361Sopenharmony_ci                    <li>libmp3lame API: added some experimental unicode ID3 tagging code.
622159b3361Sopenharmony_ci                    </li>
623159b3361Sopenharmony_ci                    <li>frontends: write itself final ID3 tags and LAME/Xing header frame
624159b3361Sopenharmony_ci                    </li>
625159b3361Sopenharmony_ci                    <li>lame_enc.dll: writes itself final LAME/Xing header frame
626159b3361Sopenharmony_ci                    </li>
627159b3361Sopenharmony_ci                    <li>
628159b3361Sopenharmony_ci                        Latest changes to the new VBR psymodel:
629159b3361Sopenharmony_ci                        <ul>
630159b3361Sopenharmony_ci                            <li>uses a different spreading function
631159b3361Sopenharmony_ci                            </li>
632159b3361Sopenharmony_ci                            <li><font color="#ff0000">bug-fix for out-of-bounds array access (program stack corruption possible)</font>
633159b3361Sopenharmony_ci                            </li>
634159b3361Sopenharmony_ci                        </ul>
635159b3361Sopenharmony_ci                    </li>
636159b3361Sopenharmony_ci                </ul>
637159b3361Sopenharmony_ci            </li>
638159b3361Sopenharmony_ci        </ul>
639159b3361Sopenharmony_ci        <h3>LAME 3.98 beta 6 &nbsp;December 16 2007</h3>
640159b3361Sopenharmony_ci        <ul>
641159b3361Sopenharmony_ci            <li>
642159b3361Sopenharmony_ci                Robert Hegemann:
643159b3361Sopenharmony_ci                <ul>
644159b3361Sopenharmony_ci                    <li>Feature request <i>[ 1811483 ] WAVE_FORMAT_EXTENSIBLE support (PCM)</i>
645159b3361Sopenharmony_ci                    </li>
646159b3361Sopenharmony_ci                    <li><font color="#ff0000">Fix for some rare scalefactor selection issue the newer vbr code had at low compression levels
647159b3361Sopenharmony_ci                        </font>
648159b3361Sopenharmony_ci                    </li>
649159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item<i>[ 1813496 ] AIFF parsing bug</i>
650159b3361Sopenharmony_ci                    </li>
651159b3361Sopenharmony_ci                    <li>
652159b3361Sopenharmony_ci                        Latest changes to the new VBR code:
653159b3361Sopenharmony_ci                        <ul>
654159b3361Sopenharmony_ci                            <li><font color="#3366ff">it now has its own psy model, a derivation from NSPSY.</font>
655159b3361Sopenharmony_ci                            </li>
656159b3361Sopenharmony_ci                            <li><font color="#ff0000">some more tuning has been done for this new psy model.</font>
657159b3361Sopenharmony_ci                                Many thanks to Horst Albrecht and Myles Thaiss.
658159b3361Sopenharmony_ci                            </li>
659159b3361Sopenharmony_ci                            <li><font color="#ff0000">the "out-of-bits" strategy is reworked</font>
660159b3361Sopenharmony_ci                            </li>
661159b3361Sopenharmony_ci                        </ul>
662159b3361Sopenharmony_ci                    <li><font color="#ff0000">It was possible, that the "interchannel masking effects feature"
663159b3361Sopenharmony_ci                        was used by the dual-channel-mode for bi-lingual encodings too. It was meant to work
664159b3361Sopenharmony_ci                        on stereo L/R channels only.</font>
665159b3361Sopenharmony_ci                    </li>
666159b3361Sopenharmony_ci                </ul>
667159b3361Sopenharmony_ci            </li>
668159b3361Sopenharmony_ci        </ul>
669159b3361Sopenharmony_ci        <h3>LAME 3.98 beta 5 &nbsp;August 12 2007</h3>
670159b3361Sopenharmony_ci        <ul>
671159b3361Sopenharmony_ci            <li>
672159b3361Sopenharmony_ci                Jonathan Stott:
673159b3361Sopenharmony_ci                <ul>
674159b3361Sopenharmony_ci                    <li>Bug tracker items: <i>[ 1590693 ] ID3v2 tag not writing, [ 1636267 ] ID3v2 tags overwritten</i><br>
675159b3361Sopenharmony_ci                        If the output file is opened 'write-only', then LAME can't update the LAME tag.
676159b3361Sopenharmony_ci                        In this case LAME silently overwrote the first bytes of the file and an
677159b3361Sopenharmony_ci                        optional ID3v2 tag disappeared. Now an error message will be printed and
678159b3361Sopenharmony_ci                        no data is written in this case.
679159b3361Sopenharmony_ci                    </li>
680159b3361Sopenharmony_ci                </ul>
681159b3361Sopenharmony_ci            </li>
682159b3361Sopenharmony_ci            <li>
683159b3361Sopenharmony_ci                Robert Hegemann:
684159b3361Sopenharmony_ci                <ul>
685159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 1719593 ] Track numbers > 255 not allowed even with --id3v2-only</i>
686159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 1742623 ] fail(lame --mp3input -m m -b 128 --resample 8 *.mp3 **.mp3)</i><br>
687159b3361Sopenharmony_ci                        The problem here was, the input files are MPEG-1 Layer2 files named as MP3s. Even if you leave out
688159b3361Sopenharmony_ci                        the --mp3input switch LAME tried to decode the input files as Layer3 files because of the file name
689159b3361Sopenharmony_ci                        extension and because it found some valid looking Layer3 synchronization header.
690159b3361Sopenharmony_ci                        The fixed LAME version does not assume the file name extension is always correct and treats the files
691159b3361Sopenharmony_ci                        depending on the first found MPEG sync word. The files in question are now correctly detected as
692159b3361Sopenharmony_ci                        Layer2 files and transcoding does succeed.
693159b3361Sopenharmony_ci                    </li>
694159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 1445175 ] Input being stdin fails in Windows on WAV files</i><br>
695159b3361Sopenharmony_ci                        The problem here was, seeking on pipes shows some different behaviour depending on C-Library
696159b3361Sopenharmony_ci                        implementations. The workaround tries to detect it's working on a pipe and doing some
697159b3361Sopenharmony_ci                        reading instead of seeking in that case.
698159b3361Sopenharmony_ci                    </li>
699159b3361Sopenharmony_ci                    <li>Fixing some memory leak in the 'lame_enc.dll'.
700159b3361Sopenharmony_ci                    </li>
701159b3361Sopenharmony_ci                    <li>Fix for Bugtracker items <i>[ 1160757, 1160741 ] --little-endian / --big-endian not working</i><br>
702159b3361Sopenharmony_ci                        These switches where originally intended to be used together with Libsndfile only.
703159b3361Sopenharmony_ci                    </li>
704159b3361Sopenharmony_ci                    <li>Fix for Bugtracker item <i>[ 1746336 ] Incorrect Bitrate with ABR und --resample, LAME 3.98b4</i><br>
705159b3361Sopenharmony_ci                        Some earlier bug-fix had some typo. As a result, when adding a '--resample 123' switch,
706159b3361Sopenharmony_ci                        the average bitrate rised upto maximum bitrate.
707159b3361Sopenharmony_ci                    </li>
708159b3361Sopenharmony_ci                </ul>
709159b3361Sopenharmony_ci            </li>
710159b3361Sopenharmony_ci        </ul>
711159b3361Sopenharmony_ci        <h3>LAME 3.98 beta 4 &nbsp;June 23 2007</h3>
712159b3361Sopenharmony_ci        <ul>
713159b3361Sopenharmony_ci            <li>Dennis Lambe Jr: Added support for total track count (id3v2) in the frontend
714159b3361Sopenharmony_ci            </li>
715159b3361Sopenharmony_ci            <li>
716159b3361Sopenharmony_ci                Nyaochi:
717159b3361Sopenharmony_ci                <ul>
718159b3361Sopenharmony_ci                    <li>Ability to set user-defined ID3v2.3 frame</li>
719159b3361Sopenharmony_ci                    <li>Ability to include albumArt in ID3v2.3 tag</li>
720159b3361Sopenharmony_ci                </ul>
721159b3361Sopenharmony_ci            </li>
722159b3361Sopenharmony_ci            <li>
723159b3361Sopenharmony_ci                Robert Hegemann:
724159b3361Sopenharmony_ci                <ul>
725159b3361Sopenharmony_ci                    <li>Bugfix: the "play length in ms", which is stored in the ID3v2 tag TLEN, was not correctly computed.
726159b3361Sopenharmony_ci                        Some hardware and software players were confused by this garbage data.
727159b3361Sopenharmony_ci                    </li>
728159b3361Sopenharmony_ci                    <li><font color="#ff0000">Out of bits strategy for the newer VBR code overhauled</font></li>
729159b3361Sopenharmony_ci                    <li>LAME API: the ID3 tag functions do not store the pointers passed anymore,
730159b3361Sopenharmony_ci                        they do make deep copies of strings passed as parameters.
731159b3361Sopenharmony_ci                    </li>
732159b3361Sopenharmony_ci                    <li>Changes in LAME frontend switches regarding ID3 tags:
733159b3361Sopenharmony_ci                        <br><tt>--tg "MyGenre"</tt> will route unknown ID3v1 genres to "Other" for ID3v1 tags
734159b3361Sopenharmony_ci                        and will be stored as plain text "MyGenre" for ID3v2 tags. Genres given by known
735159b3361Sopenharmony_ci                        ID3v1 numbers will be stored as its corresponding text in ID3v2 tags.
736159b3361Sopenharmony_ci                        <br><tt>--tn "02/02"</tt> will store the track number specified as plain text as-is
737159b3361Sopenharmony_ci                        for ID3v2 tags.
738159b3361Sopenharmony_ci                    </li>
739159b3361Sopenharmony_ci                </ul>
740159b3361Sopenharmony_ci            </li>
741159b3361Sopenharmony_ci        </ul>
742159b3361Sopenharmony_ci        <br>
743159b3361Sopenharmony_ci        <h3>LAME 3.98 beta 3 &nbsp;May 22 2007</h3>
744159b3361Sopenharmony_ci        <ul>
745159b3361Sopenharmony_ci            <li>
746159b3361Sopenharmony_ci                Robert Hegemann:
747159b3361Sopenharmony_ci                <ul>
748159b3361Sopenharmony_ci                    <li>Fixes regarding max number of bits limitation</li>
749159b3361Sopenharmony_ci                </ul>
750159b3361Sopenharmony_ci            </li>
751159b3361Sopenharmony_ci        </ul>
752159b3361Sopenharmony_ci        <br>
753159b3361Sopenharmony_ci        <h3>LAME 3.98 beta 2 &nbsp;May 20 2007</h3>
754159b3361Sopenharmony_ci        <ul>
755159b3361Sopenharmony_ci            <li>
756159b3361Sopenharmony_ci                Robert Hegemann:
757159b3361Sopenharmony_ci                <ul>
758159b3361Sopenharmony_ci                    <li>Bug tracker item: <i>[ 1693461 ];</i>
759159b3361Sopenharmony_ci                        Fixed memory leaks in ACM codec
760159b3361Sopenharmony_ci                    </li>
761159b3361Sopenharmony_ci                    <li>Fixed encoding of non-standard sampling rates in CBR</li>
762159b3361Sopenharmony_ci                    <li><font color="#ff0000">Improved VBR strategy when running out of bits</font></li>
763159b3361Sopenharmony_ci                </ul>
764159b3361Sopenharmony_ci            </li>
765159b3361Sopenharmony_ci        </ul>
766159b3361Sopenharmony_ci        <br>
767159b3361Sopenharmony_ci        <h3>LAME 3.98 beta 1 &nbsp;May 16 2007</h3>
768159b3361Sopenharmony_ci        <ul>
769159b3361Sopenharmony_ci            <li>
770159b3361Sopenharmony_ci                Alexander Leidinger:
771159b3361Sopenharmony_ci                <ul>
772159b3361Sopenharmony_ci                    <li>Add TLEN (ID3v2) support (Submitted by: Linus Walleij).</li>
773159b3361Sopenharmony_ci                    <li>Add number of total tracks per album (ID3v2) support
774159b3361Sopenharmony_ci                        (Submitted by: Kyle VanderBeek).
775159b3361Sopenharmony_ci                    </li>
776159b3361Sopenharmony_ci                    <li>Some seatbelts for overflowing arrays in the ID3v2
777159b3361Sopenharmony_ci                        support.
778159b3361Sopenharmony_ci                    </li>
779159b3361Sopenharmony_ci                    <li>Update the RPM spec (Submitted by: Kyle VanderBeek).</li>
780159b3361Sopenharmony_ci                    <li>Fix some mem-leaks in the error case.</li>
781159b3361Sopenharmony_ci                    <li>Update to newer autotools versions.</li>
782159b3361Sopenharmony_ci                    <li>Update to use a recent libsndfile (submitted by
783159b3361Sopenharmony_ci                        libsndfile author).
784159b3361Sopenharmony_ci                    </li>
785159b3361Sopenharmony_ci                    <li><font color="#3366ff">Intrinsics support
786159b3361Sopenharmony_ci                        enabled for gcc</font>
787159b3361Sopenharmony_ci                    </li>
788159b3361Sopenharmony_ci                </ul>
789159b3361Sopenharmony_ci            </li>
790159b3361Sopenharmony_ci            <li>
791159b3361Sopenharmony_ci                Robert Hegemann:
792159b3361Sopenharmony_ci                <ul>
793159b3361Sopenharmony_ci                    <li><font color="#3366ff">The newer VBR code is now LAME's default
794159b3361Sopenharmony_ci                        VBR routine</font>
795159b3361Sopenharmony_ci                    </li>
796159b3361Sopenharmony_ci                    <li><font color="#ff0000">Fixed: in case of
797159b3361Sopenharmony_ci                        not enough bits the new vbr code incorrectly used old vbr routine</font>
798159b3361Sopenharmony_ci                    </li>
799159b3361Sopenharmony_ci                    <li><font color="#ff0000">Improved ATH
800159b3361Sopenharmony_ci                        adjustment in low volume cases</font>
801159b3361Sopenharmony_ci                    </li>
802159b3361Sopenharmony_ci                    <li><font color="#ff0000">Fixed (PSY model): mapping from convolution bands
803159b3361Sopenharmony_ci                        to partition bands was broken since we replaced tables by own calculation
804159b3361Sopenharmony_ci                        several years ago</font>
805159b3361Sopenharmony_ci                    </li>
806159b3361Sopenharmony_ci                    <li><font color="#ff0000">Fixed (PSY model): loss of fraction in equal loudness weighting</font></li>
807159b3361Sopenharmony_ci                    <li><font color="#ff0000">Fixed (PSY model): in NSPSY highpass filter, out of bounds access in fircoef</font></li>
808159b3361Sopenharmony_ci                    <li><font color="#ff0000">Known problem samples for the new VBR code:
809159b3361Sopenharmony_ci                        many of them are at an acceptable quality level now;</font>
810159b3361Sopenharmony_ci                        with a big <b>'Thank You'</b> to Francis Niechcial
811159b3361Sopenharmony_ci                    </li>
812159b3361Sopenharmony_ci                    <li><font color="#ff0000">Modified VBR strategy to handle out of bits cases</font></li>
813159b3361Sopenharmony_ci                    <li>Restricted bitreservoir size for 320 kbps frames to
814159b3361Sopenharmony_ci                        the size used for sideinfo, because of decoding problems
815159b3361Sopenharmony_ci                        with FhG decoders installed on almost every Windows system
816159b3361Sopenharmony_ci                    </li>
817159b3361Sopenharmony_ci                    <li>LAME aborts on unsupported input files
818159b3361Sopenharmony_ci                        or unrecognized parameter options passed more often now 
819159b3361Sopenharmony_ci                    </li>
820159b3361Sopenharmony_ci                    <li>Bug tracker item: <i>[ 1596306 ] "fatal error during initialization";</i>
821159b3361Sopenharmony_ci                        an invalid MPEG samplerate was returned by optimum_samplefreq function
822159b3361Sopenharmony_ci                    </li>
823159b3361Sopenharmony_ci                    <li>Bug tracker item: <i>[ 1585942 ] lame not --silent when TERM not set;</i>
824159b3361Sopenharmony_ci                        in case LAME was build with TERMCAP defined and no TERM
825159b3361Sopenharmony_ci                        environment is defined, now we do not issue an error message and
826159b3361Sopenharmony_ci                        silently fallback to the default behaviour as if LAME was
827159b3361Sopenharmony_ci                        compiled without TERMCAP defined.
828159b3361Sopenharmony_ci                    </li>
829159b3361Sopenharmony_ci                    <li>Bug tracker item: <i>[ 1711980 ] LAME writes invalid Xing header when ID3 tags exist;</i>
830159b3361Sopenharmony_ci                        LAME was sometimes writing an invalid Xing/Info header
831159b3361Sopenharmony_ci                    </li>
832159b3361Sopenharmony_ci                    <li>Feature request: <i>[ 1588283 ] Flushing output stream in lame.exe;</i>
833159b3361Sopenharmony_ci                        'flush' option added
834159b3361Sopenharmony_ci                    </li>
835159b3361Sopenharmony_ci                    <li><font color="#3366ff">Added FFTSSE and FFT3DNOW assembler code from
836159b3361Sopenharmony_ci                        Lame4 branch</font>
837159b3361Sopenharmony_ci                    </li>
838159b3361Sopenharmony_ci                    <li>Changes in lame frontend switches:
839159b3361Sopenharmony_ci                        -k removed, add lowpass and highpass switches if you need to change
840159b3361Sopenharmony_ci                        them; --short/noshort/allshort - degraded into DEVELOPER ONLY switches
841159b3361Sopenharmony_ci                        normal users shouldn't use them; -X -Z degraded to
842159b3361Sopenharmony_ci                        DEVELOPER ONLY switches, -X is too tough to communicate to
843159b3361Sopenharmony_ci                        end users and -Z isn't used actualy
844159b3361Sopenharmony_ci                    </li>
845159b3361Sopenharmony_ci                    <li>Fixed some console printing problems</li>
846159b3361Sopenharmony_ci                    <li>Windows: ACM code now uses LAME library API only, all
847159b3361Sopenharmony_ci                        references to private include files are removed
848159b3361Sopenharmony_ci                    </li>
849159b3361Sopenharmony_ci                    <li>Windows: DirectShow code now uses LAME library API only, all
850159b3361Sopenharmony_ci                        references to private include files are removed
851159b3361Sopenharmony_ci                    </li>
852159b3361Sopenharmony_ci                    <li>Windows: disabled code that resets processor affinity,
853159b3361Sopenharmony_ci                        because this doesn't belong to LAME, but seems to work around
854159b3361Sopenharmony_ci                        some problems the parent process has (in most cases EAC)
855159b3361Sopenharmony_ci                    </li>
856159b3361Sopenharmony_ci                </ul>
857159b3361Sopenharmony_ci            </li>
858159b3361Sopenharmony_ci            <li>
859159b3361Sopenharmony_ci                John33:
860159b3361Sopenharmony_ci                <ul>
861159b3361Sopenharmony_ci                    <li>
862159b3361Sopenharmony_ci                        Fixed mp2 and mp3 decoding: For mp3 and mp2 decoding,
863159b3361Sopenharmony_ci                        this now yields the same output as foobar2000 but the 
864159b3361Sopenharmony_ci                        error checking remains unchanged
865159b3361Sopenharmony_ci                    </li>
866159b3361Sopenharmony_ci                </ul>
867159b3361Sopenharmony_ci            </li>
868159b3361Sopenharmony_ci            <li>
869159b3361Sopenharmony_ci                Gabriel Bouvigne:
870159b3361Sopenharmony_ci                <ul>
871159b3361Sopenharmony_ci                    <li>VC8 project files</li>
872159b3361Sopenharmony_ci                    <li>Added support for x64 under VC8</li>
873159b3361Sopenharmony_ci                    <li>Restricted MPEG 2.5 to 64kbps frames</li>
874159b3361Sopenharmony_ci                </ul>
875159b3361Sopenharmony_ci            </li>
876159b3361Sopenharmony_ci            <li>
877159b3361Sopenharmony_ci                Takehiro Tominaga:
878159b3361Sopenharmony_ci                <ul>
879159b3361Sopenharmony_ci                    <li><font color="#3366ff">SSE version of FFT</font></li>
880159b3361Sopenharmony_ci                </ul>
881159b3361Sopenharmony_ci            </li>
882159b3361Sopenharmony_ci        </ul>
883159b3361Sopenharmony_ci        <br>
884159b3361Sopenharmony_ci        <h3>LAME 3.97 &nbsp;September 24 2006</h3>
885159b3361Sopenharmony_ci        <ul>
886159b3361Sopenharmony_ci            <li>3.97 beta 3 becomes 3.97 </li>
887159b3361Sopenharmony_ci        </ul>
888159b3361Sopenharmony_ci        <br>
889159b3361Sopenharmony_ci        <h3>LAME 3.97 beta 3 &nbsp;August 19 2006</h3>
890159b3361Sopenharmony_ci        <ul>
891159b3361Sopenharmony_ci            <li>
892159b3361Sopenharmony_ci                Gabriel Bouvigne:
893159b3361Sopenharmony_ci                <ul>
894159b3361Sopenharmony_ci                    <li><font color="#ff0000">Workaround against a
895159b3361Sopenharmony_ci                        short blocks detection issue</font>
896159b3361Sopenharmony_ci                    </li>
897159b3361Sopenharmony_ci                </ul>
898159b3361Sopenharmony_ci            </li>
899159b3361Sopenharmony_ci        </ul>
900159b3361Sopenharmony_ci        <br>
901159b3361Sopenharmony_ci        <h3>LAME 3.97 beta 2 &nbsp;November 26 2005</h3>
902159b3361Sopenharmony_ci        <ul>
903159b3361Sopenharmony_ci            <li>
904159b3361Sopenharmony_ci                Gabriel Bouvigne:
905159b3361Sopenharmony_ci                <ul>
906159b3361Sopenharmony_ci                    <li>Fixed an initialization error when input is not using a
907159b3361Sopenharmony_ci                        standard sampling frequency
908159b3361Sopenharmony_ci                    </li>
909159b3361Sopenharmony_ci                    <li>Fixed a possible assertion failure in very low bitrate
910159b3361Sopenharmony_ci                        encoding
911159b3361Sopenharmony_ci                    </li>
912159b3361Sopenharmony_ci                    <li><font color="#ff0000">Slight change
913159b3361Sopenharmony_ci                        regarding ATH adjustment with V5</font>
914159b3361Sopenharmony_ci                    </li>
915159b3361Sopenharmony_ci                    <li><font color="#ff0000">Reinstated bit
916159b3361Sopenharmony_ci                        reservoir for 320kbps CBR</font>
917159b3361Sopenharmony_ci                    </li>
918159b3361Sopenharmony_ci                    <li><font color="#3366ff">ReplayGain analysis
919159b3361Sopenharmony_ci                        should now be faster when encountering silent parts</font>
920159b3361Sopenharmony_ci                    </li>
921159b3361Sopenharmony_ci                </ul>
922159b3361Sopenharmony_ci            </li>
923159b3361Sopenharmony_ci            <li>
924159b3361Sopenharmony_ci                Takehiro Tominaga:
925159b3361Sopenharmony_ci                <ul>
926159b3361Sopenharmony_ci                    <li>Fixed a possible link problem of assembly code</li>
927159b3361Sopenharmony_ci                </ul>
928159b3361Sopenharmony_ci            </li>
929159b3361Sopenharmony_ci        </ul>
930159b3361Sopenharmony_ci        <br>
931159b3361Sopenharmony_ci        <h3>LAME 3.97 beta 1 &nbsp;September 12 2005</h3>
932159b3361Sopenharmony_ci        <ul>
933159b3361Sopenharmony_ci            <li>
934159b3361Sopenharmony_ci                Takehiro Tominaga:
935159b3361Sopenharmony_ci                <ul>
936159b3361Sopenharmony_ci                    <li>Fixed an out of array access in mp3rtp </li>
937159b3361Sopenharmony_ci                    <li><font color="#ff0000">Fixed a quality
938159b3361Sopenharmony_ci                        setting in DLL</font>
939159b3361Sopenharmony_ci                    </li>
940159b3361Sopenharmony_ci                    <li>Fixed display when using --silent</li>
941159b3361Sopenharmony_ci                </ul>
942159b3361Sopenharmony_ci            </li>
943159b3361Sopenharmony_ci            <li>
944159b3361Sopenharmony_ci                Vitaly Ivanov:
945159b3361Sopenharmony_ci                <ul>
946159b3361Sopenharmony_ci                    <li>Updated DirectShow interface</li>
947159b3361Sopenharmony_ci                </ul>
948159b3361Sopenharmony_ci            </li>
949159b3361Sopenharmony_ci            <li>
950159b3361Sopenharmony_ci                Robert Hegemann:
951159b3361Sopenharmony_ci                <ul>
952159b3361Sopenharmony_ci                    <li><font color="#ff0000">Fixed an out of
953159b3361Sopenharmony_ci                        array access</font>
954159b3361Sopenharmony_ci                    </li>
955159b3361Sopenharmony_ci                    <li><font color="#ff0000">Fixed some small
956159b3361Sopenharmony_ci                        rounding problem in vbr-new quantization routines</font>
957159b3361Sopenharmony_ci                    </li>
958159b3361Sopenharmony_ci                    <li><font color="#ff0000">Fixed a bug in
959159b3361Sopenharmony_ci                        vbr-new regarding high frequencies (sfb21) when using -Y</font>
960159b3361Sopenharmony_ci                    </li>
961159b3361Sopenharmony_ci                    <li><font color="#ff0000">Fixed a few bugs in
962159b3361Sopenharmony_ci                        vbr-new when using -Y</font>
963159b3361Sopenharmony_ci                    </li>
964159b3361Sopenharmony_ci                    <li><font color="#ff0000">Updated scalefactors
965159b3361Sopenharmony_ci                        allocation scheme in vbr-new</font>
966159b3361Sopenharmony_ci                    </li>
967159b3361Sopenharmony_ci                    <li>Fixed mingw32 configure problems</li>
968159b3361Sopenharmony_ci                    <li>Resolved some compiler warnings</li>
969159b3361Sopenharmony_ci                    <li>Updated command-line visualisation</li>
970159b3361Sopenharmony_ci                </ul>
971159b3361Sopenharmony_ci            </li>
972159b3361Sopenharmony_ci            <li>
973159b3361Sopenharmony_ci                Gabriel Bouvigne:
974159b3361Sopenharmony_ci                <ul>
975159b3361Sopenharmony_ci                    <li>Changed some FLOAT8 to FLOAT</li>
976159b3361Sopenharmony_ci                    <li>Added project files for VC7</li>
977159b3361Sopenharmony_ci                    <li><font color="#ff0000">Reworked -q1 and -q0</font></li>
978159b3361Sopenharmony_ci                    <li><font color="#ff0000">Updated presets</font></li>
979159b3361Sopenharmony_ci                    <li><font color="#ff0000">Fixed an error in
980159b3361Sopenharmony_ci                        ISO quantization on systems not using the IEEE754 hack</font>
981159b3361Sopenharmony_ci                    </li>
982159b3361Sopenharmony_ci                    <li><font color="#3366ff">Faster quantization</font></li>
983159b3361Sopenharmony_ci                    <li><font color="#3366ff">SSE version of
984159b3361Sopenharmony_ci                        init_xrpow</font>
985159b3361Sopenharmony_ci                    </li>
986159b3361Sopenharmony_ci                </ul>
987159b3361Sopenharmony_ci            </li>
988159b3361Sopenharmony_ci            <li>
989159b3361Sopenharmony_ci                Rog&eacute;rio Brito:
990159b3361Sopenharmony_ci                <ul>
991159b3361Sopenharmony_ci                    <li>Updated Debian packaging</li>
992159b3361Sopenharmony_ci                    <li>Documentation work</li>
993159b3361Sopenharmony_ci                </ul>
994159b3361Sopenharmony_ci            </li>
995159b3361Sopenharmony_ci            <li>
996159b3361Sopenharmony_ci                Chris Miller:
997159b3361Sopenharmony_ci                <ul>
998159b3361Sopenharmony_ci                    <li>Support for x64 platform SDK in makefile.msvc</li>
999159b3361Sopenharmony_ci                </ul>
1000159b3361Sopenharmony_ci            </li>
1001159b3361Sopenharmony_ci        </ul>
1002159b3361Sopenharmony_ci        <br>
1003159b3361Sopenharmony_ci        <h3>LAME 3.96.1  &nbsp;July 25 2004</h3>
1004159b3361Sopenharmony_ci        <ul>
1005159b3361Sopenharmony_ci            <li>
1006159b3361Sopenharmony_ci                Robert Hegemann:
1007159b3361Sopenharmony_ci                <ul>
1008159b3361Sopenharmony_ci                    <li><font color="#ff0000">Fixed a rare bug in
1009159b3361Sopenharmony_ci                        vbr-new (could lead to crashes or data corruption)</font>
1010159b3361Sopenharmony_ci                    </li>
1011159b3361Sopenharmony_ci                </ul>
1012159b3361Sopenharmony_ci            </li>
1013159b3361Sopenharmony_ci            <li>
1014159b3361Sopenharmony_ci                Gabriel Bouvigne:
1015159b3361Sopenharmony_ci                <ul>
1016159b3361Sopenharmony_ci                    <li>some fixes in ACM codec</li>
1017159b3361Sopenharmony_ci                    <li>fixed padding when encoding to 320kbps</li>
1018159b3361Sopenharmony_ci                    <li><font color="#ff0000">fixed block size
1019159b3361Sopenharmony_ci                        selection for mid and side channels</font>
1020159b3361Sopenharmony_ci                    </li>
1021159b3361Sopenharmony_ci                </ul>
1022159b3361Sopenharmony_ci            </li>
1023159b3361Sopenharmony_ci        </ul>
1024159b3361Sopenharmony_ci        <br>
1025159b3361Sopenharmony_ci        <h3>LAME 3.96  &nbsp;April 11 2004</h3>
1026159b3361Sopenharmony_ci        <ul>
1027159b3361Sopenharmony_ci            <li>
1028159b3361Sopenharmony_ci                Gabriel Bouvigne:
1029159b3361Sopenharmony_ci                <ul>
1030159b3361Sopenharmony_ci                    <li><font color="#ff0000">new quantization
1031159b3361Sopenharmony_ci                        selection mode (used in ABR/CBR)</font>
1032159b3361Sopenharmony_ci                    </li>
1033159b3361Sopenharmony_ci                    <li><font color="#ff0000">set sfscale for
1034159b3361Sopenharmony_ci                        ABR/CBR up to 160kbps</font>
1035159b3361Sopenharmony_ci                    </li>
1036159b3361Sopenharmony_ci                </ul>
1037159b3361Sopenharmony_ci            </li>
1038159b3361Sopenharmony_ci        </ul>
1039159b3361Sopenharmony_ci        <br>
1040159b3361Sopenharmony_ci        <h3>LAME 3.96 beta 2  &nbsp;March 28 2004</h3>
1041159b3361Sopenharmony_ci        <ul>
1042159b3361Sopenharmony_ci            <li>
1043159b3361Sopenharmony_ci                Takehiro Tominaga:
1044159b3361Sopenharmony_ci                <ul>
1045159b3361Sopenharmony_ci                    <li><font color="#3366ff">removed unnecessary
1046159b3361Sopenharmony_ci                        integer convertion in resampling</font>
1047159b3361Sopenharmony_ci                    </li>
1048159b3361Sopenharmony_ci                </ul>
1049159b3361Sopenharmony_ci            </li>
1050159b3361Sopenharmony_ci            <li>
1051159b3361Sopenharmony_ci                Robert Hegemann:
1052159b3361Sopenharmony_ci                <ul>
1053159b3361Sopenharmony_ci                    <li><font color="#ff0000">reworked scalefactor
1054159b3361Sopenharmony_ci                        allocation in vbr-new</font>
1055159b3361Sopenharmony_ci                    </li>
1056159b3361Sopenharmony_ci                    <li>fixed a freeformat decoding problem</li>
1057159b3361Sopenharmony_ci                </ul>
1058159b3361Sopenharmony_ci            </li>
1059159b3361Sopenharmony_ci            <li>
1060159b3361Sopenharmony_ci                Gabriel Bouvigne:
1061159b3361Sopenharmony_ci                <ul>
1062159b3361Sopenharmony_ci                    <li><font color="#ff0000">updated minimal
1063159b3361Sopenharmony_ci                        bitrate for V1 and V2</font>
1064159b3361Sopenharmony_ci                    </li>
1065159b3361Sopenharmony_ci                </ul>
1066159b3361Sopenharmony_ci            </li>
1067159b3361Sopenharmony_ci            <li>
1068159b3361Sopenharmony_ci                Aleksander Korzynski:
1069159b3361Sopenharmony_ci                <ul>
1070159b3361Sopenharmony_ci                    <li>added ability to disable ReplayGain analysis</li>
1071159b3361Sopenharmony_ci                </ul>
1072159b3361Sopenharmony_ci            </li>
1073159b3361Sopenharmony_ci        </ul>
1074159b3361Sopenharmony_ci        <br>
1075159b3361Sopenharmony_ci        <h3>LAME 3.96 beta  &nbsp;March 7 2004</h3>
1076159b3361Sopenharmony_ci        <ul>
1077159b3361Sopenharmony_ci            <li>
1078159b3361Sopenharmony_ci                Takehiro Tominaga:
1079159b3361Sopenharmony_ci                <ul>
1080159b3361Sopenharmony_ci                    <li>fixed decoding issue</li>
1081159b3361Sopenharmony_ci                </ul>
1082159b3361Sopenharmony_ci            </li>
1083159b3361Sopenharmony_ci            <li>
1084159b3361Sopenharmony_ci                Aleksander Korzynski:
1085159b3361Sopenharmony_ci                <ul>
1086159b3361Sopenharmony_ci                    <li>changed internal ReplayGain handling</li>
1087159b3361Sopenharmony_ci                    <li>fixed some issues when ReplayGain is used with
1088159b3361Sopenharmony_ci                        resampling
1089159b3361Sopenharmony_ci                    </li>
1090159b3361Sopenharmony_ci                </ul>
1091159b3361Sopenharmony_ci            </li>
1092159b3361Sopenharmony_ci            <li>
1093159b3361Sopenharmony_ci                Robert Hegemann:
1094159b3361Sopenharmony_ci                <ul>
1095159b3361Sopenharmony_ci                    <li>added standard ISO quantization for vbr-new, used at
1096159b3361Sopenharmony_ci                        lower quality settings
1097159b3361Sopenharmony_ci                    </li>
1098159b3361Sopenharmony_ci                    <li><font color="#3366ff">faster count_bits
1099159b3361Sopenharmony_ci                        for vbr-new</font>
1100159b3361Sopenharmony_ci                    </li>
1101159b3361Sopenharmony_ci                    <li><font color="#3366ff">faster
1102159b3361Sopenharmony_ci                        find_scalefac_ave function for vbr-new</font>
1103159b3361Sopenharmony_ci                    </li>
1104159b3361Sopenharmony_ci                    <li><font color="#ff0000">fixed an out of
1105159b3361Sopenharmony_ci                        array access in psychoacoustic models; this bug could make some psy
1106159b3361Sopenharmony_ci                        calculations worthless and sometimes let lame crash</font>
1107159b3361Sopenharmony_ci                    </li>
1108159b3361Sopenharmony_ci                    <li><font color="#ff0000">fixed an error on
1109159b3361Sopenharmony_ci                        silent scalefactor bands; this bug resulted in huffman data overrun
1110159b3361Sopenharmony_ci                        problems while decoding, resulting in audible glitches</font>
1111159b3361Sopenharmony_ci                    </li>
1112159b3361Sopenharmony_ci                    <li>fixed a freeformat decoding bug</li>
1113159b3361Sopenharmony_ci                </ul>
1114159b3361Sopenharmony_ci            </li>
1115159b3361Sopenharmony_ci            <li>
1116159b3361Sopenharmony_ci                Gabriel Bouvigne:
1117159b3361Sopenharmony_ci                <ul>
1118159b3361Sopenharmony_ci                    <li><font color="#ff0000">adjusted short block
1119159b3361Sopenharmony_ci                        thresholds</font>
1120159b3361Sopenharmony_ci                    </li>
1121159b3361Sopenharmony_ci                    <li>fixed some array addressing bugs</li>
1122159b3361Sopenharmony_ci                    <li>made ReplayGain analysis reentrant</li>
1123159b3361Sopenharmony_ci                </ul>
1124159b3361Sopenharmony_ci            </li>
1125159b3361Sopenharmony_ci            <li>David Chandler: fixed a crash in quantize_xrpow </li>
1126159b3361Sopenharmony_ci            <li>Michal Bacik: fixed a crash when using 8kHz </li>
1127159b3361Sopenharmony_ci            <li>Goran Markovic: fixed some decoding bugs </li>
1128159b3361Sopenharmony_ci            <li>John Edwards: fixed a too small buffer in ReplayGain code</li>
1129159b3361Sopenharmony_ci        </ul>
1130159b3361Sopenharmony_ci        <br>
1131159b3361Sopenharmony_ci        <h3>LAME 3.95.1  &nbsp;January 12 2004</h3>
1132159b3361Sopenharmony_ci        <ul>
1133159b3361Sopenharmony_ci            <li>
1134159b3361Sopenharmony_ci                Gabriel Bouvigne:
1135159b3361Sopenharmony_ci                <ul>
1136159b3361Sopenharmony_ci                    <li>fixed a crash when using vbr-new</li>
1137159b3361Sopenharmony_ci                    <li>changed ReplayGain reference level to 89dB</li>
1138159b3361Sopenharmony_ci                </ul>
1139159b3361Sopenharmony_ci            </li>
1140159b3361Sopenharmony_ci        </ul>
1141159b3361Sopenharmony_ci        <br>
1142159b3361Sopenharmony_ci        <h3>LAME 3.95  &nbsp;January 11 2004</h3>
1143159b3361Sopenharmony_ci        <ul>
1144159b3361Sopenharmony_ci            <li>
1145159b3361Sopenharmony_ci                Gabriel Bouvigne:
1146159b3361Sopenharmony_ci                <ul>
1147159b3361Sopenharmony_ci                    <li><font color="#ff0000">fixed lowpass values
1148159b3361Sopenharmony_ci                        when using vbr with mono files</font>
1149159b3361Sopenharmony_ci                    </li>
1150159b3361Sopenharmony_ci                    <li><font color="#3366ff">faster quantization
1151159b3361Sopenharmony_ci                        loops</font>
1152159b3361Sopenharmony_ci                    </li>
1153159b3361Sopenharmony_ci                    <li><font color="#3366ff">faster count_bits</font></li>
1154159b3361Sopenharmony_ci                    <li>fixed a buffer requirement error in ACM codec</li>
1155159b3361Sopenharmony_ci                </ul>
1156159b3361Sopenharmony_ci            </li>
1157159b3361Sopenharmony_ci            <li>
1158159b3361Sopenharmony_ci                Takehiro TOMINAGA:
1159159b3361Sopenharmony_ci                <ul>
1160159b3361Sopenharmony_ci                    <li>fixed mpglib and other decoding support code to prevent
1161159b3361Sopenharmony_ci                        the crash when invalid mp3 input
1162159b3361Sopenharmony_ci                    </li>
1163159b3361Sopenharmony_ci                </ul>
1164159b3361Sopenharmony_ci            </li>
1165159b3361Sopenharmony_ci            <li>removed Layer I decoding support</li>
1166159b3361Sopenharmony_ci            <li><font color="#3366ff">use FastLog and IEEE 754
1167159b3361Sopenharmony_ci                hack on PowerPC too (approx. 10 percent faster)</font>
1168159b3361Sopenharmony_ci            </li>
1169159b3361Sopenharmony_ci        </ul>
1170159b3361Sopenharmony_ci        <br>
1171159b3361Sopenharmony_ci        <h3>LAME 3.94 beta December 15 2003</h3>
1172159b3361Sopenharmony_ci        <ul>
1173159b3361Sopenharmony_ci            <li>
1174159b3361Sopenharmony_ci                Takehiro Tominaga:
1175159b3361Sopenharmony_ci                <ul>
1176159b3361Sopenharmony_ci                    <li><font color="#ff0000">fixed block
1177159b3361Sopenharmony_ci                        switching of nspsytune</font>
1178159b3361Sopenharmony_ci                    </li>
1179159b3361Sopenharmony_ci                    <li><font color="#ff0000">best huffman divide
1180159b3361Sopenharmony_ci                        in the inner loop.</font> This should improve the quality, but
1181159b3361Sopenharmony_ci                        PAINFULLY slow. So it is not enabled by default. Use -q0 to use it.
1182159b3361Sopenharmony_ci                    </li>
1183159b3361Sopenharmony_ci                    <li>Changed -q option mapping. "-q2" until version 3.93 is
1184159b3361Sopenharmony_ci                        now "-q3".
1185159b3361Sopenharmony_ci                    </li>
1186159b3361Sopenharmony_ci                    <li><font color="#ff0000">saving bits by
1187159b3361Sopenharmony_ci                        better scalefactor storing</font>
1188159b3361Sopenharmony_ci                    </li>
1189159b3361Sopenharmony_ci                    <li>removed Vorbis support</li>
1190159b3361Sopenharmony_ci                    <li><font color="#ff0000">substep quantization.</font>This
1191159b3361Sopenharmony_ci                        should help breaking the SFB21 bloating problem
1192159b3361Sopenharmony_ci                    </li>
1193159b3361Sopenharmony_ci                    <li><font color="#ff0000">made psychoacoustic
1194159b3361Sopenharmony_ci                        model aware of ATH adjustements</font>
1195159b3361Sopenharmony_ci                    </li>
1196159b3361Sopenharmony_ci                    <li><font color="#ff0000">use ATH value as
1197159b3361Sopenharmony_ci                        short block masking lower limit</font>
1198159b3361Sopenharmony_ci                    </li>
1199159b3361Sopenharmony_ci                    <li><font color="#ff0000">several fixes in
1200159b3361Sopenharmony_ci                        psychoacoustic model</font>
1201159b3361Sopenharmony_ci                    </li>
1202159b3361Sopenharmony_ci                    <li>more robust decoding</li>
1203159b3361Sopenharmony_ci                </ul>
1204159b3361Sopenharmony_ci            </li>
1205159b3361Sopenharmony_ci            <li>Mark Taylor / Gabriel Bouvigne: fixed issues in VBR header</li>
1206159b3361Sopenharmony_ci            <li>Mark Taylor: workaround against some hardware decoder
1207159b3361Sopenharmony_ci                defficiencies
1208159b3361Sopenharmony_ci            </li>
1209159b3361Sopenharmony_ci            <li>Aleksander Korzynski: ability to compute the "Radio"
1210159b3361Sopenharmony_ci                ReplayGain and detect clipping on the fly. The ReplayGain value is
1211159b3361Sopenharmony_ci                stored in the Lame tag.
1212159b3361Sopenharmony_ci            </li>
1213159b3361Sopenharmony_ci            <li>
1214159b3361Sopenharmony_ci                Gabriel Bouvigne:
1215159b3361Sopenharmony_ci                <ul>
1216159b3361Sopenharmony_ci                    <li><font color="#ff0000">work on presets</font></li>
1217159b3361Sopenharmony_ci                    <li><font color="#ff0000">use presets by
1218159b3361Sopenharmony_ci                        default for cbr/abr</font>
1219159b3361Sopenharmony_ci                    </li>
1220159b3361Sopenharmony_ci                    <li><font color="#ff0000">use presets by
1221159b3361Sopenharmony_ci                        default for vbr</font>
1222159b3361Sopenharmony_ci                    </li>
1223159b3361Sopenharmony_ci                    <li><font color="#ff0000">analog silence
1224159b3361Sopenharmony_ci                        detection in partitionned sfb21</font>
1225159b3361Sopenharmony_ci                    </li>
1226159b3361Sopenharmony_ci                    <li><font color="#3366ff">do not compute noise
1227159b3361Sopenharmony_ci                        in upper 0 part of the spectrum</font>
1228159b3361Sopenharmony_ci                    </li>
1229159b3361Sopenharmony_ci                    <li><font color="#3366ff">only compute noise
1230159b3361Sopenharmony_ci                        in modified scalefactor bands</font>
1231159b3361Sopenharmony_ci                    </li>
1232159b3361Sopenharmony_ci                </ul>
1233159b3361Sopenharmony_ci            </li>
1234159b3361Sopenharmony_ci            <li>
1235159b3361Sopenharmony_ci                Guillaume Lessard:
1236159b3361Sopenharmony_ci                <ul>
1237159b3361Sopenharmony_ci                    <li>nogap related changes</li>
1238159b3361Sopenharmony_ci                </ul>
1239159b3361Sopenharmony_ci            </li>
1240159b3361Sopenharmony_ci            <li>
1241159b3361Sopenharmony_ci                Alexander Leidinger:
1242159b3361Sopenharmony_ci                <ul>
1243159b3361Sopenharmony_ci                    <li>prevent closing the input fd prematurely if the input
1244159b3361Sopenharmony_ci                        is a named pipe
1245159b3361Sopenharmony_ci                    </li>
1246159b3361Sopenharmony_ci                </ul>
1247159b3361Sopenharmony_ci            </li>
1248159b3361Sopenharmony_ci        </ul>
1249159b3361Sopenharmony_ci        <br>
1250159b3361Sopenharmony_ci        <h3>LAME 3.93.1  &nbsp;December 1 2002</h3>
1251159b3361Sopenharmony_ci        <ul>
1252159b3361Sopenharmony_ci            <li>
1253159b3361Sopenharmony_ci                Gabriel Bouvigne:
1254159b3361Sopenharmony_ci                <ul>
1255159b3361Sopenharmony_ci                    <li>preset medium added to the dll interface</li>
1256159b3361Sopenharmony_ci                    <li><font color="#ff0000">fix for abr/cbr
1257159b3361Sopenharmony_ci                        presets</font>
1258159b3361Sopenharmony_ci                    </li>
1259159b3361Sopenharmony_ci                    <li><font color="#ff0000">fix -q0 switch</font></li>
1260159b3361Sopenharmony_ci                </ul>
1261159b3361Sopenharmony_ci            </li>
1262159b3361Sopenharmony_ci            <li>Alexander Leidinger: fix link problem on systems where
1263159b3361Sopenharmony_ci                socket() resides in libsocket
1264159b3361Sopenharmony_ci            </li>
1265159b3361Sopenharmony_ci        </ul>
1266159b3361Sopenharmony_ci        <br>
1267159b3361Sopenharmony_ci        <h3>LAME 3.93  &nbsp;November 16 2002</h3>
1268159b3361Sopenharmony_ci        <ul>
1269159b3361Sopenharmony_ci            <li>
1270159b3361Sopenharmony_ci                Takehiro Tominaga:
1271159b3361Sopenharmony_ci                <ul>
1272159b3361Sopenharmony_ci                    <li><font color="#ff0000">bit allocation for
1273159b3361Sopenharmony_ci                        pre-echo control improved for single channel encodings</font>
1274159b3361Sopenharmony_ci                    </li>
1275159b3361Sopenharmony_ci                    <li><font color="#ff0000">substep noise shaping</font></li>
1276159b3361Sopenharmony_ci                    <li><font color="#3366ff">optimizations by
1277159b3361Sopenharmony_ci                        changing data structure</font>
1278159b3361Sopenharmony_ci                    </li>
1279159b3361Sopenharmony_ci                    <li><font color="#ff0000">noise shaping model
1280159b3361Sopenharmony_ci                        2 fix</font>
1281159b3361Sopenharmony_ci                    </li>
1282159b3361Sopenharmony_ci                    <li><font color="#3366ff">nspsytune FIR filter
1283159b3361Sopenharmony_ci                        clean up</font>
1284159b3361Sopenharmony_ci                    </li>
1285159b3361Sopenharmony_ci                    <li><font color="#ff0000">fix small psymodel
1286159b3361Sopenharmony_ci                        bugs(DC current estimation, preecho detection of non-VBR mode, and
1287159b3361Sopenharmony_ci                        nspsymode initialization)</font>
1288159b3361Sopenharmony_ci                    </li>
1289159b3361Sopenharmony_ci                    <li>portability fixes for Tru64 UNIX</li>
1290159b3361Sopenharmony_ci                </ul>
1291159b3361Sopenharmony_ci            </li>
1292159b3361Sopenharmony_ci            <li>Albert Faber: some fixes in the DLL</li>
1293159b3361Sopenharmony_ci            <li>Simon Blandford: fixes for channel scaling in mono mode</li>
1294159b3361Sopenharmony_ci            <li><font color="#3366ff">Dominique Duvivier: some
1295159b3361Sopenharmony_ci                optimizations and a faster log10 function</font>
1296159b3361Sopenharmony_ci            </li>
1297159b3361Sopenharmony_ci            <li>
1298159b3361Sopenharmony_ci                Mark Taylor:
1299159b3361Sopenharmony_ci                <ul>
1300159b3361Sopenharmony_ci                    <li>some tag related fixes in the direct show filter and in
1301159b3361Sopenharmony_ci                        the ACM codec
1302159b3361Sopenharmony_ci                    </li>
1303159b3361Sopenharmony_ci                    <li><font color="#3366ff">fixed a mono
1304159b3361Sopenharmony_ci                        encoding bug found by Justin Schoeman</font>
1305159b3361Sopenharmony_ci                    </li>
1306159b3361Sopenharmony_ci                    <li>calc_noise bug fix</li>
1307159b3361Sopenharmony_ci                    <li>other fixes</li>
1308159b3361Sopenharmony_ci                </ul>
1309159b3361Sopenharmony_ci            </li>
1310159b3361Sopenharmony_ci            <li>
1311159b3361Sopenharmony_ci                Alexander Leidinger:
1312159b3361Sopenharmony_ci                <ul>
1313159b3361Sopenharmony_ci                    <li>update to autoconf 2.53, rewrite some configure tests</li>
1314159b3361Sopenharmony_ci                    <li>Akos Maroy: determine gcc version even with gcc 3.1</li>
1315159b3361Sopenharmony_ci                    <li>Andrew Bachmann: compile shared libs on BeOS (and
1316159b3361Sopenharmony_ci                        perhaps other arches)
1317159b3361Sopenharmony_ci                    </li>
1318159b3361Sopenharmony_ci                    <li>ultrasparc switches for gcc 3.1</li>
1319159b3361Sopenharmony_ci                    <li>fixes for SunOS 4.x</li>
1320159b3361Sopenharmony_ci                    <li>fixes for 64bit arches</li>
1321159b3361Sopenharmony_ci                    <li>CFLAGS fix for IRIX</li>
1322159b3361Sopenharmony_ci                    <li>don't override CFLAGS if exptopt isn't requested</li>
1323159b3361Sopenharmony_ci                </ul>
1324159b3361Sopenharmony_ci            </li>
1325159b3361Sopenharmony_ci            <li>
1326159b3361Sopenharmony_ci                Robert Hegeman:
1327159b3361Sopenharmony_ci                <ul>
1328159b3361Sopenharmony_ci                    <li><font color="#3366ff">some fixes</font></li>
1329159b3361Sopenharmony_ci                    <li><font color="#ff0000">some fixes for VBR</font></li>
1330159b3361Sopenharmony_ci                </ul>
1331159b3361Sopenharmony_ci            </li>
1332159b3361Sopenharmony_ci            <li>
1333159b3361Sopenharmony_ci                Gabriel Bouvigne:
1334159b3361Sopenharmony_ci                <ul>
1335159b3361Sopenharmony_ci                    <li>--noasm switch. Might help Cyrix/Via users</li>
1336159b3361Sopenharmony_ci                    <li><font color="#ff0000">presets and
1337159b3361Sopenharmony_ci                        alt-presets merged</font>
1338159b3361Sopenharmony_ci                    </li>
1339159b3361Sopenharmony_ci                </ul>
1340159b3361Sopenharmony_ci            </li>
1341159b3361Sopenharmony_ci        </ul>
1342159b3361Sopenharmony_ci        <br>
1343159b3361Sopenharmony_ci        <h3>LAME 3.92  &nbsp;April 14 2002</h3>
1344159b3361Sopenharmony_ci        <ul>
1345159b3361Sopenharmony_ci            <li><font color="#ff0000">Alexander
1346159b3361Sopenharmony_ci                Leidinger: add non linear psymodel (compile time option,
1347159b3361Sopenharmony_ci                disabled by default)</font>, workaround a bug in gcc 3.0.3
1348159b3361Sopenharmony_ci                (compiler options, based upon suggestions from various people, see
1349159b3361Sopenharmony_ci                archives and changelog for more)
1350159b3361Sopenharmony_ci            </li>
1351159b3361Sopenharmony_ci            <li>Steve Lhomme: ACM wrapper (MS-Windows codec)</li>
1352159b3361Sopenharmony_ci            <li><font color="#3366ff">Steve Lhomme:&nbsp;
1353159b3361Sopenharmony_ci                less memory copying on stereo (interleaved) input</font>
1354159b3361Sopenharmony_ci            </li>
1355159b3361Sopenharmony_ci            <li><font color="#ff0000">Takehiro Tominaga:
1356159b3361Sopenharmony_ci                Inter-channel masking, enables with --interch x option</font>
1357159b3361Sopenharmony_ci            </li>
1358159b3361Sopenharmony_ci            <li>For buggy versions of gcc compiler (2.96*), back off on
1359159b3361Sopenharmony_ci                some of the advanced compiler options<br>
1360159b3361Sopenharmony_ci            </li>
1361159b3361Sopenharmony_ci        </ul>
1362159b3361Sopenharmony_ci        <br>
1363159b3361Sopenharmony_ci        <h3>LAME 3.91  &nbsp;December 29 2001</h3>
1364159b3361Sopenharmony_ci        <ul>
1365159b3361Sopenharmony_ci            <li><font color="#ff0000">Darin
1366159b3361Sopenharmony_ci                Morrison: Bugfix for --alt-preset (for content with low
1367159b3361Sopenharmony_ci                volume, clean vocals), only important for the "fast standard" preset</font>
1368159b3361Sopenharmony_ci            </li>
1369159b3361Sopenharmony_ci            <li>
1370159b3361Sopenharmony_ci                Alexander Leidinger:
1371159b3361Sopenharmony_ci                <ul>
1372159b3361Sopenharmony_ci                    <li>add some missing files to the distribution</li>
1373159b3361Sopenharmony_ci                    <li>add --alt-preset to the man page</li>
1374159b3361Sopenharmony_ci                </ul>
1375159b3361Sopenharmony_ci            </li>
1376159b3361Sopenharmony_ci        </ul>
1377159b3361Sopenharmony_ci        <br>
1378159b3361Sopenharmony_ci        <h3>LAME 3.90  &nbsp;December 21 2001</h3>
1379159b3361Sopenharmony_ci        <ul>
1380159b3361Sopenharmony_ci            <li><font color="#ff0000">Many small improvements
1381159b3361Sopenharmony_ci                and bug fixes not added to history</font>
1382159b3361Sopenharmony_ci            </li>
1383159b3361Sopenharmony_ci            <li><font color="#ff0000">John
1384159b3361Sopenharmony_ci                Dahlstrom: more fine tuning on the auto adjustment of the ATH</font>
1385159b3361Sopenharmony_ci            </li>
1386159b3361Sopenharmony_ci            <li><font color="#3366ff">Robert
1387159b3361Sopenharmony_ci                Hegemann: small speed and quality improvements for the old
1388159b3361Sopenharmony_ci                VBR code (--vbr-old).</font> 
1389159b3361Sopenharmony_ci            </li>
1390159b3361Sopenharmony_ci            <li><font color="#ff0000">Robert
1391159b3361Sopenharmony_ci                Hegemann: some short block bug fixes</font> 
1392159b3361Sopenharmony_ci            </li>
1393159b3361Sopenharmony_ci            <li><font color="#ff0000">Robert
1394159b3361Sopenharmony_ci                Hegemann: Big improvements to --vbr-mtrh, now encodes much
1395159b3361Sopenharmony_ci                more frequencies over 16khz</font> 
1396159b3361Sopenharmony_ci            </li>
1397159b3361Sopenharmony_ci            <li><font color="#ff0000">Robert
1398159b3361Sopenharmony_ci                Hegemann: --vbr-new code disabled (outdated and lower
1399159b3361Sopenharmony_ci                quality) and replaced with --vbr-mtrh (Both --vbr-new and --vbr-mtrh
1400159b3361Sopenharmony_ci                now default to mtrh)</font> 
1401159b3361Sopenharmony_ci            </li>
1402159b3361Sopenharmony_ci            <li>Robert Hegemann: reordering of --longhelp to give
1403159b3361Sopenharmony_ci                more information, --extrahelp dropped 
1404159b3361Sopenharmony_ci            </li>
1405159b3361Sopenharmony_ci            <li>
1406159b3361Sopenharmony_ci                Darin Morrison: Totally revamped and extremely
1407159b3361Sopenharmony_ci                high quality unified preset system and other general quality
1408159b3361Sopenharmony_ci                improvements now available with --alt-presets:
1409159b3361Sopenharmony_ci                <ul>
1410159b3361Sopenharmony_ci                    <li>
1411159b3361Sopenharmony_ci                        <font color="#ff0000">some improvements
1412159b3361Sopenharmony_ci                        to psychoacoustics (vast improvements over default L.A.M.E. modes) when
1413159b3361Sopenharmony_ci                        --alt-preset is used including:</font>
1414159b3361Sopenharmony_ci                        <ul>
1415159b3361Sopenharmony_ci                            <li><font color="#ff0000">Improved tuning
1416159b3361Sopenharmony_ci                                of short block usage.</font>
1417159b3361Sopenharmony_ci                            </li>
1418159b3361Sopenharmony_ci                            <li><font color="#ff0000">Improved
1419159b3361Sopenharmony_ci                                quantization selection usage (the -X modes), now adapts between
1420159b3361Sopenharmony_ci                                appropriate modes on the fly. Also helps on "dropout" problems and with
1421159b3361Sopenharmony_ci                                pre-echo cases.</font>
1422159b3361Sopenharmony_ci                            </li>
1423159b3361Sopenharmony_ci                            <li><font color="#ff0000">Improved joint
1424159b3361Sopenharmony_ci                                stereo usage. Thresholds are better tuned now and fix some "dropout"
1425159b3361Sopenharmony_ci                                problems L.A.M.E. suffers from on clips like serioustrouble.</font>
1426159b3361Sopenharmony_ci                            </li>
1427159b3361Sopenharmony_ci                            <li><font color="#ff0000">Improved noise
1428159b3361Sopenharmony_ci                                shaping usage. Now switches between noise shaping modes on the fly
1429159b3361Sopenharmony_ci                                (toggles -Z on and off when appropriate) which allows lower bitrates
1430159b3361Sopenharmony_ci                                but without the quality compromise.</font>
1431159b3361Sopenharmony_ci                            </li>
1432159b3361Sopenharmony_ci                            <li><font color="#ff0000">Clips vastly
1433159b3361Sopenharmony_ci                                improved over default L.A.M.E. modes (vbr/cbr/abr, including --r3mix):
1434159b3361Sopenharmony_ci                                castanets, florida_seq, death2, fatboy, spahm, gbtinc, ravebase, short,
1435159b3361Sopenharmony_ci                                florida_seq, hihat, bassdrum, 2nd_vent_clip, serioustrouble, bloodline,
1436159b3361Sopenharmony_ci                                and others. No degraded clips known.</font>
1437159b3361Sopenharmony_ci                            </li>
1438159b3361Sopenharmony_ci                            <li>VBR bitrates are now more "stable" with less
1439159b3361Sopenharmony_ci                                fluctuation -- not dipping too low on some music and not increasing too
1440159b3361Sopenharmony_ci                                high unnecessarily on other music. "--alt-preset standard" provides
1441159b3361Sopenharmony_ci                                bitrates roughly within the range of 180-220kbps, often averaging close
1442159b3361Sopenharmony_ci                                to 192kbps.
1443159b3361Sopenharmony_ci                            </li>
1444159b3361Sopenharmony_ci                        </ul>
1445159b3361Sopenharmony_ci                    </li>
1446159b3361Sopenharmony_ci                    <li>--alt-presets replace the --dm-presets and "metal"
1447159b3361Sopenharmony_ci                        preset is removed and replaced with generic abr and cbr presets.
1448159b3361Sopenharmony_ci                    </li>
1449159b3361Sopenharmony_ci                    <li>--alt-preset extreme (note the 'e') replaces xtreme to
1450159b3361Sopenharmony_ci                        help eliminate some confusion
1451159b3361Sopenharmony_ci                    </li>
1452159b3361Sopenharmony_ci                    <li>--alt-preset vbr modes now have a fast option which
1453159b3361Sopenharmony_ci                        offers almost no compromise in speed.
1454159b3361Sopenharmony_ci                    </li>
1455159b3361Sopenharmony_ci                    <li>--alt-preset standard (and "fast standard") are now
1456159b3361Sopenharmony_ci                        much lower in bitrate, matching --r3mix with an overall average, though
1457159b3361Sopenharmony_ci                        offering higher quality especially on difficult test samples.
1458159b3361Sopenharmony_ci                    </li>
1459159b3361Sopenharmony_ci                    <li>--alt-presets are no longer just "presets" as in a
1460159b3361Sopenharmony_ci                        collection of switches, instead they are now quality "modes" because of
1461159b3361Sopenharmony_ci                        special code level tunings (those mentioned above).
1462159b3361Sopenharmony_ci                    </li>
1463159b3361Sopenharmony_ci                    <li>Use --alt-preset help for more information.</li>
1464159b3361Sopenharmony_ci                </ul>
1465159b3361Sopenharmony_ci            </li>
1466159b3361Sopenharmony_ci            <li>Roel VdB: more tuning on the --r3mix preset </li>
1467159b3361Sopenharmony_ci            <li>Jon Dee, Roel VdB: INFO tag</li>
1468159b3361Sopenharmony_ci            <li>Alexander Leidinger, mp3gain@hotmail.com: added
1469159b3361Sopenharmony_ci                --scale-l and --scale-r to scale stereo channels independantly 
1470159b3361Sopenharmony_ci            </li>
1471159b3361Sopenharmony_ci            <li>Takehiro Tominaga: <font color="#ff0000">new
1472159b3361Sopenharmony_ci                noise shaping mode, offering more "cutting edge" shaping according to
1473159b3361Sopenharmony_ci                masking, enabled via -q0</font> 
1474159b3361Sopenharmony_ci            </li>
1475159b3361Sopenharmony_ci            <li>Mark Taylor: More work on --nogap </li>
1476159b3361Sopenharmony_ci            <li>Gabriel Bouvigne: Small changes to abr code for
1477159b3361Sopenharmony_ci                more accurate final bitrate 
1478159b3361Sopenharmony_ci            </li>
1479159b3361Sopenharmony_ci            <li>Gabriel Bouvigne, mp3gain@hotmail.com:&nbsp;
1480159b3361Sopenharmony_ci                Preliminary <a href="http://www.replaygain.org">
1481159b3361Sopenharmony_ci                ReplayGain</a> analysis code added (not functional yet) 
1482159b3361Sopenharmony_ci            </li>
1483159b3361Sopenharmony_ci            <li>Gabriel Bouvigne, Alexander Leidinger:&nbsp;
1484159b3361Sopenharmony_ci                Documentation updates 
1485159b3361Sopenharmony_ci            </li>
1486159b3361Sopenharmony_ci            <li>John Dahlstrom, DSPguru@math.com: floating point
1487159b3361Sopenharmony_ci                interface function in the Windows DLL
1488159b3361Sopenharmony_ci            </li>
1489159b3361Sopenharmony_ci        </ul>
1490159b3361Sopenharmony_ci        <br>
1491159b3361Sopenharmony_ci        <h3>LAME 3.89beta &nbsp;July 5 2001</h3>
1492159b3361Sopenharmony_ci        <ul>
1493159b3361Sopenharmony_ci            <li>John Stewart: long filename support for Win9x/NT.</li>
1494159b3361Sopenharmony_ci            <li>Takehiro Tominaga: LAME can calculate the CRC of
1495159b3361Sopenharmony_ci                VBR header, so now "lame -pv" works fine.
1496159b3361Sopenharmony_ci            </li>
1497159b3361Sopenharmony_ci            <li><font color="#ff0000">Robert
1498159b3361Sopenharmony_ci                Hegemann: Improvements of the new VBR code (--vbr-mtrh).</font>
1499159b3361Sopenharmony_ci            </li>
1500159b3361Sopenharmony_ci            <li><font color="#3366ff">Robert Hegemann: New VBR
1501159b3361Sopenharmony_ci                code (--vbr-mtrh) is now defaulted to get more feedback. The VBR speed
1502159b3361Sopenharmony_ci                is now on par with CBR. We will use the old VBR code in the release.</font>
1503159b3361Sopenharmony_ci            </li>
1504159b3361Sopenharmony_ci            <li><font color="#ff0000">Gabriel Bouvigne: Change
1505159b3361Sopenharmony_ci                of the maximum frame size limit. LAME should now be more friendly with
1506159b3361Sopenharmony_ci                hardware players.</font>
1507159b3361Sopenharmony_ci            </li>
1508159b3361Sopenharmony_ci            <li>Gabriel Bouvigne: Size of VBR is now more balanced
1509159b3361Sopenharmony_ci                according to the -V value.
1510159b3361Sopenharmony_ci            </li>
1511159b3361Sopenharmony_ci            <li>Alexander Leidinger: Finished the implementation of the
1512159b3361Sopenharmony_ci                set/get functions.
1513159b3361Sopenharmony_ci            </li>
1514159b3361Sopenharmony_ci            <li>John Dahlstrom: LAME now handles 24bits input</li>
1515159b3361Sopenharmony_ci            <li>Mark Taylor: bugs in lame --decode causing truncation of
1516159b3361Sopenharmony_ci                mp3 file fixed
1517159b3361Sopenharmony_ci            </li>
1518159b3361Sopenharmony_ci            <li>Mark Taylor: preliminary --nogap support</li>
1519159b3361Sopenharmony_ci            <li>"Final" API completed: shared library safe! &nbsp;This
1520159b3361Sopenharmony_ci                API is frozen and should be backwords compatiable with future versions
1521159b3361Sopenharmony_ci                of libmp3lame.so, but we will continue to add new functionality.
1522159b3361Sopenharmony_ci                &nbsp;<br>
1523159b3361Sopenharmony_ci            </li>
1524159b3361Sopenharmony_ci        </ul>
1525159b3361Sopenharmony_ci        <h3> LAME 3.88beta&nbsp; March 25 2001</h3>
1526159b3361Sopenharmony_ci        <ul>
1527159b3361Sopenharmony_ci            <li><font color="#ff0000">A lot of work that was
1528159b3361Sopenharmony_ci                never added to the History!</font>
1529159b3361Sopenharmony_ci            </li>
1530159b3361Sopenharmony_ci            <li><font color="#ff0000">Frank Klemm and
1531159b3361Sopenharmony_ci                Gabriel Bouvigne: New ATH formula. Big improvement
1532159b3361Sopenharmony_ci                for high bitrate encodings.</font>
1533159b3361Sopenharmony_ci            </li>
1534159b3361Sopenharmony_ci            <li><font color="#ff0000">Takehiro Tominaga:
1535159b3361Sopenharmony_ci                Temporal masking</font>
1536159b3361Sopenharmony_ci            </li>
1537159b3361Sopenharmony_ci            <li><font color="#ff0000">Gabriel Bouvigne/Mark
1538159b3361Sopenharmony_ci                Taylor: auto adjustment of ATH</font>
1539159b3361Sopenharmony_ci            </li>
1540159b3361Sopenharmony_ci            <li><font color="#ff0000">Robert
1541159b3361Sopenharmony_ci                Hegemann: Better outer_loop stopping criterion.&nbsp;
1542159b3361Sopenharmony_ci                Enabled with -q2 or better.</font>
1543159b3361Sopenharmony_ci            </li>
1544159b3361Sopenharmony_ci            <li><font color="#ff0000">Robert Hegemann/Naoki
1545159b3361Sopenharmony_ci                Shibata: slow/carefull noise shaping.&nbsp;
1546159b3361Sopenharmony_ci                -q3..9: amplify all distorted bands. -q2: amplify
1547159b3361Sopenharmony_ci                distorted bands within 50%. -q1-0: amplify only
1548159b3361Sopenharmony_ci                most distorted band at each iteration.</font>
1549159b3361Sopenharmony_ci            </li>
1550159b3361Sopenharmony_ci            <li><font color="#ff0000">Takehiro Tominaga:
1551159b3361Sopenharmony_ci                Interframe, shortblock temporal masking.</font>
1552159b3361Sopenharmony_ci            </li>
1553159b3361Sopenharmony_ci            <li>Takehiro Tominaga: LAME restructured into a
1554159b3361Sopenharmony_ci                shared library and front end application. Slight changes to
1555159b3361Sopenharmony_ci                the API. More changes are coming to turn LAME into a true shared
1556159b3361Sopenharmony_ci                library (right now you have to recompile if you upgrade the library :-(
1557159b3361Sopenharmony_ci            </li>
1558159b3361Sopenharmony_ci            <li>
1559159b3361Sopenharmony_ci                <font color="#000000">Naoki Shibata:</font>
1560159b3361Sopenharmony_ci                <ul>
1561159b3361Sopenharmony_ci                    <li><font color="#ff0000">improvements to
1562159b3361Sopenharmony_ci                        psychoacoustics</font><font color="#000000">
1563159b3361Sopenharmony_ci                        (--nspsytune)</font>
1564159b3361Sopenharmony_ci                    <li><font color="#ff0000">BUG in long block
1565159b3361Sopenharmony_ci                        pre echo control fixed </font><font color="#000000">
1566159b3361Sopenharmony_ci                        (some out of range array access in M/S psychoacoustics)</font>
1567159b3361Sopenharmony_ci                    </li>
1568159b3361Sopenharmony_ci                </ul>
1569159b3361Sopenharmony_ci            </li>
1570159b3361Sopenharmony_ci            <li><font color="#000000">Ralf
1571159b3361Sopenharmony_ci                Kempkens:&nbsp;&nbsp; Visual Basic Script for lame,
1572159b3361Sopenharmony_ci                suggested to put it on your Windows Desktop and you can drag'n'drop
1573159b3361Sopenharmony_ci                Waves to encode on it.</font>
1574159b3361Sopenharmony_ci            </li>
1575159b3361Sopenharmony_ci            <li><font color="#000000">Alexander
1576159b3361Sopenharmony_ci                Stumpf:&nbsp;&nbsp; improved lame.bat for 4Dos users</font>
1577159b3361Sopenharmony_ci            </li>
1578159b3361Sopenharmony_ci            <li><font color="#000000">Mark Taylor: Several
1579159b3361Sopenharmony_ci                bugs fixed in the resampling code.</font>
1580159b3361Sopenharmony_ci            </li>
1581159b3361Sopenharmony_ci            <li><font color="#000000">Frank Klemm, Robert
1582159b3361Sopenharmony_ci                Hegemann:&nbsp;&nbsp; added assembler code for CPU
1583159b3361Sopenharmony_ci                feature detection on runtime (MMX, 3DNow, SIMD)</font>
1584159b3361Sopenharmony_ci            </li>
1585159b3361Sopenharmony_ci            <li><font color="#3366ff">Takehiro Tominaga:
1586159b3361Sopenharmony_ci                3DNow FFT code.</font>
1587159b3361Sopenharmony_ci            </li>
1588159b3361Sopenharmony_ci            <li><font color="#000000">Florian Bome,
1589159b3361Sopenharmony_ci                Alexander Leidinger:&nbsp;&nbsp; more work on
1590159b3361Sopenharmony_ci                configure stuff</font>
1591159b3361Sopenharmony_ci            </li>
1592159b3361Sopenharmony_ci            <li><font color="#000000">Alexander
1593159b3361Sopenharmony_ci                Leidinger:&nbsp; automake/libtool generated Makefiles and
1594159b3361Sopenharmony_ci                TONS of other work.</font>
1595159b3361Sopenharmony_ci            </li>
1596159b3361Sopenharmony_ci            <li><font color="#000000">Alexander
1597159b3361Sopenharmony_ci                Leidinger:&nbsp; Much work towards shared library style
1598159b3361Sopenharmony_ci                API.</font>
1599159b3361Sopenharmony_ci            </li>
1600159b3361Sopenharmony_ci            <li><font color="#000000">Anonymous: New more
1601159b3361Sopenharmony_ci                efficient RTP code.</font>
1602159b3361Sopenharmony_ci            </li>
1603159b3361Sopenharmony_ci            <li><font color="#ff0000">Mark Taylor:
1604159b3361Sopenharmony_ci                psycho-acoustic data now computed for all scalefactor bands (up to 24
1605159b3361Sopenharmony_ci                kHz)</font>
1606159b3361Sopenharmony_ci            </li>
1607159b3361Sopenharmony_ci            <li><font color="#ff0000">Mark Taylor, Takehiro
1608159b3361Sopenharmony_ci                Tominaga: All ISO table data replaced by formulas - should improve
1609159b3361Sopenharmony_ci                MPEG2.5 results for which we never had correct table data.</font>
1610159b3361Sopenharmony_ci            </li>
1611159b3361Sopenharmony_ci        </ul>
1612159b3361Sopenharmony_ci        <h3> LAME 3.87alpha &nbsp;September 25 2000</h3>
1613159b3361Sopenharmony_ci        <ul>
1614159b3361Sopenharmony_ci            <li>Mark Taylor: Bug fixed in LAME/mpglib error
1615159b3361Sopenharmony_ci                recovery when encountering a corrupt MP3 frame during
1616159b3361Sopenharmony_ci                *decoding*.
1617159b3361Sopenharmony_ci            </li>
1618159b3361Sopenharmony_ci            <li>Albert Faber: added LayerI+II decoding support</li>
1619159b3361Sopenharmony_ci            <li><font color="#000000">Frank Klemm:&nbsp;
1620159b3361Sopenharmony_ci                added improved CRC calculation</font>
1621159b3361Sopenharmony_ci            </li>
1622159b3361Sopenharmony_ci            <li><font color="#000000">Frank Klemm:
1623159b3361Sopenharmony_ci                substantial code cleanup/improvements</font>
1624159b3361Sopenharmony_ci            </li>
1625159b3361Sopenharmony_ci            <li>
1626159b3361Sopenharmony_ci                Robert Hegemann: Bug fixes
1627159b3361Sopenharmony_ci                <ul>
1628159b3361Sopenharmony_ci                    <li><font color="#ff0000">in huffman_init</font>,
1629159b3361Sopenharmony_ci                        could lead to segmentation faults (only in rare cases, most likely at
1630159b3361Sopenharmony_ci                        lower sample rates)
1631159b3361Sopenharmony_ci                    </li>
1632159b3361Sopenharmony_ci                    <li><font color="#ff0000">M/S switching at
1633159b3361Sopenharmony_ci                        lower sample rates</font> (the fact there is no 2nd granule was
1634159b3361Sopenharmony_ci                        ignored)
1635159b3361Sopenharmony_ci                    </li>
1636159b3361Sopenharmony_ci                </ul>
1637159b3361Sopenharmony_ci            </li>
1638159b3361Sopenharmony_ci            <li><font color="#3366ff">Robert
1639159b3361Sopenharmony_ci                Hegemann: speed up in VBR</font>
1640159b3361Sopenharmony_ci            </li>
1641159b3361Sopenharmony_ci            <li>Jarmo Laakkonen: Amiga/GCC settings for
1642159b3361Sopenharmony_ci                Makefile.unix.
1643159b3361Sopenharmony_ci            </li>
1644159b3361Sopenharmony_ci            <li>Magnus Holmgren: README and Makefile for (free)
1645159b3361Sopenharmony_ci                Borland C++ compiler. Will also compile lame_enc.dll, but
1646159b3361Sopenharmony_ci                this is untested.
1647159b3361Sopenharmony_ci            </li>
1648159b3361Sopenharmony_ci            <li>Florian Bome:&nbsp; LAME finally has
1649159b3361Sopenharmony_ci                a ./configure script!!
1650159b3361Sopenharmony_ci            </li>
1651159b3361Sopenharmony_ci        </ul>
1652159b3361Sopenharmony_ci        <h3> LAME 3.86beta &nbsp;August 6 2000</h3>
1653159b3361Sopenharmony_ci        <ul>
1654159b3361Sopenharmony_ci            <li>Christopher Wise: A makefile for DJGPP, the DOS
1655159b3361Sopenharmony_ci                version of gcc. Now most windows users should be able to
1656159b3361Sopenharmony_ci                compile LAME with minimal effort.
1657159b3361Sopenharmony_ci            </li>
1658159b3361Sopenharmony_ci            <li><font color="#ff0000">Robert
1659159b3361Sopenharmony_ci                Hegemann: old VBR:&nbsp; fixed some bugs and
1660159b3361Sopenharmony_ci                Takehiro's scalefac_scale feature (not yet on by&nbsp;
1661159b3361Sopenharmony_ci                default.) older LAME versions did not allow to spent more
1662159b3361Sopenharmony_ci                than 2500 bits of 4095 possible bits to a granule per channel, now
1663159b3361Sopenharmony_ci                fixed.</font>
1664159b3361Sopenharmony_ci            </li>
1665159b3361Sopenharmony_ci            <li>Robert Hegemann: new VBR:&nbsp;&nbsp;
1666159b3361Sopenharmony_ci                analog silence treatment like in old VBR
1667159b3361Sopenharmony_ci            </li>
1668159b3361Sopenharmony_ci            <li>William Welch: Improved options for Linux/Alpha
1669159b3361Sopenharmony_ci                gcc and ccc compilers in Makefile.
1670159b3361Sopenharmony_ci            </li>
1671159b3361Sopenharmony_ci            <li>Mathew Hendry: setting appropriate CRC bit for
1672159b3361Sopenharmony_ci                additional Xing-VBR tagging frame
1673159b3361Sopenharmony_ci            </li>
1674159b3361Sopenharmony_ci            <li>Don Melton: added ID3 version 2 TAG support</li>
1675159b3361Sopenharmony_ci            <li><font color="#000000">John Dahlstrom: fixed
1676159b3361Sopenharmony_ci                bug allowing timing information (for status in command line encoder) to
1677159b3361Sopenharmony_ci                overflow.</font>
1678159b3361Sopenharmony_ci            </li>
1679159b3361Sopenharmony_ci            <li><font color="#000000">Tamito KAJIYAMA, Fixed
1680159b3361Sopenharmony_ci                several bugs in the LAME/Vorbis interface.</font>
1681159b3361Sopenharmony_ci            </li>
1682159b3361Sopenharmony_ci            <li><font color="#000000">Mark Taylor:&nbsp;
1683159b3361Sopenharmony_ci                lame --decode will recognize <a href="http://albumid.cjb.net">Album
1684159b3361Sopenharmony_ci                ID tags</a></font>
1685159b3361Sopenharmony_ci            </li>
1686159b3361Sopenharmony_ci            <li><font color="#ff0000">Naoki
1687159b3361Sopenharmony_ci                Shibata: Additive masking and other improvements to psycho
1688159b3361Sopenharmony_ci                acoustics. (not yet on by default)</font>
1689159b3361Sopenharmony_ci            </li>
1690159b3361Sopenharmony_ci        </ul>
1691159b3361Sopenharmony_ci        <h3> LAME 3.85beta&nbsp; July 3 2000</h3>
1692159b3361Sopenharmony_ci        <ul>
1693159b3361Sopenharmony_ci            <li><font color="#ff0000">Takehiro
1694159b3361Sopenharmony_ci                Tominaga: mid/side stereo demasking thresholds updated.</font>
1695159b3361Sopenharmony_ci            </li>
1696159b3361Sopenharmony_ci            <li>Takehiro Tominaga: New short block MDCT coefficient data
1697159b3361Sopenharmony_ci                structure. Should allow for future speed improvements.
1698159b3361Sopenharmony_ci            </li>
1699159b3361Sopenharmony_ci            <li>Robert Hegemann: fixed bug in old VBR routine,
1700159b3361Sopenharmony_ci                the --noath mode messed up the VBR routine resulting in very large files
1701159b3361Sopenharmony_ci            </li>
1702159b3361Sopenharmony_ci            <li>Robert Hegemann: found bugs in some sections when using 32
1703159b3361Sopenharmony_ci                bit floating point. Default is now back to 64bit floating
1704159b3361Sopenharmony_ci                point.
1705159b3361Sopenharmony_ci            </li>
1706159b3361Sopenharmony_ci            <li><font color="#ff0000">Takehiro
1707159b3361Sopenharmony_ci                Tominaga: Modified PE formula to use ATH.</font>
1708159b3361Sopenharmony_ci            </li>
1709159b3361Sopenharmony_ci            <li><font color="#000000">S.T.L.:&nbsp;
1710159b3361Sopenharmony_ci                README.DJGPP - instructions for compiling LAME with DJGPP, the dos
1711159b3361Sopenharmony_ci                version of gcc.</font>
1712159b3361Sopenharmony_ci            </li>
1713159b3361Sopenharmony_ci        </ul>
1714159b3361Sopenharmony_ci        <h3> LAME 3.84beta &nbsp;June 30 2000</h3>
1715159b3361Sopenharmony_ci        <ul>
1716159b3361Sopenharmony_ci            <li>Mark Weinstein: .wav file output (with --decode
1717159b3361Sopenharmony_ci                option) was writing the wrong filesize in the .wav file. Now
1718159b3361Sopenharmony_ci                fixed.
1719159b3361Sopenharmony_ci            </li>
1720159b3361Sopenharmony_ci            <li>Mark Taylor: (optional) Vorbis support, both
1721159b3361Sopenharmony_ci                encoding and decoding. LAME can now produce .ogg files, or
1722159b3361Sopenharmony_ci                even re-encode your entire .ogg collection into
1723159b3361Sopenharmony_ci                mp3.&nbsp; (Just kidding: it is always a bad idea to
1724159b3361Sopenharmony_ci                convert from one lossy format to another)
1725159b3361Sopenharmony_ci            </li>
1726159b3361Sopenharmony_ci            <li>?: Bug fixed causing VBR to crash under
1727159b3361Sopenharmony_ci                windows.&nbsp; (pretab[] array overflow)
1728159b3361Sopenharmony_ci            </li>
1729159b3361Sopenharmony_ci            <li>Sergey Sapelin: Another bug found in the mpg123 MPEG2
1730159b3361Sopenharmony_ci                tables. Now fixed for the mpg123 based decoder in LAME.
1731159b3361Sopenharmony_ci            </li>
1732159b3361Sopenharmony_ci            <li>Marco Remondini: VBR histogram works in
1733159b3361Sopenharmony_ci                win32. compile with -DBRHIST -DNOTERMCAP
1734159b3361Sopenharmony_ci            </li>
1735159b3361Sopenharmony_ci            <li><font color="#ff0000">Takehiro
1736159b3361Sopenharmony_ci                Tominaga: LAME CBR will now use scalefac_scale to expand the
1737159b3361Sopenharmony_ci                dynamic range of the scalefactors.</font>
1738159b3361Sopenharmony_ci            </li>
1739159b3361Sopenharmony_ci            <li><font color="#000000">Iwasa Kazmi:&nbsp;
1740159b3361Sopenharmony_ci                Library improvements: exit()'s, printf, fprintf's are being
1741159b3361Sopenharmony_ci                replaced by interceptable macros.</font>
1742159b3361Sopenharmony_ci            </li>
1743159b3361Sopenharmony_ci        </ul>
1744159b3361Sopenharmony_ci        <h3> LAME 3.83beta &nbsp;May 19 2000</h3>
1745159b3361Sopenharmony_ci        <ul>
1746159b3361Sopenharmony_ci            <li><font color="#ff0000">Mark Taylor:&nbsp;
1747159b3361Sopenharmony_ci                Bug in buffering routines: in some cases, could cause
1748159b3361Sopenharmony_ci                MDCT to read past end of buffer. Rare in MPEG2,
1749159b3361Sopenharmony_ci                even more rare for MPEG1, but potentially serious!</font>
1750159b3361Sopenharmony_ci            </li>
1751159b3361Sopenharmony_ci            <li>Mark Taylor: MDCT/polyphase filterbank was not
1752159b3361Sopenharmony_ci                being "primed" properly. Does not effect output unless you
1753159b3361Sopenharmony_ci                set the encoder delay lower than the default of 576 samples.
1754159b3361Sopenharmony_ci            </li>
1755159b3361Sopenharmony_ci            <li><font color="#ff0000">Mark Taylor:&nbsp;
1756159b3361Sopenharmony_ci                "vdbj" and "Caster" found several VBR bugs (now
1757159b3361Sopenharmony_ci                fixed):&nbsp; 1. Analog silence detection only
1758159b3361Sopenharmony_ci                checked frequencies up to 16 kHz. 2. VBR mode could
1759159b3361Sopenharmony_ci                still somehow avoid -F mode. 3. VBR mode would
1760159b3361Sopenharmony_ci                ignore noise above 16 kHz (scalefactor band 22), Now calc_noise1 will
1761159b3361Sopenharmony_ci                compute the noise in this band when in VBR mode. Not
1762159b3361Sopenharmony_ci                calculated in CBR mode since CBR algorithm has no way of
1763159b3361Sopenharmony_ci                using this information.</font>
1764159b3361Sopenharmony_ci            </li>
1765159b3361Sopenharmony_ci            <li>Mark Taylor: scalefactor band 22 info
1766159b3361Sopenharmony_ci                (masking(=ATH), noise and energy) now displayed in frame
1767159b3361Sopenharmony_ci                analyzer.
1768159b3361Sopenharmony_ci            </li>
1769159b3361Sopenharmony_ci            <li><font color="#ff0000">VBR code ATH tuning
1770159b3361Sopenharmony_ci                was disabled by accident in 3.81, now fixed.</font>
1771159b3361Sopenharmony_ci            </li>
1772159b3361Sopenharmony_ci            <li><font color="#000000">Mark Taylor:&nbsp;
1773159b3361Sopenharmony_ci                lame --decode will produce .wav files. (oops - size is off by
1774159b3361Sopenharmony_ci                a factor of 4)</font>
1775159b3361Sopenharmony_ci            </li>
1776159b3361Sopenharmony_ci        </ul>
1777159b3361Sopenharmony_ci        <h3> LAME 3.82beta &nbsp;May 11 2000</h3>
1778159b3361Sopenharmony_ci        <ul>
1779159b3361Sopenharmony_ci            <li>Robert Hegemann: Fixed bug in high bitrate joint
1780159b3361Sopenharmony_ci                stereo encodings.
1781159b3361Sopenharmony_ci            </li>
1782159b3361Sopenharmony_ci            <li><font color="#3366ff">Naoki
1783159b3361Sopenharmony_ci                Shibata: new long block MDCT routine</font>
1784159b3361Sopenharmony_ci            </li>
1785159b3361Sopenharmony_ci        </ul>
1786159b3361Sopenharmony_ci        <h3> LAME 3.81beta &nbsp;May 8 2000</h3>
1787159b3361Sopenharmony_ci        <ul>
1788159b3361Sopenharmony_ci            <li>all ISO code removed!</li>
1789159b3361Sopenharmony_ci            <li><font color="#3366ff">Takehiro Tominaga and
1790159b3361Sopenharmony_ci                Naoki Shibata: new window subband routines.</font>
1791159b3361Sopenharmony_ci            </li>
1792159b3361Sopenharmony_ci            <li><font color="#000000">Naoki
1793159b3361Sopenharmony_ci                Shibata: Bug fix in mpglib (decoding) lib: in some
1794159b3361Sopenharmony_ci                cases, MDCT coefficients from previous granule was incorrectly used for
1795159b3361Sopenharmony_ci                the next granule.</font>
1796159b3361Sopenharmony_ci            </li>
1797159b3361Sopenharmony_ci            <li><font color="#ff0000">ISO 7680 bit buffer
1798159b3361Sopenharmony_ci                limitation removed. It can be reactivated with
1799159b3361Sopenharmony_ci                "--strictly-enforce-ISO" Please report any trouble with high
1800159b3361Sopenharmony_ci                bitrates.</font>
1801159b3361Sopenharmony_ci            </li>
1802159b3361Sopenharmony_ci        </ul>
1803159b3361Sopenharmony_ci        <h3> LAME 3.80beta &nbsp;May 6 2000</h3>
1804159b3361Sopenharmony_ci        <ul>
1805159b3361Sopenharmony_ci            <li><font color="#ff0000">Takehiro
1806159b3361Sopenharmony_ci                Tominaga: more efficient and faster huffman encoding!</font>
1807159b3361Sopenharmony_ci            </li>
1808159b3361Sopenharmony_ci            <li><font color="#ff0000">Takehiro Tominaga and
1809159b3361Sopenharmony_ci                Mark Taylor: much improved short block compression!</font>
1810159b3361Sopenharmony_ci            </li>
1811159b3361Sopenharmony_ci            <li><font color="#000000">Tomasz Motylewski and
1812159b3361Sopenharmony_ci                Mark Taylor: MPEG2.5 now supported!</font>
1813159b3361Sopenharmony_ci            </li>
1814159b3361Sopenharmony_ci            <li><font color="#000000">Mark Taylor:
1815159b3361Sopenharmony_ci                incorporated Takehiro's bitstream.c! bitstream.c used by
1816159b3361Sopenharmony_ci                default, but old ISO bitstream code can also be used.</font>
1817159b3361Sopenharmony_ci            </li>
1818159b3361Sopenharmony_ci            <li><font color="#ff0000">Scott Manley
1819159b3361Sopenharmony_ci                and Mark Taylor: good resampling routine finaly in
1820159b3361Sopenharmony_ci                LAME. uses a 19 point FIR filter with Blackman
1821159b3361Sopenharmony_ci                window. Very slow for non integer resampling ratios.</font>
1822159b3361Sopenharmony_ci            </li>
1823159b3361Sopenharmony_ci            <li><font color="#000000">Iwasa Kazmi:&nbsp;
1824159b3361Sopenharmony_ci                fixed SIGBUS error: VBR and id3 tags were using data after it
1825159b3361Sopenharmony_ci                was free()'d.</font>
1826159b3361Sopenharmony_ci            </li>
1827159b3361Sopenharmony_ci            <li><font color="#ff0000">Robert
1828159b3361Sopenharmony_ci                Hegemann: Improved VBR tuning. #define
1829159b3361Sopenharmony_ci                RH_QUALITY_CONTROL and #RH_SIDE_VBR now the defaults.</font>
1830159b3361Sopenharmony_ci            </li>
1831159b3361Sopenharmony_ci            <li><font color="#000000">Robert
1832159b3361Sopenharmony_ci                Hegemann:&nbsp; LAME version string now added to
1833159b3361Sopenharmony_ci                ancillary data.</font>
1834159b3361Sopenharmony_ci            </li>
1835159b3361Sopenharmony_ci            <li>Kimmo Mustonen: VBR histogram support for Amiga.</li>
1836159b3361Sopenharmony_ci            <li>Casper Gripenberg: VBR stats (but not histogram)
1837159b3361Sopenharmony_ci                for DOS verson.
1838159b3361Sopenharmony_ci            </li>
1839159b3361Sopenharmony_ci            <li>Robert Hegemann: rare VBR overflow bug fixed.</li>
1840159b3361Sopenharmony_ci            <li>Zack: -F option strictly enforces the VBR min
1841159b3361Sopenharmony_ci                bitrate. Without -F, LAME will ignore the minimum bitrate
1842159b3361Sopenharmony_ci                when encoding analog silence.
1843159b3361Sopenharmony_ci            </li>
1844159b3361Sopenharmony_ci            <li>Shawn Riley: User can now specify a compression
1845159b3361Sopenharmony_ci                ratio (--comp &lt;arg&gt;) instead of a bit rate.&nbsp;
1846159b3361Sopenharmony_ci                Default settings based on a compression ratio of 11.0
1847159b3361Sopenharmony_ci            </li>
1848159b3361Sopenharmony_ci            <li>Mark Taylor: free format bitstreams can be
1849159b3361Sopenharmony_ci                created with --freeformat, and specify any integer bitrate from 8 to
1850159b3361Sopenharmony_ci                320kbs with -b.
1851159b3361Sopenharmony_ci            </li>
1852159b3361Sopenharmony_ci            <li>Mark Taylor: lame be used as a decoder (output raw pcm
1853159b3361Sopenharmony_ci                only): lame --decode input.mp3 output.pcm
1854159b3361Sopenharmony_ci            </li>
1855159b3361Sopenharmony_ci        </ul>
1856159b3361Sopenharmony_ci        <h3> LAME 3.70&nbsp; April 6 2000</h3>
1857159b3361Sopenharmony_ci        <ul>
1858159b3361Sopenharmony_ci            <li>"LAME 3.69beta" becomes LAME 3.70 "stable"</li>
1859159b3361Sopenharmony_ci        </ul>
1860159b3361Sopenharmony_ci        <h3> LAME 3.69beta&nbsp; April 6 2000</h3>
1861159b3361Sopenharmony_ci        <ul>
1862159b3361Sopenharmony_ci            <li>"spahm": default mode selection bug
1863159b3361Sopenharmony_ci                fixed. In some cases, lame was defaulting to regular stereo
1864159b3361Sopenharmony_ci                instead of jstereo when the user did not specify a mode.
1865159b3361Sopenharmony_ci            </li>
1866159b3361Sopenharmony_ci        </ul>
1867159b3361Sopenharmony_ci        <h3> LAME 3.68beta &nbsp;April 4 2000</h3>
1868159b3361Sopenharmony_ci        <ul>
1869159b3361Sopenharmony_ci            <li>Mark Taylor: mono encoding bug in DLL fixed.</li>
1870159b3361Sopenharmony_ci            <li>Ingo Saitz: bug in --cwlimit argument parsing fixed.</li>
1871159b3361Sopenharmony_ci            <li><font color="#ff0000">Scott Manly: bug in
1872159b3361Sopenharmony_ci                4-point resample code fixed.</font>
1873159b3361Sopenharmony_ci            </li>
1874159b3361Sopenharmony_ci        </ul>
1875159b3361Sopenharmony_ci        <h3> LAME 3.67beta &nbsp;March 27 2000</h3>
1876159b3361Sopenharmony_ci        <ul>
1877159b3361Sopenharmony_ci            <li><font color="#ff0000">Robert
1878159b3361Sopenharmony_ci                Hegemann: jstereo now enabled for MPEG2 encodings</font>
1879159b3361Sopenharmony_ci            </li>
1880159b3361Sopenharmony_ci            <li>Mark Taylor: old M/S stereo mode which used L/R maskings
1881159b3361Sopenharmony_ci                has been removed.
1882159b3361Sopenharmony_ci            </li>
1883159b3361Sopenharmony_ci            <li>Mark Taylor: Xing MPEG2 VBR headers now working.</li>
1884159b3361Sopenharmony_ci            <li><font color="#ff0000">Mark Taylor:&nbsp;
1885159b3361Sopenharmony_ci                When quantized coefficients are all 0 in a band, set scalefactors to 0
1886159b3361Sopenharmony_ci                also to save a few bits.</font>
1887159b3361Sopenharmony_ci            </li>
1888159b3361Sopenharmony_ci            <li><font color="#000000">Ingo Saitz:&nbsp;
1889159b3361Sopenharmony_ci                Problems with framesize calculation when using -f fast-math option
1890159b3361Sopenharmony_ci                fixed.</font>
1891159b3361Sopenharmony_ci            </li>
1892159b3361Sopenharmony_ci        </ul>
1893159b3361Sopenharmony_ci        <h3> LAME 3.66beta &nbsp;March 21 2000</h3>
1894159b3361Sopenharmony_ci        <ul>
1895159b3361Sopenharmony_ci            <li>Bug fixes in BladeEnc DLL, possible click in last mp3
1896159b3361Sopenharmony_ci                frame, VBR historgram display, byteswapping option, ASM quantize
1897159b3361Sopenharmony_ci                routines work for both float and double.
1898159b3361Sopenharmony_ci            </li>
1899159b3361Sopenharmony_ci        </ul>
1900159b3361Sopenharmony_ci        <h3> LAME 3.65beta&nbsp; March 17 2000</h3>
1901159b3361Sopenharmony_ci        <ul>
1902159b3361Sopenharmony_ci            <li>Enabled ASM version of quantize_xrpow() - accidently
1903159b3361Sopenharmony_ci                disabled in lame3.64.
1904159b3361Sopenharmony_ci            </li>
1905159b3361Sopenharmony_ci        </ul>
1906159b3361Sopenharmony_ci        <h3> LAME 3.64beta &nbsp;March 16 2000</h3>
1907159b3361Sopenharmony_ci        <ul>
1908159b3361Sopenharmony_ci            <li>Don Melton: id3v1.1 tags &amp; id3 bugfixes</li>
1909159b3361Sopenharmony_ci            <li><font color="#ff0000">Gabriel
1910159b3361Sopenharmony_ci                Bouvigne: L/R matching block type fix</font>
1911159b3361Sopenharmony_ci            </li>
1912159b3361Sopenharmony_ci            <li><font color="#ff0000">Bug fixed which was
1913159b3361Sopenharmony_ci                allowing quantized values to exceed the maximum when not using -h</font>
1914159b3361Sopenharmony_ci            </li>
1915159b3361Sopenharmony_ci            <li><font color="#3366ff">Mark Taylor: Fitlers
1916159b3361Sopenharmony_ci                based on polyphase filterbank. should be slightly better
1917159b3361Sopenharmony_ci                since the responce is independent of the blocktype, and they are
1918159b3361Sopenharmony_ci                slightly faster.</font>
1919159b3361Sopenharmony_ci            </li>
1920159b3361Sopenharmony_ci            <li>Mark Taylor: API: the API changed slightly - and
1921159b3361Sopenharmony_ci                this should be the final version. There is a new routine:
1922159b3361Sopenharmony_ci                lame_encode_buffer() which takes an arbritray sized input buffer,
1923159b3361Sopenharmony_ci                resamples &amp; filters if necessary, encodes, and returns the
1924159b3361Sopenharmony_ci                mp3buffer. There are also several new #defines, so it is
1925159b3361Sopenharmony_ci                possible to compile a simple encoding library with no decoding or file
1926159b3361Sopenharmony_ci                I/O or command line parsing. see the file API for details.
1927159b3361Sopenharmony_ci            </li>
1928159b3361Sopenharmony_ci            <li>Mark Taylor: MSVC stuff: lame.exe (with and
1929159b3361Sopenharmony_ci                without the frame analyzer) and the CDex lame_enc.dll
1930159b3361Sopenharmony_ci                should compile under MSVC. The MSVC5 project files may need
1931159b3361Sopenharmony_ci                some tweaking. In particular,
1932159b3361Sopenharmony_ci                you need to make sure LAMEPARSE, LAMESNDFILE and HAVEMPGLIB
1933159b3361Sopenharmony_ci                are defined. (and HAVEGTK for the GTK stuff).
1934159b3361Sopenharmony_ci            </li>
1935159b3361Sopenharmony_ci        </ul>
1936159b3361Sopenharmony_ci        <h3>LAME 3.63beta &nbsp;February 20 2000</h3>
1937159b3361Sopenharmony_ci        <ul>
1938159b3361Sopenharmony_ci            <li>Robert Hegemann: FPE with -h fixed?</li>
1939159b3361Sopenharmony_ci            <li>Mathey Hendry: FPE error catching for Cygwin,
1940159b3361Sopenharmony_ci                FPE fix for vbr mode and output to /dev/null
1941159b3361Sopenharmony_ci            </li>
1942159b3361Sopenharmony_ci            <li>Jeremy Hall: Fixed problems with input files
1943159b3361Sopenharmony_ci                where the number of samples is not known.
1944159b3361Sopenharmony_ci            </li>
1945159b3361Sopenharmony_ci            <li><font color="#3366ff">Mathew
1946159b3361Sopenharmony_ci                Hendry: ASM quantize_xrpow() for GNU i386</font>
1947159b3361Sopenharmony_ci            </li>
1948159b3361Sopenharmony_ci            <li><font color="#3366ff">Wilfried
1949159b3361Sopenharmony_ci                Behne quantize_xrpow ()for PowerPC and non-ASM</font>
1950159b3361Sopenharmony_ci            </li>
1951159b3361Sopenharmony_ci            <li><font color="#3366ff">Takehiro
1952159b3361Sopenharmony_ci                Tominaga: GOGO FFTs (not yet used?)</font>
1953159b3361Sopenharmony_ci            </li>
1954159b3361Sopenharmony_ci        </ul>
1955159b3361Sopenharmony_ci        <h3>LAME 3.62beta&nbsp; February 9 2000</h3>
1956159b3361Sopenharmony_ci        <ul>
1957159b3361Sopenharmony_ci            <li><font color="#000000">Iwasa Kazmi:&nbsp;
1958159b3361Sopenharmony_ci                frame analyzer short block display of single subblocks (press
1959159b3361Sopenharmony_ci                1,2 or 3)</font>
1960159b3361Sopenharmony_ci            </li>
1961159b3361Sopenharmony_ci            <li><font color="#000000">Ingo Saitz:&nbsp;
1962159b3361Sopenharmony_ci                --help option added, with output to stdout</font>
1963159b3361Sopenharmony_ci            </li>
1964159b3361Sopenharmony_ci            <li><font color="#ff0000">Alfred Weyers: short
1965159b3361Sopenharmony_ci                block AAC spreading function bug fixed</font>
1966159b3361Sopenharmony_ci            </li>
1967159b3361Sopenharmony_ci            <li><font color="#3366ff">Takehiro
1968159b3361Sopenharmony_ci                Tominaga: new scalefac data structure - improves performance!</font>
1969159b3361Sopenharmony_ci            </li>
1970159b3361Sopenharmony_ci            <li><font color="#ff0000">Lionel
1971159b3361Sopenharmony_ci                Bonnet: Bug fixed in MPEG2 scalefactor routine: scalefactors
1972159b3361Sopenharmony_ci                were being severly limited.</font>
1973159b3361Sopenharmony_ci            </li>
1974159b3361Sopenharmony_ci            <li><font color="#3366ff">Takehiro
1975159b3361Sopenharmony_ci                Tominaga: faster FFT routines from. These routines
1976159b3361Sopenharmony_ci                are also compatible with the GOGO routines, in case someone is
1977159b3361Sopenharmony_ci                interested in porting them back to LAME.</font>
1978159b3361Sopenharmony_ci            </li>
1979159b3361Sopenharmony_ci            <li><font color="#3366ff">Sigbj&oslash;rn
1980159b3361Sopenharmony_ci                Skj&aelig;ret, Takehiro Tominaga: faster pow() code.</font>
1981159b3361Sopenharmony_ci            </li>
1982159b3361Sopenharmony_ci            <li><font color="#ff0000">Joachim
1983159b3361Sopenharmony_ci                Kuebart: Found some unitialized variables that were effecting
1984159b3361Sopenharmony_ci                quality for encodings which did not use the -h option (now fixed).</font>
1985159b3361Sopenharmony_ci            </li>
1986159b3361Sopenharmony_ci            <li>Mark Taylor: More modularization work.&nbsp;&nbsp;
1987159b3361Sopenharmony_ci                It is now possible to use LAME as a library where you can set the
1988159b3361Sopenharmony_ci                encoding parameters directly and do your own file
1989159b3361Sopenharmony_ci                i/o.&nbsp; The calling program is now it's own mp3
1990159b3361Sopenharmony_ci                output. For an example of the LAME API, see main.c, or
1991159b3361Sopenharmony_ci                mp3rtp.c or mp3x.c. These can all be compiled as stand alone
1992159b3361Sopenharmony_ci                programs which link with libmp3lame.a.
1993159b3361Sopenharmony_ci            </li>
1994159b3361Sopenharmony_ci            <li>Felix vos Leitner: mp3rtp fixes.&nbsp;
1995159b3361Sopenharmony_ci                mp3rtp is a standalone program which will encode and stream with RTP.
1996159b3361Sopenharmony_ci            </li>
1997159b3361Sopenharmony_ci            <li>Robert Hegemann: Information written to stderr
1998159b3361Sopenharmony_ci                displaying exactly which type of lowpass filter (if any) is being used.
1999159b3361Sopenharmony_ci            </li>
2000159b3361Sopenharmony_ci            <li>Iwasa Kazmi: mpglib (the mpg123 decoder) scsfi
2001159b3361Sopenharmony_ci                decoding fixes.
2002159b3361Sopenharmony_ci            </li>
2003159b3361Sopenharmony_ci            <li>Takehiro Tominaga: More mpglib scsfi decoding
2004159b3361Sopenharmony_ci                fixes.
2005159b3361Sopenharmony_ci            </li>
2006159b3361Sopenharmony_ci        </ul>
2007159b3361Sopenharmony_ci        <h3>LAME 3.61beta&nbsp; January 14 2000</h3>
2008159b3361Sopenharmony_ci        <ul>
2009159b3361Sopenharmony_ci            <li><font color="#ff0000">Mark Taylor: Fixed bug
2010159b3361Sopenharmony_ci                with lowpass filters when using VBR with a 64kbs or lower min bitrate
2011159b3361Sopenharmony_ci                setting.</font>
2012159b3361Sopenharmony_ci            </li>
2013159b3361Sopenharmony_ci            <li><font color="#ff0000">Takehiro
2014159b3361Sopenharmony_ci                Tominaga: more efficient huffman encoding splitting.</font>
2015159b3361Sopenharmony_ci            </li>
2016159b3361Sopenharmony_ci        </ul>
2017159b3361Sopenharmony_ci        <h3> LAME 3.60beta&nbsp; January 9 2000</h3>
2018159b3361Sopenharmony_ci        <ul>
2019159b3361Sopenharmony_ci            <li>Mark Taylor: Distribution now comes with self
2020159b3361Sopenharmony_ci                test. Needs work to be automated, see 'make test' in Makefile.
2021159b3361Sopenharmony_ci            </li>
2022159b3361Sopenharmony_ci            <li><font color="#ff0000">Mark Taylor: AAC
2023159b3361Sopenharmony_ci                spreading function now the default</font>
2024159b3361Sopenharmony_ci            </li>
2025159b3361Sopenharmony_ci            <li>Gabriel Bouvigne: updated HTML docs</li>
2026159b3361Sopenharmony_ci            <li>Felix von Leitner: compute correct file length from Xing
2027159b3361Sopenharmony_ci                header (if present) when input file is a mp3 file
2028159b3361Sopenharmony_ci            </li>
2029159b3361Sopenharmony_ci            <li>Felix von Leitner: mp3rtp (standalone) program now
2030159b3361Sopenharmony_ci                included. Not yet tested. mp3rtp
2031159b3361Sopenharmony_ci                ip:port:ttl &lt;infile&gt;&nbsp;&nbsp;
2032159b3361Sopenharmony_ci                /dev/null will stream directly to ip:port using RTP.
2033159b3361Sopenharmony_ci            </li>
2034159b3361Sopenharmony_ci        </ul>
2035159b3361Sopenharmony_ci        <h3>LAME 3.59beta &nbsp;January 4 2000</h3>
2036159b3361Sopenharmony_ci        <ul>
2037159b3361Sopenharmony_ci            <li>Takehiro Tominaga: --noath option.&nbsp;
2038159b3361Sopenharmony_ci                Disables ATH maskings.
2039159b3361Sopenharmony_ci            </li>
2040159b3361Sopenharmony_ci            <li>Gabriel Bouvigne: updated HTML docs.</li>
2041159b3361Sopenharmony_ci            <li>Iwasa Kazmi: makefile fixes</li>
2042159b3361Sopenharmony_ci            <li>Mark Taylor: Fixed bug where first frame of data
2043159b3361Sopenharmony_ci                was always overwritten with 0's. Thanks to 'gol'
2044159b3361Sopenharmony_ci            </li>
2045159b3361Sopenharmony_ci            <li><font color="#ff0000">Mark Taylor:&nbsp;
2046159b3361Sopenharmony_ci                bug fixes in mid/side masking ratios (thanks to Menno Bakker)</font>
2047159b3361Sopenharmony_ci            </li>
2048159b3361Sopenharmony_ci            <li>Mark Taylor: replaced norm_l, norm_s table data
2049159b3361Sopenharmony_ci                with formulas.
2050159b3361Sopenharmony_ci            </li>
2051159b3361Sopenharmony_ci        </ul>
2052159b3361Sopenharmony_ci        <h3>LAME 3.58beta &nbsp;December 13 1999</h3>
2053159b3361Sopenharmony_ci        <ul>
2054159b3361Sopenharmony_ci            <li><font color="#ff0000">Segher
2055159b3361Sopenharmony_ci                Boessenkool: More accurate quantization procedure!&nbsp;
2056159b3361Sopenharmony_ci                Enabled with -h.</font>
2057159b3361Sopenharmony_ci            </li>
2058159b3361Sopenharmony_ci            <li><font color="#3366ff">Mathew Hendry, Acy
2059159b3361Sopenharmony_ci                Stapp and Takehiro Tominaga: ASM optimizations for quantize_xrpow and
2060159b3361Sopenharmony_ci                quantize_xrpow_ISO.</font>
2061159b3361Sopenharmony_ci            </li>
2062159b3361Sopenharmony_ci            <li>Chuck Zenkus: "encoder inside" logo on web page</li>
2063159b3361Sopenharmony_ci            <li>Mark Taylor:&nbsp; a couple people have
2064159b3361Sopenharmony_ci                asked for this.&nbsp; Allow LAME to overide
2065159b3361Sopenharmony_ci                VBR_min_bitrate if analog_silence detected.&nbsp;&nbsp;
2066159b3361Sopenharmony_ci                Analog_silence defined a la Robert:&nbsp;&nbsp;
2067159b3361Sopenharmony_ci                energy &lt; ATH.
2068159b3361Sopenharmony_ci            </li>
2069159b3361Sopenharmony_ci            <li>An Van Lam: Valid bitrates were being printed for layer 2,
2070159b3361Sopenharmony_ci                not layer 3!
2071159b3361Sopenharmony_ci            </li>
2072159b3361Sopenharmony_ci            <li>Ethan Yeo: Makefile.MSVC updated</li>
2073159b3361Sopenharmony_ci            <li>Mark Stephens: updated all MSVC project files</li>
2074159b3361Sopenharmony_ci            <li>Robert Hegemann: lowpass and highpass filters
2075159b3361Sopenharmony_ci                can be enabled with --lowpass, --highpass
2076159b3361Sopenharmony_ci            </li>
2077159b3361Sopenharmony_ci            <li><font color="#ff0000">Mark Taylor:&nbsp;
2078159b3361Sopenharmony_ci                MS switching is now smoother: ms_ratio average over 4 granules</font>
2079159b3361Sopenharmony_ci            </li>
2080159b3361Sopenharmony_ci            <li><font color="#ff0000">Takehiro
2081159b3361Sopenharmony_ci                Tominaga: Scalefactor pre-emphasis fixed (and now turned back
2082159b3361Sopenharmony_ci                on)</font>
2083159b3361Sopenharmony_ci            </li>
2084159b3361Sopenharmony_ci            <li><font color="#ff0000">Takehiro
2085159b3361Sopenharmony_ci                Tominaga: Bug in M/S maskings: switch to turn on
2086159b3361Sopenharmony_ci                stereo demasking code was buggy.</font>
2087159b3361Sopenharmony_ci            </li>
2088159b3361Sopenharmony_ci        </ul>
2089159b3361Sopenharmony_ci        <h3>LAME 3.57beta &nbsp;November 22 1999</h3>
2090159b3361Sopenharmony_ci        <ul>
2091159b3361Sopenharmony_ci            <li>Sigbj&oslash;rn Skj&aelig;ret, patch to allow
2092159b3361Sopenharmony_ci                encoding from 8bit input files when using LIBSNDFILE
2093159b3361Sopenharmony_ci            </li>
2094159b3361Sopenharmony_ci            <li>Mark Taylor: Automatic downsampling to nearest valid
2095159b3361Sopenharmony_ci                samplerate.
2096159b3361Sopenharmony_ci            </li>
2097159b3361Sopenharmony_ci            <li>Mark Taylor: Scalefactor bands demarked on MDCT plot in
2098159b3361Sopenharmony_ci                frameanalyzer
2099159b3361Sopenharmony_ci            </li>
2100159b3361Sopenharmony_ci            <li>Mark Taylor: Scalefactor preemphasis disabled for
2101159b3361Sopenharmony_ci                now.&nbsp; The algorithm was often doing more harm than
2102159b3361Sopenharmony_ci                good.
2103159b3361Sopenharmony_ci            </li>
2104159b3361Sopenharmony_ci        </ul>
2105159b3361Sopenharmony_ci        <h3>LAME 3.56beta &nbsp;November 19 1999</h3>
2106159b3361Sopenharmony_ci        <ul>
2107159b3361Sopenharmony_ci            <li>Kimmo Mustonen: portabilty code cleanup.</li>
2108159b3361Sopenharmony_ci            <li>Vladimir Marek: id3 genre patch.</li>
2109159b3361Sopenharmony_ci            <li>Conrad Sanderson: new applypatch script.</li>
2110159b3361Sopenharmony_ci            <li>Mark Taylor: Initial window type now "STOP_TYPE" to reduce
2111159b3361Sopenharmony_ci                initial attenuation. This is needed because the new encoder
2112159b3361Sopenharmony_ci                delay is so short. With a NORM_TYPE, the first 240 samples
2113159b3361Sopenharmony_ci                would be attenuated.
2114159b3361Sopenharmony_ci            </li>
2115159b3361Sopenharmony_ci            <li>Mark Taylor: Padding at end of file now adjusted
2116159b3361Sopenharmony_ci                (hopefully!) to produce as little padding as possible while still
2117159b3361Sopenharmony_ci                guarantee all input samples are encoded.
2118159b3361Sopenharmony_ci            </li>
2119159b3361Sopenharmony_ci            <li><font color="#ff0000">Takehiro
2120159b3361Sopenharmony_ci                Tominaga: Reduced shortblock extra bit allocation formulas by
2121159b3361Sopenharmony_ci                10% since new huffman coding is at least 10% more efficient.</font>
2122159b3361Sopenharmony_ci            </li>
2123159b3361Sopenharmony_ci        </ul>
2124159b3361Sopenharmony_ci        <h3>LAME 3.55beta &nbsp;November 11 1999</h3>
2125159b3361Sopenharmony_ci        <ul>
2126159b3361Sopenharmony_ci            <li>Albert Faber: updated BladeEnc.dll</li>
2127159b3361Sopenharmony_ci            <li>
2128159b3361Sopenharmony_ci                Mark Taylor: Simple lowpass filter added to linear
2129159b3361Sopenharmony_ci                downsampling routine.
2130159b3361Sopenharmony_ci            </li>
2131159b3361Sopenharmony_ci            <li>Nils Faerber: updated man page.</li>
2132159b3361Sopenharmony_ci            <li>
2133159b3361Sopenharmony_ci                Mark Taylor: All floating point variables are delcared
2134159b3361Sopenharmony_ci                FLOAT or FLOAT8. Change the definition of FLOAT8 in
2135159b3361Sopenharmony_ci                machine.h to run at 32bit preceision.
2136159b3361Sopenharmony_ci            </li>
2137159b3361Sopenharmony_ci            <li>
2138159b3361Sopenharmony_ci                Mark Taylor: Bug (introduced in 3.54beta) in
2139159b3361Sopenharmony_ci                stereo-&gt;mono downsampling fixed.
2140159b3361Sopenharmony_ci            </li>
2141159b3361Sopenharmony_ci        </ul>
2142159b3361Sopenharmony_ci        <h3>LAME 3.54beta &nbsp;November 8 1999</h3>
2143159b3361Sopenharmony_ci        <ul>
2144159b3361Sopenharmony_ci            <li>
2145159b3361Sopenharmony_ci                Mark Taylor: Encoder delay is now 48 samples. Can be adjusted to 
2146159b3361Sopenharmony_ci                1160 to sync with FhG (see ENCDELAY in encoder.h) This is kind 
2147159b3361Sopenharmony_ci                of amazing, since if Takehiro put his MDCT/filterbank routine in 
2148159b3361Sopenharmony_ci                a decoder, we could have a total delay of only 96 samples.
2149159b3361Sopenharmony_ci            </li>
2150159b3361Sopenharmony_ci            <li>
2151159b3361Sopenharmony_ci                <font color="#ff0000">Mark Taylor: More inconstancies found and 
2152159b3361Sopenharmony_ci                fixed in MPEG2 tables.</font>
2153159b3361Sopenharmony_ci            </li>
2154159b3361Sopenharmony_ci            <li>
2155159b3361Sopenharmony_ci                Mark Taylor: Resampling from an MP3 input file now works. But we 
2156159b3361Sopenharmony_ci                still dont have a lowpass filter so dont expect good results.
2157159b3361Sopenharmony_ci            </li>
2158159b3361Sopenharmony_ci        </ul>
2159159b3361Sopenharmony_ci        <h3>LAME 3.53beta &nbsp;November 8 1999</h3>
2160159b3361Sopenharmony_ci        <ul>
2161159b3361Sopenharmony_ci            <li>
2162159b3361Sopenharmony_ci                <font color="#3366ff">Takehiro Tominaga: Fixed MPEG2 problem in 
2163159b3361Sopenharmony_ci                new MDCT routines. Takehiro's combined filterbank/MDCT routine is 
2164159b3361Sopenharmony_ci                now the default. Removes all buffering from psymodel.c and the
2165159b3361Sopenharmony_ci                filterbanks/MDCT routines.</font>
2166159b3361Sopenharmony_ci            </li>
2167159b3361Sopenharmony_ci        </ul>
2168159b3361Sopenharmony_ci        <h3>LAME 3.52beta &nbsp;November 8 1999</h3>
2169159b3361Sopenharmony_ci        <ul>
2170159b3361Sopenharmony_ci            <li>
2171159b3361Sopenharmony_ci                By permission of copyright holders of all GPL code in
2172159b3361Sopenharmony_ci                LAME, all GPL code is now released under a modified version
2173159b3361Sopenharmony_ci                of the LGPL (see the README file)
2174159b3361Sopenharmony_ci            </li>
2175159b3361Sopenharmony_ci            <li>
2176159b3361Sopenharmony_ci                By popular demand, all C++ comments changed to C style
2177159b3361Sopenharmony_ci                comments
2178159b3361Sopenharmony_ci            </li>
2179159b3361Sopenharmony_ci            <li>
2180159b3361Sopenharmony_ci                Mark Taylor: Linear resampling now works. Use
2181159b3361Sopenharmony_ci                --resample to set an output samplerate different from the input
2182159b3361Sopenharmony_ci                samplerate. (doesn't seem to work with mp3 input files, and
2183159b3361Sopenharmony_ci                there is no lowpass filter, so dont expect good results just yet)
2184159b3361Sopenharmony_ci            </li>
2185159b3361Sopenharmony_ci            <li>
2186159b3361Sopenharmony_ci                <font color="#3366ff">Takehiro Tominaga: Faster Huffman encoding 
2187159b3361Sopenharmony_ci                routines</font>
2188159b3361Sopenharmony_ci            </li>
2189159b3361Sopenharmony_ci        </ul>
2190159b3361Sopenharmony_ci        <font color="#3366ff">The following changes are disabled
2191159b3361Sopenharmony_ci        because of MPEG2 problems. But to try them, set MDCTDELAY=48
2192159b3361Sopenharmony_ci        in encoder.h, instead of MDCTDELAY=528.:</font>
2193159b3361Sopenharmony_ci        <ul>
2194159b3361Sopenharmony_ci            <li>
2195159b3361Sopenharmony_ci                <font color="#3366ff">Takehiro Tominaga: New MDCT routines with 
2196159b3361Sopenharmony_ci                shorter delay (48 samples instead of 528) and even faster than 
2197159b3361Sopenharmony_ci                the old routines.</font>
2198159b3361Sopenharmony_ci            </li>
2199159b3361Sopenharmony_ci            <li>
2200159b3361Sopenharmony_ci                <font color="#3366ff">Takehiro Tominaga: Removed extra buffering 
2201159b3361Sopenharmony_ci                in psymodel.c</font>
2202159b3361Sopenharmony_ci            </li>
2203159b3361Sopenharmony_ci        </ul>
2204159b3361Sopenharmony_ci        <h3>LAME 3.51 &nbsp;November 7 1999</h3>
2205159b3361Sopenharmony_ci        <ul>
2206159b3361Sopenharmony_ci            <li>
2207159b3361Sopenharmony_ci                Takehiro Tominaga: Bug in quantize.c absolute threshold of
2208159b3361Sopenharmony_ci                hearing calculation for non-44.1 kHz input files.
2209159b3361Sopenharmony_ci            </li>
2210159b3361Sopenharmony_ci        </ul>
2211159b3361Sopenharmony_ci        <h3>LAME 3.50 &nbsp;November 1 1999</h3>
2212159b3361Sopenharmony_ci        <ul>
2213159b3361Sopenharmony_ci            <li>LAME 3.37beta becomes official LAME 3.50 release</li>
2214159b3361Sopenharmony_ci        </ul>
2215159b3361Sopenharmony_ci        <h3>LAME 3.37beta &nbsp;November 1 1999</h3>
2216159b3361Sopenharmony_ci        <ul>
2217159b3361Sopenharmony_ci            <li>
2218159b3361Sopenharmony_ci                <font color="#ff0000">Lionel Bonnet: Found severe bug in MPEG2 
2219159b3361Sopenharmony_ci                Short block SNR.</font>
2220159b3361Sopenharmony_ci            </li>
2221159b3361Sopenharmony_ci            <li>Sergey Sapelin: VBR Toc improvement.</li>
2222159b3361Sopenharmony_ci            <li>Sergey Dubov: fskip() routine</li>
2223159b3361Sopenharmony_ci            <li>
2224159b3361Sopenharmony_ci                Conrad Sanderson: replacement for filterbank.c. Not much faster 
2225159b3361Sopenharmony_ci                but amazingly simpler.
2226159b3361Sopenharmony_ci            </li>
2227159b3361Sopenharmony_ci        </ul>
2228159b3361Sopenharmony_ci        <h3>LAME 3.36beta &nbsp;October 25 1999</h3>
2229159b3361Sopenharmony_ci        <ul>
2230159b3361Sopenharmony_ci            <li>Albert Faber: more MSVC and BladeDLL updates</li>
2231159b3361Sopenharmony_ci            <li>Kimmo Mustonen: Much code cleanup and Amiga updates</li>
2232159b3361Sopenharmony_ci            <li>Anton Oleynikov: Borland C updates</li>
2233159b3361Sopenharmony_ci            <li>
2234159b3361Sopenharmony_ci                Mark Taylor: More stdin fixes: For some reason, forward 
2235159b3361Sopenharmony_ci                fseek()'s would fail when used on pipes even though it is okay
2236159b3361Sopenharmony_ci                with redirection from "&lt;". So I changed all the forward
2237159b3361Sopenharmony_ci                fseek()'s to use fread(). This should improve stdin support for 
2238159b3361Sopenharmony_ci                wav/aiff files. If you know the input file is raw pcm, you can 
2239159b3361Sopenharmony_ci                still use the '-r' option to avoid *all* seeking of any kind.
2240159b3361Sopenharmony_ci            </li>
2241159b3361Sopenharmony_ci        </ul>
2242159b3361Sopenharmony_ci        <h3>LAME 3.35beta &nbsp;October 21 1999</h3>
2243159b3361Sopenharmony_ci        <ul>
2244159b3361Sopenharmony_ci            <li>
2245159b3361Sopenharmony_ci                <font color="#ff0000">Leonid Kulakov: Serious bug in MPEG2 
2246159b3361Sopenharmony_ci                scalefactor band tables fixed.</font>
2247159b3361Sopenharmony_ci            </li>
2248159b3361Sopenharmony_ci            <li>
2249159b3361Sopenharmony_ci                Portability patches from: Anton Oleynikov, Sigbj&oslash;rn 
2250159b3361Sopenharmony_ci                Skj&aelig;ret, Mathew Hendry, Richard Gorton
2251159b3361Sopenharmony_ci            </li>
2252159b3361Sopenharmony_ci            <li>Alfred Weyers: compiler options, updated timestatus.</li>
2253159b3361Sopenharmony_ci            <li>Albert Faber: BladeDll and other updates (new machine.h).</li>
2254159b3361Sopenharmony_ci            <li>Monty: updated Makefile to fix gcc inline math bug.</li>
2255159b3361Sopenharmony_ci        </ul>
2256159b3361Sopenharmony_ci        <h3>LAME 3.34beta &nbsp;October 12 1999</h3>
2257159b3361Sopenharmony_ci        <ul>
2258159b3361Sopenharmony_ci            <li>
2259159b3361Sopenharmony_ci                <font color="#ff0000">Mark Taylor: Bug fixed: minimum bitrate in 
2260159b3361Sopenharmony_ci                VBR mode could be ignored for a few frames.</font>
2261159b3361Sopenharmony_ci            </li>
2262159b3361Sopenharmony_ci            <li><font color="#ff0000">Mark Taylor: New (minor) VBR tunings.</font></li>
2263159b3361Sopenharmony_ci            <li>
2264159b3361Sopenharmony_ci                Tim Ruddick: New wav/aiff header parsing routines. Better parsing 
2265159b3361Sopenharmony_ci                and fewer fseek()'s.
2266159b3361Sopenharmony_ci            </li>
2267159b3361Sopenharmony_ci            <li>Anton Oleynikov: patches to work with Borland C</li>
2268159b3361Sopenharmony_ci            <li>
2269159b3361Sopenharmony_ci                <font color="#ff0000">Gabriel Bouvigne: Experimental voice option 
2270159b3361Sopenharmony_ci                enabled with --voice</font>
2271159b3361Sopenharmony_ci            </li>
2272159b3361Sopenharmony_ci        </ul>
2273159b3361Sopenharmony_ci        <h3>LAME 3.33beta &nbsp;October 11 1999</h3>
2274159b3361Sopenharmony_ci        <ul>
2275159b3361Sopenharmony_ci            <li>
2276159b3361Sopenharmony_ci                <font color="#ff0000">Robert Hegemann: RH VBR mode now the 
2277159b3361Sopenharmony_ci                default and only VBR mode. The new code will always quantize to 
2278159b3361Sopenharmony_ci                0 distortion and the quality is increased by reducing the 
2279159b3361Sopenharmony_ci                masking from the psy-model. -X0 is still the default for now.</font>
2280159b3361Sopenharmony_ci            </li>
2281159b3361Sopenharmony_ci            <li><font color="#ff0000">Robert Hegemann: new -X5 mode</font></li>
2282159b3361Sopenharmony_ci            <li>Mathew Hendry: New timing code, removes the need for HAVETIMES</li>
2283159b3361Sopenharmony_ci            <li>
2284159b3361Sopenharmony_ci                <font color="#3366ff">Mathew
2285159b3361Sopenharmony_ci                Hendry: assembler quantize_xrpow for Windows</font>
2286159b3361Sopenharmony_ci            </li>
2287159b3361Sopenharmony_ci            <li>Iwasa Kazmi: stdin/stdout patch for Windows</li>
2288159b3361Sopenharmony_ci            <li>
2289159b3361Sopenharmony_ci                Mark Taylor: New option: "--athonly" will ignore the psy-model 
2290159b3361Sopenharmony_ci                output and use only the absolute threshold of hearing for the
2291159b3361Sopenharmony_ci                masking.
2292159b3361Sopenharmony_ci            </li>
2293159b3361Sopenharmony_ci        </ul>
2294159b3361Sopenharmony_ci        <h3>LAME 3.32beta &nbsp;October 8 1999</h3>
2295159b3361Sopenharmony_ci        <ul>
2296159b3361Sopenharmony_ci            <li>
2297159b3361Sopenharmony_ci                <font color="#3366ff">Takehiro Tominaga: faster long block 
2298159b3361Sopenharmony_ci                spreading function convolution for non 44.1 kHz sampling 
2299159b3361Sopenharmony_ci                frequencies, and faster short block spreading function 
2300159b3361Sopenharmony_ci                convolution for all sampling frequencies.</font>
2301159b3361Sopenharmony_ci            </li>
2302159b3361Sopenharmony_ci            <li>
2303159b3361Sopenharmony_ci                <font color="#ff0000">Takehiro Tominaga: Completly rewritten 
2304159b3361Sopenharmony_ci                huffman table selection and count_bits(). More efficient table 
2305159b3361Sopenharmony_ci                selection results in many more bits per frame.</font>
2306159b3361Sopenharmony_ci            </li>
2307159b3361Sopenharmony_ci            <li>
2308159b3361Sopenharmony_ci                <font color="#ff0000">Takehiro Tominaga: More efficient scalefac 
2309159b3361Sopenharmony_ci                compress setting.</font>
2310159b3361Sopenharmony_ci            </li>
2311159b3361Sopenharmony_ci            <li><font color="#3366ff">Mike Cheng: new calc_noise2()</font></li>
2312159b3361Sopenharmony_ci            <li>Alfred Weyers: patch for timestatus() seconds rollover</li>
2313159b3361Sopenharmony_ci        </ul>
2314159b3361Sopenharmony_ci        <h3>LAME 3.31beta &nbsp;September 28 1999</h3>
2315159b3361Sopenharmony_ci        <ul>
2316159b3361Sopenharmony_ci            <li>
2317159b3361Sopenharmony_ci                Albert Faber: updated his BladeDLL code. This allows LAME to be 
2318159b3361Sopenharmony_ci                compiled into a BladeEnc compatiable .dll.
2319159b3361Sopenharmony_ci            </li>
2320159b3361Sopenharmony_ci            <li>
2321159b3361Sopenharmony_ci                <font color="#3366ff">Mike Cheng: faster l3psycho_ener() 
2322159b3361Sopenharmony_ci                routine.</font>
2323159b3361Sopenharmony_ci            </li>
2324159b3361Sopenharmony_ci            <li>Sigbj&oslash;rn Skj&aelig;ret: more code cleanup.</li>
2325159b3361Sopenharmony_ci        </ul>
2326159b3361Sopenharmony_ci        <h3>LAME 3.30beta &nbsp;September 27 1999</h3>
2327159b3361Sopenharmony_ci        <ul>
2328159b3361Sopenharmony_ci            <li>
2329159b3361Sopenharmony_ci                Conrad Sanderson: ID3 tag code added (type 'lame' for 
2330159b3361Sopenharmony_ci                instructions)
2331159b3361Sopenharmony_ci            </li>
2332159b3361Sopenharmony_ci            <li>new mdct.c from Mike Cheng (no faster, but much cleaner code)</li>
2333159b3361Sopenharmony_ci            <li>
2334159b3361Sopenharmony_ci                Mathew Hendry: Microsoft nmake makefile and a couple other
2335159b3361Sopenharmony_ci                changes for MSVC
2336159b3361Sopenharmony_ci            </li>
2337159b3361Sopenharmony_ci            <li>
2338159b3361Sopenharmony_ci                More modulization work: One input sound file interface handles 
2339159b3361Sopenharmony_ci                mp3's, uncompressed audio, with or without LIBSNDFILE. Fixes 
2340159b3361Sopenharmony_ci                (hopefully) a bunch of file I/O bugs introduced in 3.29 (Mark Taylor)
2341159b3361Sopenharmony_ci            </li>
2342159b3361Sopenharmony_ci            <li>
2343159b3361Sopenharmony_ci                LAME will now print valid samplerate/bitrate combinations
2344159b3361Sopenharmony_ci                (Mark Taylor)
2345159b3361Sopenharmony_ci            </li>
2346159b3361Sopenharmony_ci            <li>stdin/stdout fix for OS/2 (Paul Hartman)</li>
2347159b3361Sopenharmony_ci            <li>
2348159b3361Sopenharmony_ci                For mp3 input files, total frames estimated based on
2349159b3361Sopenharmony_ci                filesize and first frame bitrate. (Mark Taylor)
2350159b3361Sopenharmony_ci            </li>
2351159b3361Sopenharmony_ci            <li>
2352159b3361Sopenharmony_ci                Updated all functions with new style prototypes.
2353159b3361Sopenharmony_ci                (Sigbj&oslash;rn Skj&aelig;ret)
2354159b3361Sopenharmony_ci            </li>
2355159b3361Sopenharmony_ci        </ul>
2356159b3361Sopenharmony_ci        <h3>LAME 3.29beta &nbsp;September 21 1999</h3>
2357159b3361Sopenharmony_ci        <ul>
2358159b3361Sopenharmony_ci            <li>
2359159b3361Sopenharmony_ci                <font color="#ff0000">Bug in bigv_bitcount fixed. Loop.c was 
2360159b3361Sopenharmony_ci                overestimating the number of bits needed, resulting in wasted 
2361159b3361Sopenharmony_ci                bits every frame. (Leonid A. Kulakov)</font>
2362159b3361Sopenharmony_ci            </li>
2363159b3361Sopenharmony_ci            <li>
2364159b3361Sopenharmony_ci                <font color="#ff0000">Bug in *_choose_table() fixed&nbsp; These 
2365159b3361Sopenharmony_ci                routines would not sellect the optimal Huffman table in some 
2366159b3361Sopenharmony_ci                cases.&nbsp;&nbsp; (Leonid A. Kulakov)</font>
2367159b3361Sopenharmony_ci            </li>
2368159b3361Sopenharmony_ci            <li><font color="#ff0000">Tuning of ATH normalization (macik)</font></li>
2369159b3361Sopenharmony_ci            <li>
2370159b3361Sopenharmony_ci                Removed unused variables and fixed function prototypes
2371159b3361Sopenharmony_ci                (Sigbj&oslash;rn Skj&aelig;ret)
2372159b3361Sopenharmony_ci            </li>
2373159b3361Sopenharmony_ci            <li>
2374159b3361Sopenharmony_ci                Sami Farin sent a .wav file that LAME built in support choked 
2375159b3361Sopenharmony_ci                on. I added a slightly more sophisticated wav header parsing to 
2376159b3361Sopenharmony_ci                handle this, but if you have trouble, use libsndfile.
2377159b3361Sopenharmony_ci            </li>
2378159b3361Sopenharmony_ci            <li>
2379159b3361Sopenharmony_ci                Resampling hooks and options added. Buffering
2380159b3361Sopenharmony_ci                and resampling routines need to be written.
2381159b3361Sopenharmony_ci            </li>
2382159b3361Sopenharmony_ci            <li>
2383159b3361Sopenharmony_ci                LAME will now take an mp3 file as input. When resampling code 
2384159b3361Sopenharmony_ci                is working, LAME will be able to (for example) convert a high 
2385159b3361Sopenharmony_ci                bitrate stereo mp3 to a low bitrate mono mp3 for streaming.
2386159b3361Sopenharmony_ci            </li>
2387159b3361Sopenharmony_ci        </ul>
2388159b3361Sopenharmony_ci        <h3>LAME 3.28beta &nbsp;September 15 1999</h3>
2389159b3361Sopenharmony_ci        <ul>
2390159b3361Sopenharmony_ci            <li>
2391159b3361Sopenharmony_ci                <font color="#ff0000">Serious bug fixed in
2392159b3361Sopenharmony_ci                high frequency MDCT coefficients. Huffman coding was
2393159b3361Sopenharmony_ci                reversing the order of the count1 block quadruples.
2394159b3361Sopenharmony_ci                (Leonid A. Kulakov)</font>
2395159b3361Sopenharmony_ci            </li>
2396159b3361Sopenharmony_ci            <li>
2397159b3361Sopenharmony_ci                nint() problems under Tru64 unix fixed and preprocessor
2398159b3361Sopenharmony_ci                variable HAVE_NINT removed. (Bob Bell)
2399159b3361Sopenharmony_ci            </li>
2400159b3361Sopenharmony_ci            <li>
2401159b3361Sopenharmony_ci                Compiler warning fixes and code cleanup (Sigbj&oslash;rn 
2402159b3361Sopenharmony_ci                Skj&aelig;ret, Lionel Bonnet)
2403159b3361Sopenharmony_ci            </li>
2404159b3361Sopenharmony_ci            <li>
2405159b3361Sopenharmony_ci                USAGE file now includes suggestions for
2406159b3361Sopenharmony_ci                downsampling. For low bitrate encodings, proper downsampling
2407159b3361Sopenharmony_ci                can give dramatically better results. (John Hayward-Warburton)
2408159b3361Sopenharmony_ci            </li>
2409159b3361Sopenharmony_ci        </ul>
2410159b3361Sopenharmony_ci        <h3>LAME 3.27beta &nbsp;September 12 1999</h3>
2411159b3361Sopenharmony_ci        <ul>
2412159b3361Sopenharmony_ci            <li>
2413159b3361Sopenharmony_ci                Several bugs in encode.c and l3bitstream.c fixed by Lionel
2414159b3361Sopenharmony_ci                Bonnet.
2415159b3361Sopenharmony_ci            </li>
2416159b3361Sopenharmony_ci            <li>
2417159b3361Sopenharmony_ci                Bugs in new VBR (#define RH) formula for mono input file
2418159b3361Sopenharmony_ci                and mid/side encoding fixed.
2419159b3361Sopenharmony_ci            </li>
2420159b3361Sopenharmony_ci        </ul>
2421159b3361Sopenharmony_ci        <h3>LAME 3.26beta &nbsp;September 10 1999</h3>
2422159b3361Sopenharmony_ci        <ul>
2423159b3361Sopenharmony_ci            <li>
2424159b3361Sopenharmony_ci                The "-m m" option (mono .mp3 file) will automatically mix
2425159b3361Sopenharmony_ci                left and right channels if the input file is stereo. (Alfred
2426159b3361Sopenharmony_ci                Weyers)
2427159b3361Sopenharmony_ci            </li>
2428159b3361Sopenharmony_ci            <li>
2429159b3361Sopenharmony_ci                <font color="#ff0000">New quant_compare algorithm (method for 
2430159b3361Sopenharmony_ci                deciding which of two quantizations is better) enabled with -X4 
2431159b3361Sopenharmony_ci                (Greg Maxwell)</font>
2432159b3361Sopenharmony_ci            </li>
2433159b3361Sopenharmony_ci            <li>
2434159b3361Sopenharmony_ci                <font color="#ff0000">New mid/side VBR bit allocation formula. 
2435159b3361Sopenharmony_ci                Mid channel bits are set by the quality requirements, and then 
2436159b3361Sopenharmony_ci                the side channel uses a reduced number of bits (in a proportion 
2437159b3361Sopenharmony_ci                coming from the fixed bitrate code). This might not be optimal,
2438159b3361Sopenharmony_ci                but it should be pretty good and no one knows what the optimal 
2439159b3361Sopenharmony_ci                solution should be. (Greg Maxwell)</font>
2440159b3361Sopenharmony_ci            </li>
2441159b3361Sopenharmony_ci            <li>
2442159b3361Sopenharmony_ci                <font color="#ff0000">New VBR (#define RH) tunings based on
2443159b3361Sopenharmony_ci                detailed listening tests by Macik and Greg Maxwell.</font>
2444159b3361Sopenharmony_ci            </li>
2445159b3361Sopenharmony_ci            <li>
2446159b3361Sopenharmony_ci                Sigbj&oslash;rn Skj&aelig;ret fixed several
2447159b3361Sopenharmony_ci                compiler warnings (which turned out to be potential bugs)
2448159b3361Sopenharmony_ci            </li>
2449159b3361Sopenharmony_ci            <li>Takehiro Tominaga fixed a low bitrate bug in reduce_side()</li>
2450159b3361Sopenharmony_ci            <li>Alfred Weyers fixed some buffer overflows.</li>
2451159b3361Sopenharmony_ci            <li>
2452159b3361Sopenharmony_ci                <font color="#ff0000">New ATH (absolute threshold of hearing) 
2453159b3361Sopenharmony_ci                formula replaces buggy ISO code, and adds analog silence 
2454159b3361Sopenharmony_ci                treatment (removal of coefficients below below ATH). These are 
2455159b3361Sopenharmony_ci                turned on by default but have not been fully tested. (Robert 
2456159b3361Sopenharmony_ci                Hegemann)</font>
2457159b3361Sopenharmony_ci            </li>
2458159b3361Sopenharmony_ci            <li>
2459159b3361Sopenharmony_ci                <font color="#ff0000">Bug in short block
2460159b3361Sopenharmony_ci                spreading function fixed. (Robert Hegemann)</font>
2461159b3361Sopenharmony_ci            </li>
2462159b3361Sopenharmony_ci        </ul>
2463159b3361Sopenharmony_ci        <h3>LAME 3.25beta &nbsp;August 22 1999</h3>
2464159b3361Sopenharmony_ci        <ul>
2465159b3361Sopenharmony_ci            <li>
2466159b3361Sopenharmony_ci                Sigbj&oslash;rn Skj&aelig;ret fixed a zero byte malloc call. 
2467159b3361Sopenharmony_ci                This bug was introduced in 3.24 and causes problems on non 
2468159b3361Sopenharmony_ci                Linux systems.
2469159b3361Sopenharmony_ci            </li>
2470159b3361Sopenharmony_ci            <li>
2471159b3361Sopenharmony_ci                Bit allocation routines would sometimes allocate more than
2472159b3361Sopenharmony_ci                4095 bits to one channel of one granule. A couple of people
2473159b3361Sopenharmony_ci                reported problems that might be caused by this, especially at 
2474159b3361Sopenharmony_ci                higher  bitrates.
2475159b3361Sopenharmony_ci            </li>
2476159b3361Sopenharmony_ci            <li>
2477159b3361Sopenharmony_ci                Nils Faerber updated the man page and fixed many of the
2478159b3361Sopenharmony_ci                compiler warnings.
2479159b3361Sopenharmony_ci            </li>
2480159b3361Sopenharmony_ci        </ul>
2481159b3361Sopenharmony_ci        <h3>LAME 3.24beta &nbsp;August 15 1999</h3>
2482159b3361Sopenharmony_ci        <ul>
2483159b3361Sopenharmony_ci            <li>
2484159b3361Sopenharmony_ci                This release contains the following new code (for
2485159b3361Sopenharmony_ci                developers) which is disabled by default:
2486159b3361Sopenharmony_ci            </li>
2487159b3361Sopenharmony_ci            <li>
2488159b3361Sopenharmony_ci                Hegemann: Completely overhauled VBR code. Now computes exact 
2489159b3361Sopenharmony_ci                number of bits required for the given qualty and then quantized 
2490159b3361Sopenharmony_ci                with the appropriate bitrate.
2491159b3361Sopenharmony_ci            </li>
2492159b3361Sopenharmony_ci            <li>Several new quantization quality measures.</li>
2493159b3361Sopenharmony_ci        </ul>
2494159b3361Sopenharmony_ci        <h3>LAME 3.23beta &nbsp;August 8 1999</h3>
2495159b3361Sopenharmony_ci        <ul>
2496159b3361Sopenharmony_ci            <li>
2497159b3361Sopenharmony_ci                Very nice continuously updated VBR histogram display from
2498159b3361Sopenharmony_ci                Iwasa Kazmi. (disabled with --nohist).
2499159b3361Sopenharmony_ci            </li>
2500159b3361Sopenharmony_ci            <li>
2501159b3361Sopenharmony_ci                More modulerization work. The encoding engine can now be 
2502159b3361Sopenharmony_ci                compiled into libmp3lame, but the interface is awkward.
2503159b3361Sopenharmony_ci            </li>
2504159b3361Sopenharmony_ci            <li>
2505159b3361Sopenharmony_ci                <font color="#ff0000">Bug fixed in FFT Hann window formula 
2506159b3361Sopenharmony_ci                (Leonid A. Kulakov).</font>
2507159b3361Sopenharmony_ci            </li>
2508159b3361Sopenharmony_ci            <li>
2509159b3361Sopenharmony_ci                New LAME logo on the download page. Created by Chris Michalisles.
2510159b3361Sopenharmony_ci            </li>
2511159b3361Sopenharmony_ci            <li>
2512159b3361Sopenharmony_ci                <font color="#ff0000">Several VBR algorithm
2513159b3361Sopenharmony_ci                improvements from Robert Hegemann. New quantization noise
2514159b3361Sopenharmony_ci                metrics and VBR quality measure takes into account mid/side
2515159b3361Sopenharmony_ci                encoding. Should produce smaller files with the same quality,
2516159b3361Sopenharmony_ci                especially when using jstereo.</font>
2517159b3361Sopenharmony_ci            </li>
2518159b3361Sopenharmony_ci        </ul>
2519159b3361Sopenharmony_ci        <h3>LAME 3.22beta &nbsp;July 27 1999</h3>
2520159b3361Sopenharmony_ci        <ul>
2521159b3361Sopenharmony_ci            <li>
2522159b3361Sopenharmony_ci                Downsampling (stereo to mono) bug with MPEG2 fixed. (Mike 
2523159b3361Sopenharmony_ci                Oliphant)
2524159b3361Sopenharmony_ci            </li>
2525159b3361Sopenharmony_ci            <li>
2526159b3361Sopenharmony_ci                Downsampling now merges L &amp; R channels - before it
2527159b3361Sopenharmony_ci                only took the L channel.
2528159b3361Sopenharmony_ci            </li>
2529159b3361Sopenharmony_ci            <li>
2530159b3361Sopenharmony_ci                More modularization and code cleanup from Albert Faber and
2531159b3361Sopenharmony_ci                myself.
2532159b3361Sopenharmony_ci            </li>
2533159b3361Sopenharmony_ci            <li>
2534159b3361Sopenharmony_ci                Input filesize limit removed for raw pcm input
2535159b3361Sopenharmony_ci                files. For other file types, LAME will still only read the
2536159b3361Sopenharmony_ci                first 2^32 samples, (27 hours of playing time at 44.1 kHz).
2537159b3361Sopenharmony_ci            </li>
2538159b3361Sopenharmony_ci        </ul>
2539159b3361Sopenharmony_ci        <h3>LAME 3.21beta &nbsp;July 26 1999</h3>
2540159b3361Sopenharmony_ci        <ul>
2541159b3361Sopenharmony_ci            <li>
2542159b3361Sopenharmony_ci                <font color="#ff0000">Correct Mid/Side masking thresholds for 
2543159b3361Sopenharmony_ci                JSTEREO mode! This is enabled with-h. It makes LAME about 20% 
2544159b3361Sopenharmony_ci                slower since it computes psycho-acoustics for L,R Mid and Side 
2545159b3361Sopenharmony_ci                channels.</font>
2546159b3361Sopenharmony_ci            </li>
2547159b3361Sopenharmony_ci            <li>
2548159b3361Sopenharmony_ci                <font color="#ff0000">"Analog silence"
2549159b3361Sopenharmony_ci                threshold added. Keeps VBR from upping the bitrate during
2550159b3361Sopenharmony_ci                very quite passages. (Robert.Hegemann)</font>
2551159b3361Sopenharmony_ci            </li>
2552159b3361Sopenharmony_ci            <li>
2553159b3361Sopenharmony_ci                <font color="#ff0000">New VBR quality setting from Robert 
2554159b3361Sopenharmony_ci                Hegemann. It is based on the idea that distortion at lower bit 
2555159b3361Sopenharmony_ci                rates sounds worse than at higher bitrates, and so the allowed 
2556159b3361Sopenharmony_ci                distortion (VBR quality setting) is proportional to the bitrate.
2557159b3361Sopenharmony_ci                Because of this, default minimum bitrate is now 32kbs.</font>
2558159b3361Sopenharmony_ci            </li>
2559159b3361Sopenharmony_ci            <li>
2560159b3361Sopenharmony_ci                <font color="#ff0000">Expermental subblock gain code enabled 
2561159b3361Sopenharmony_ci                with -Z.</font>
2562159b3361Sopenharmony_ci            </li>
2563159b3361Sopenharmony_ci            <li>
2564159b3361Sopenharmony_ci                New "-r" option for raw pcm input files. With -r, LAME will not 
2565159b3361Sopenharmony_ci                do any fseek()'s or look for wav and aiff headers on
2566159b3361Sopenharmony_ci                the input file.
2567159b3361Sopenharmony_ci            </li>
2568159b3361Sopenharmony_ci            <li>
2569159b3361Sopenharmony_ci                Bug fixes in mp3x (frame analyzer) for viewing frames near
2570159b3361Sopenharmony_ci                end of the file.
2571159b3361Sopenharmony_ci            </li>
2572159b3361Sopenharmony_ci            <li>
2573159b3361Sopenharmony_ci                Bug fixed to allow setting the sampling rate of raw pcm
2574159b3361Sopenharmony_ci                input files.
2575159b3361Sopenharmony_ci            </li>
2576159b3361Sopenharmony_ci        </ul>
2577159b3361Sopenharmony_ci        <h3>LAME 3.20beta &nbsp;July 19 1999</h3>
2578159b3361Sopenharmony_ci        <ul>
2579159b3361Sopenharmony_ci            <li>
2580159b3361Sopenharmony_ci                Bug in get_audio.c fixed. Libsndfile wrappers would not compile 
2581159b3361Sopenharmony_ci                (Miguel Revilla Rodriguez)
2582159b3361Sopenharmony_ci            </li>
2583159b3361Sopenharmony_ci            <li>
2584159b3361Sopenharmony_ci                Nils Faerber found some unitialized variables and some
2585159b3361Sopenharmony_ci                wierd extranous computations in filter_subband, now fixed.
2586159b3361Sopenharmony_ci                This was causing seg faults on some machines.
2587159b3361Sopenharmony_ci            </li>
2588159b3361Sopenharmony_ci        </ul>
2589159b3361Sopenharmony_ci        <h3> LAME 3.19beta &nbsp;July 18 1999</h3>
2590159b3361Sopenharmony_ci        <ul>
2591159b3361Sopenharmony_ci            <li>
2592159b3361Sopenharmony_ci                <font color="#ff0000">Oops! Robert Hegemann immediatly found a 
2593159b3361Sopenharmony_ci                bug in the new (old -Z option) quantization code. calc_noise1 
2594159b3361Sopenharmony_ci                was not returning tot_noise, so non ms-stereo frames were 
2595159b3361Sopenharmony_ci                buggy.</font>
2596159b3361Sopenharmony_ci            </li>
2597159b3361Sopenharmony_ci        </ul>
2598159b3361Sopenharmony_ci        <h3>LAME 3.18beta &nbsp;July 17 1999</h3>
2599159b3361Sopenharmony_ci        <ul>
2600159b3361Sopenharmony_ci            <li>
2601159b3361Sopenharmony_ci                <font color="#ff0000">Many psycho-acoustic bug fixes. Dan 
2602159b3361Sopenharmony_ci                Nelson discovered a bug in MPEG2: For short blocks, the code 
2603159b3361Sopenharmony_ci                assumes 42 partition bands. MPEG1 sometimes has less, MPEG2 
2604159b3361Sopenharmony_ci                can have more. In MPEG1, this bug would not have effected the 
2605159b3361Sopenharmony_ci                output if your compiler initializes static variables to 0 on 
2606159b3361Sopenharmony_ci                creation. In MPEG2 it leads to array out-of-bounds access 
2607159b3361Sopenharmony_ci                errors. Finally, there was a related bug in MPEG1/MPEG2, short
2608159b3361Sopenharmony_ci                &amp; long blocks where the energy above 16 kHz was all added to
2609159b3361Sopenharmony_ci                partition band 0. (the lowest frequeny partition band!)</font>
2610159b3361Sopenharmony_ci            </li>
2611159b3361Sopenharmony_ci            <li>
2612159b3361Sopenharmony_ci                <font color="#ff0000">The -Z option (Gabriel Bouvigne's idea of 
2613159b3361Sopenharmony_ci                using total quantization noise to choose between two
2614159b3361Sopenharmony_ci                quantizations with the same value of "over") is now the default. 
2615159b3361Sopenharmony_ci                I believe this helps remove the trilling sound in Jan's 
2616159b3361Sopenharmony_ci                testsignal4.wav. The quality of testsignal2.wav and
2617159b3361Sopenharmony_ci                testsignal4.wav are now better than Xing and getting closer to FhG.</font>
2618159b3361Sopenharmony_ci            </li>
2619159b3361Sopenharmony_ci            <li>
2620159b3361Sopenharmony_ci                Bug fixes in frame &amp; sample count for downsampling
2621159b3361Sopenharmony_ci                mode. (ben "jacobs")
2622159b3361Sopenharmony_ci            </li>
2623159b3361Sopenharmony_ci            <li>Patches to improve modulization. (ben "jacobs")</li>
2624159b3361Sopenharmony_ci        </ul>
2625159b3361Sopenharmony_ci        <h3>LAME 3.17beta &nbsp;July 11 1999</h3>
2626159b3361Sopenharmony_ci        <ul>
2627159b3361Sopenharmony_ci            <li>
2628159b3361Sopenharmony_ci                substantial code cleanup towards goal of making LAME more
2629159b3361Sopenharmony_ci                modular.
2630159b3361Sopenharmony_ci            </li>
2631159b3361Sopenharmony_ci        </ul>
2632159b3361Sopenharmony_ci        <h3>LAME 3.16beta &nbsp;July 11 1999</h3>
2633159b3361Sopenharmony_ci        <ul>
2634159b3361Sopenharmony_ci            <li>
2635159b3361Sopenharmony_ci                <font color="#ff0000">New tunings of window switching, and
2636159b3361Sopenharmony_ci                better bit allocation based on pe. (Jan Rafaj. improves both
2637159b3361Sopenharmony_ci                testsignal2.wav and testsignal4.wav).</font>
2638159b3361Sopenharmony_ci            </li>
2639159b3361Sopenharmony_ci            <li>
2640159b3361Sopenharmony_ci                <font color="#ff0000">Bug in mid/side quantization when side 
2641159b3361Sopenharmony_ci                channel was zero fixed. (Albert Faber)</font>
2642159b3361Sopenharmony_ci            </li>
2643159b3361Sopenharmony_ci            <li>
2644159b3361Sopenharmony_ci                Removed some extranous computations in l3psy.c (Robert
2645159b3361Sopenharmony_ci                Hegemann)
2646159b3361Sopenharmony_ci            </li>
2647159b3361Sopenharmony_ci            <li>
2648159b3361Sopenharmony_ci                More detailed timing status info, including hours display.
2649159b3361Sopenharmony_ci                (Sakari Ailus) and percentage indicator (Conrad Sanderson).
2650159b3361Sopenharmony_ci            </li>
2651159b3361Sopenharmony_ci            <li>
2652159b3361Sopenharmony_ci                <font color="#3366ff">Window_subband and calc_noise1,
2653159b3361Sopenharmony_ci                calc_noise2 speedups. Quantize_xrpow speedup should be 
2654159b3361Sopenharmony_ci                significant on non GNU/intel systems. (Mike Cheng)</font>
2655159b3361Sopenharmony_ci            </li>
2656159b3361Sopenharmony_ci            <li>
2657159b3361Sopenharmony_ci                <font color="#3366ff">Better initial guess for VBR bitrate. 
2658159b3361Sopenharmony_ci                Should speed up VBR encoding. (Gabriel Bouvigne)</font>
2659159b3361Sopenharmony_ci            </li>
2660159b3361Sopenharmony_ci            <li>
2661159b3361Sopenharmony_ci                More advanced .wav header parsing. fixes bugs involving click 
2662159b3361Sopenharmony_ci                in first frame. (Robert.Hegemann)
2663159b3361Sopenharmony_ci            </li>
2664159b3361Sopenharmony_ci            <li>
2665159b3361Sopenharmony_ci                Correct filesize and total frame computation when using
2666159b3361Sopenharmony_ci                LIBSNDFILE (ben "jacobs")
2667159b3361Sopenharmony_ci            </li>
2668159b3361Sopenharmony_ci            <li>
2669159b3361Sopenharmony_ci                Click in last frame (buffering problem) when using
2670159b3361Sopenharmony_ci                libsndfile fixed.
2671159b3361Sopenharmony_ci            </li>
2672159b3361Sopenharmony_ci            <li>
2673159b3361Sopenharmony_ci                Audio I/O code overhauled. There is now a uniform audio i/o 
2674159b3361Sopenharmony_ci                interface to libsndfile or the LAME built in wav/aiff
2675159b3361Sopenharmony_ci                routines. All audio i/o code localized to get_audio.c.
2676159b3361Sopenharmony_ci            </li>
2677159b3361Sopenharmony_ci        </ul>
2678159b3361Sopenharmony_ci        <h3>LAME 3.15beta</h3>
2679159b3361Sopenharmony_ci        <ul>
2680159b3361Sopenharmony_ci            <li>
2681159b3361Sopenharmony_ci                times()/clock() problem fixed for non-unix OS. (Ben "Jacobs")
2682159b3361Sopenharmony_ci            </li>
2683159b3361Sopenharmony_ci            <li>
2684159b3361Sopenharmony_ci                Fixed uninitialized pe[] when using fast mode. (Ben "Jacobs")
2685159b3361Sopenharmony_ci            </li>
2686159b3361Sopenharmony_ci        </ul>
2687159b3361Sopenharmony_ci        <h3>LAME 3.13 &nbsp;June 24 1999</h3>
2688159b3361Sopenharmony_ci        <ul>
2689159b3361Sopenharmony_ci            <li>Patches for BeOS from Gertjan van Ratingen.</li>
2690159b3361Sopenharmony_ci            <li>Makefile info for OS/2 Warp 4.0 (from dink.org).</li>
2691159b3361Sopenharmony_ci            <li>Status display now based on wall clock time, not cpu time.</li>
2692159b3361Sopenharmony_ci            <li>
2693159b3361Sopenharmony_ci                mem_alloc no longer allocates twice as much memory as
2694159b3361Sopenharmony_ci                needed (Jan Peman).
2695159b3361Sopenharmony_ci            </li>
2696159b3361Sopenharmony_ci        </ul>
2697159b3361Sopenharmony_ci        <h3>LAME 3.12pre9</h3>
2698159b3361Sopenharmony_ci        <ul>
2699159b3361Sopenharmony_ci            <li>
2700159b3361Sopenharmony_ci                Updated BLADEDLL code to handle recent changes (Albert
2701159b3361Sopenharmony_ci                Faber).
2702159b3361Sopenharmony_ci            </li>
2703159b3361Sopenharmony_ci            <li>
2704159b3361Sopenharmony_ci                Bug fixed in parsing options when not using GTK (Albert
2705159b3361Sopenharmony_ci                Faber).
2706159b3361Sopenharmony_ci            </li>
2707159b3361Sopenharmony_ci            <li>
2708159b3361Sopenharmony_ci                <font color="#ff0000">MPEG2 Layer III psycho acoustics now 
2709159b3361Sopenharmony_ci                working.</font>
2710159b3361Sopenharmony_ci            </li>
2711159b3361Sopenharmony_ci            <li>
2712159b3361Sopenharmony_ci                <font color="#3366ff">Improved huffman encoding Chris 
2713159b3361Sopenharmony_ci                Matrakidis. (10% faster). I dont know how he finds these 
2714159b3361Sopenharmony_ci                improvements! LAME with full quality now encodes
2715159b3361Sopenharmony_ci                faster than real time on my PII 266.</font>
2716159b3361Sopenharmony_ci            </li>
2717159b3361Sopenharmony_ci            <li>
2718159b3361Sopenharmony_ci                Fixed time display when encoding takes more than 60
2719159b3361Sopenharmony_ci                minutes.
2720159b3361Sopenharmony_ci            </li>
2721159b3361Sopenharmony_ci        </ul>
2722159b3361Sopenharmony_ci        <h3>LAME 3.12pre8</h3>
2723159b3361Sopenharmony_ci        <ul>
2724159b3361Sopenharmony_ci            <li>
2725159b3361Sopenharmony_ci                <font color="#ff0000">New <a href="gpsycho/ms_stereo.html">
2726159b3361Sopenharmony_ci                mid/side stereo</a> criterion. LAME will use mid/side stereo 
2727159b3361Sopenharmony_ci                only when the difference between L &amp; R masking thresholds 
2728159b3361Sopenharmony_ci                (averaged over all scalefactors) is less then 5db. In several 
2729159b3361Sopenharmony_ci                test samples it does a very good job mimicking the FhG 
2730159b3361Sopenharmony_ci                encoder.</font>
2731159b3361Sopenharmony_ci            </li>
2732159b3361Sopenharmony_ci            <li>
2733159b3361Sopenharmony_ci                <font color="#ff0000">Bug in mid/side stereo fixed: independent 
2734159b3361Sopenharmony_ci                variation of mid &amp; side channel scalefactors disabled. 
2735159b3361Sopenharmony_ci                Because of the way outer_loop is currently coded, when encoding 
2736159b3361Sopenharmony_ci                mid/side coefficietns using left/right thresholds, you have 
2737159b3361Sopenharmony_ci                to vary the scalefactors simultaneously.</font>
2738159b3361Sopenharmony_ci            </li>
2739159b3361Sopenharmony_ci            <li>
2740159b3361Sopenharmony_ci                <font color="#ff0000">Bug in side/mid energy
2741159b3361Sopenharmony_ci                ratio calculation fixed. (Thanks to Robert Hegemann)</font>
2742159b3361Sopenharmony_ci            </li>
2743159b3361Sopenharmony_ci            <li>
2744159b3361Sopenharmony_ci                Default mode is stereo (not jstereo) if bitrate is chosen
2745159b3361Sopenharmony_ci                as 192kbs or higher. Tero Auvinen first pointed out that FhG
2746159b3361Sopenharmony_ci                seems to think at 160kbs, their encoder is so good it doesn't 
2747159b3361Sopenharmony_ci                need jstereo tricks. Since LAME is not as good as FhG, I am 
2748159b3361Sopenharmony_ci                going to claim that 192kbs LAME is so good it doens't need 
2749159b3361Sopenharmony_ci                jstereo tricks, and thus it is disabled by default.
2750159b3361Sopenharmony_ci            </li>
2751159b3361Sopenharmony_ci            <li>
2752159b3361Sopenharmony_ci                WAV header parsing for big-endian machines, and automatic
2753159b3361Sopenharmony_ci                detection of big-endian machines. (Thanks to Sigbj&oslash;rn 
2754159b3361Sopenharmony_ci                Skj&aelig;ret).
2755159b3361Sopenharmony_ci            </li>
2756159b3361Sopenharmony_ci            <li>added 56 sample delay to sync LAME with FhG.</li>
2757159b3361Sopenharmony_ci            <li>MP3x (frame analyzer) can now handle MPEG2 streams.</li>
2758159b3361Sopenharmony_ci        </ul>
2759159b3361Sopenharmony_ci        <h3>LAME 3.12pre7</h3>
2760159b3361Sopenharmony_ci        <ul>
2761159b3361Sopenharmony_ci            <li>
2762159b3361Sopenharmony_ci                MPEG2 layer III now working! lower bit rates (down to 8kbs) 
2763159b3361Sopenharmony_ci                and 3 more sampling frequencies: 16000, 22050, 24000Hz. Quality 
2764159b3361Sopenharmony_ci                is poor - the psy-model does not yet work with these
2765159b3361Sopenharmony_ci                sampling frequencies.
2766159b3361Sopenharmony_ci            </li>
2767159b3361Sopenharmony_ci            <li>
2768159b3361Sopenharmony_ci                Fixed "ERROR: outer_loop(): huff_bits &lt; 0." bug
2769159b3361Sopenharmony_ci                when using VBR.
2770159b3361Sopenharmony_ci            </li>
2771159b3361Sopenharmony_ci            <li>
2772159b3361Sopenharmony_ci                bash and sh scripts to run LAME on multiple files now
2773159b3361Sopenharmony_ci                included. (from Robert Hegemann and Gerhard Wesp respectively)
2774159b3361Sopenharmony_ci            </li>
2775159b3361Sopenharmony_ci            <li>
2776159b3361Sopenharmony_ci                bug fix in encoding times for longer files from&nbsp;
2777159b3361Sopenharmony_ci                (Alvaro Martinez Echevarria)
2778159b3361Sopenharmony_ci            </li>
2779159b3361Sopenharmony_ci            <li>yet another segfault in the frame analyzer fixed.</li>
2780159b3361Sopenharmony_ci            <li>
2781159b3361Sopenharmony_ci                ISO psy-model/bit allocation routines removed. This allowed 
2782159b3361Sopenharmony_ci                makeframe() to be made much simpler, and most of the complicated 
2783159b3361Sopenharmony_ci                buffering is now gone. Eventually I would like the encoding
2784159b3361Sopenharmony_ci                engine to be a stand alone library.
2785159b3361Sopenharmony_ci            </li>
2786159b3361Sopenharmony_ci        </ul>
2787159b3361Sopenharmony_ci        <h3>LAME 3.12pre6</h3>
2788159b3361Sopenharmony_ci        <ul>
2789159b3361Sopenharmony_ci            <li>
2790159b3361Sopenharmony_ci                <font color="#ff0000">Better VBR
2791159b3361Sopenharmony_ci                tuning. Find minimum bitrate with distortion less than the
2792159b3361Sopenharmony_ci                allows maximum. A minimum bit rate is imposed on frames with
2793159b3361Sopenharmony_ci                short blocks (where the measured distortion can not be
2794159b3361Sopenharmony_ci                trusted). A minimum frame bitrate can be specified
2795159b3361Sopenharmony_ci                with -b, default=64kbs.</font>
2796159b3361Sopenharmony_ci            </li>
2797159b3361Sopenharmony_ci            <li>
2798159b3361Sopenharmony_ci                <a href="http://www.zip.com.au/%7Eerikd/libsndfile">LIBSNDFILE</a>
2799159b3361Sopenharmony_ci                support. With libsndfile, LAME can encode almost all sound
2800159b3361Sopenharmony_ci                formats. Albert Faber did the work for this, including
2801159b3361Sopenharmony_ci                getting libsndfile running under win32.
2802159b3361Sopenharmony_ci            </li>
2803159b3361Sopenharmony_ci            <li>CRC checksum now working! (Thanks to Johannes Overmann)</li>
2804159b3361Sopenharmony_ci            <li>frame analyzer will now work with mono .mp3 files</li>
2805159b3361Sopenharmony_ci            <li><font color="#3366ff">more code tweeks from Jan Peman.</font></li>
2806159b3361Sopenharmony_ci            <li>
2807159b3361Sopenharmony_ci                <font color="#3366ff">Compaq-Alpha(Linux) fixes and speedups 
2808159b3361Sopenharmony_ci                from Nils Faerber.</font>
2809159b3361Sopenharmony_ci            </li>
2810159b3361Sopenharmony_ci            <li>
2811159b3361Sopenharmony_ci                <font color="#3366ff">Faster bin_search_StepSize from Juha 
2812159b3361Sopenharmony_ci                Laukala.</font>
2813159b3361Sopenharmony_ci            </li>
2814159b3361Sopenharmony_ci            <li>
2815159b3361Sopenharmony_ci                <font color="#3366ff">Faster quantize() from Mike Cheng</font>
2816159b3361Sopenharmony_ci            </li>
2817159b3361Sopenharmony_ci            <li>
2818159b3361Sopenharmony_ci                <font color="#3366ff">Faster
2819159b3361Sopenharmony_ci                quantize_xrpow() from Chris Matrakidis. xrpow_flag removed
2820159b3361Sopenharmony_ci                since this option is now on by default.</font>
2821159b3361Sopenharmony_ci            </li>
2822159b3361Sopenharmony_ci            <li>Fixed .wav header parsing from Nils Faerber.</li>
2823159b3361Sopenharmony_ci            <li>
2824159b3361Sopenharmony_ci                Xing VBR frame info header code from Albert
2825159b3361Sopenharmony_ci                Faber. "Xing" and "LAME 3.12" embedded in first
2826159b3361Sopenharmony_ci                frame.
2827159b3361Sopenharmony_ci            </li>
2828159b3361Sopenharmony_ci            <li>
2829159b3361Sopenharmony_ci                <font color="#ff0000">Bug in VBR bit allocation based on "over" 
2830159b3361Sopenharmony_ci                value fixed.</font>
2831159b3361Sopenharmony_ci            </li>
2832159b3361Sopenharmony_ci        </ul>
2833159b3361Sopenharmony_ci        <h3>LAME 3.11 &nbsp;June 3 1999</h3>
2834159b3361Sopenharmony_ci        <ul>
2835159b3361Sopenharmony_ci            <li>Almost all warnings (-Wall) now fixed! (Thanks to Jan Peman)</li>
2836159b3361Sopenharmony_ci            <li>
2837159b3361Sopenharmony_ci                More coding improvements from Gabriel Bouvigne and Warren
2838159b3361Sopenharmony_ci                Toomey.
2839159b3361Sopenharmony_ci            </li>
2840159b3361Sopenharmony_ci            <li>
2841159b3361Sopenharmony_ci                <font color="#ff0000">VBR (variable bit rate). Increases bit 
2842159b3361Sopenharmony_ci                rate for short blocks and for frames where the number of bands 
2843159b3361Sopenharmony_ci                containing audible distortion is greater than a given value. 
2844159b3361Sopenharmony_ci                Much tuning needs to be done.</font>
2845159b3361Sopenharmony_ci            </li>
2846159b3361Sopenharmony_ci            <li>Patch to remove all atan() calls from James Droppo.</li>
2847159b3361Sopenharmony_ci        </ul>
2848159b3361Sopenharmony_ci        <h3>LAME 3.10 &nbsp;May 30 1999</h3>
2849159b3361Sopenharmony_ci        <ul>
2850159b3361Sopenharmony_ci            <li>
2851159b3361Sopenharmony_ci                <font color="#3366ff">Fast mode
2852159b3361Sopenharmony_ci                (-f) disables psycho-acoustic model for real time encoding on
2853159b3361Sopenharmony_ci                older machines. Thanks to Lauri Ahonen who first sent a patch
2854159b3361Sopenharmony_ci                for this.</font>
2855159b3361Sopenharmony_ci            </li>
2856159b3361Sopenharmony_ci            <li>
2857159b3361Sopenharmony_ci                <font color="#ff0000">New bit reservoir usage scheme to 
2858159b3361Sopenharmony_ci                accommodate the new pre-echo detection formulas.</font>
2859159b3361Sopenharmony_ci            </li>
2860159b3361Sopenharmony_ci            <li>
2861159b3361Sopenharmony_ci                <font color="#ff0000">Tuning of AWS and ENER_AWS pre-echo 
2862159b3361Sopenharmony_ci                formulas by Gabriel Bouvigne and myself. They work great! now 
2863159b3361Sopenharmony_ci                on by default.</font>
2864159b3361Sopenharmony_ci            </li>
2865159b3361Sopenharmony_ci            <li>
2866159b3361Sopenharmony_ci                In jstereo, force blocktypes for left &amp; right
2867159b3361Sopenharmony_ci                channels to be identical. FhG seems to do this. It
2868159b3361Sopenharmony_ci                can be disabled with "-d".
2869159b3361Sopenharmony_ci            </li>
2870159b3361Sopenharmony_ci            <li>Patches to compile MP3x under win32 (Thanks to Albert Faber).</li>
2871159b3361Sopenharmony_ci            <li>
2872159b3361Sopenharmony_ci                <font color="#3366ff">bin_serach_stepsize
2873159b3361Sopenharmony_ci                limited to a quantizationStepSize of -210 through 45.</font>
2874159b3361Sopenharmony_ci            </li>
2875159b3361Sopenharmony_ci            <li>
2876159b3361Sopenharmony_ci                <font color="#ff0000">outer_loop() will now vary Mid &amp; Side 
2877159b3361Sopenharmony_ci                scalefactors independently. Can lead to better quantizations, 
2878159b3361Sopenharmony_ci                but it is slower (twice as many quantizations to look at). 
2879159b3361Sopenharmony_ci                Running with "-m f" does not need this and will run at the 
2880159b3361Sopenharmony_ci                old speed</font>
2881159b3361Sopenharmony_ci            </li>
2882159b3361Sopenharmony_ci            <li>
2883159b3361Sopenharmony_ci                <font color="#ff0000">Bug in inner_loop
2884159b3361Sopenharmony_ci                would allow quantizations larger than allowed. (introduced in
2885159b3361Sopenharmony_ci                lame3.04, now fixed.)</font>
2886159b3361Sopenharmony_ci            </li>
2887159b3361Sopenharmony_ci            <li>Updated HTML documentation from Gabriel Bouvigne.</li>
2888159b3361Sopenharmony_ci            <li>Unix man page from William Schelter.</li>
2889159b3361Sopenharmony_ci            <li>
2890159b3361Sopenharmony_ci                <font color="#ff0000">numlines[] bug fixed. (Thanks to Rafael 
2891159b3361Sopenharmony_ci                Luebbert, MPecker author).</font>
2892159b3361Sopenharmony_ci            </li>
2893159b3361Sopenharmony_ci            <li>
2894159b3361Sopenharmony_ci                <font color="#3366ff">Quantization speed improvements from Chris
2895159b3361Sopenharmony_ci                Matrakidis.</font>
2896159b3361Sopenharmony_ci            </li>
2897159b3361Sopenharmony_ci            <li>
2898159b3361Sopenharmony_ci                <font color="#ff0000">When comparing quantizations with the same
2899159b3361Sopenharmony_ci                number of bands with audible distortion, use the one with the 
2900159b3361Sopenharmony_ci                largest scalefactors, not the first one outer_loop
2901159b3361Sopenharmony_ci                happened to find.</font>
2902159b3361Sopenharmony_ci            </li>
2903159b3361Sopenharmony_ci            <li>
2904159b3361Sopenharmony_ci                Improved defination of best quantization when using -f
2905159b3361Sopenharmony_ci                (fast mode).
2906159b3361Sopenharmony_ci            </li>
2907159b3361Sopenharmony_ci            <li>
2908159b3361Sopenharmony_ci                subblock code now working. But no algorithm to
2909159b3361Sopenharmony_ci                choose subblock gains yet.
2910159b3361Sopenharmony_ci            </li>
2911159b3361Sopenharmony_ci            <li>
2912159b3361Sopenharmony_ci                Linux now segfaults on floating point exceptions. Should 
2913159b3361Sopenharmony_ci                prevent me from releasing binaries that crash on other 
2914159b3361Sopenharmony_ci                operating systems.
2915159b3361Sopenharmony_ci            </li>
2916159b3361Sopenharmony_ci        </ul>
2917159b3361Sopenharmony_ci        <h3>LAME 3.04 &nbsp;May 22 1999</h3>
2918159b3361Sopenharmony_ci        <ul>
2919159b3361Sopenharmony_ci            <li>Preliminary documentation from Gabriel Bouvigne.</li>
2920159b3361Sopenharmony_ci            <li>
2921159b3361Sopenharmony_ci                <font color="#3366ff">I wouldn't have thought it was possible, 
2922159b3361Sopenharmony_ci                but now there are even more speed improvements from Chris 
2923159b3361Sopenharmony_ci                Matrakidis! Removed one FFT when using joint stereo, and many
2924159b3361Sopenharmony_ci                improvements in loop.c.</font>
2925159b3361Sopenharmony_ci            </li>
2926159b3361Sopenharmony_ci            <li>
2927159b3361Sopenharmony_ci                "Fake" ms_stereo mode renamed "Force" ms_stereo since it forces
2928159b3361Sopenharmony_ci                mid/side stereo on all frames. For some music this is said to be
2929159b3361Sopenharmony_ci                a problem, but for most music mode is probably better than the
2930159b3361Sopenharmony_ci                default jstereo because it uses specialized mid/side channel
2931159b3361Sopenharmony_ci                masking thresholds.
2932159b3361Sopenharmony_ci            </li>
2933159b3361Sopenharmony_ci            <li>Small bugs in Force ms_stereo mode fixed.</li>
2934159b3361Sopenharmony_ci            <li>Compaq Alpha fixes from Nathan Slingerland.</li>
2935159b3361Sopenharmony_ci            <li>
2936159b3361Sopenharmony_ci                <font color="#ff0000">Some new experimental pre-echo detection 
2937159b3361Sopenharmony_ci                formulas in l3psy.c (#ifdef AWS and #ifdef ENER_AWS,
2938159b3361Sopenharmony_ci                both off by default. Thanks to Gabriel Bouvigne and Andre
2939159b3361Sopenharmony_ci                Osterhues)</font>
2940159b3361Sopenharmony_ci            </li>
2941159b3361Sopenharmony_ci            <li>
2942159b3361Sopenharmony_ci                Several bugs in the syncing of data displayed by mp3x (the
2943159b3361Sopenharmony_ci                frame analyzer) were fixed.
2944159b3361Sopenharmony_ci            </li>
2945159b3361Sopenharmony_ci            <li>
2946159b3361Sopenharmony_ci                highq (-h) option added. This turns on things
2947159b3361Sopenharmony_ci                (just one so far) that should sound better but slow down LAME.
2948159b3361Sopenharmony_ci            </li>
2949159b3361Sopenharmony_ci        </ul>
2950159b3361Sopenharmony_ci        <h3>LAME 3.03 &nbsp;May 18 1999 </h3>
2951159b3361Sopenharmony_ci        <ul>
2952159b3361Sopenharmony_ci            <li>
2953159b3361Sopenharmony_ci                <font color="#3366ff">Faster (20%) &amp;
2954159b3361Sopenharmony_ci                cleaner FFT (Thanks to Chris Matrakidis 
2955159b3361Sopenharmony_ci                http://www.geocities.com/ResearchTriangle/8869/fft_summary.html)</font>
2956159b3361Sopenharmony_ci            </li>
2957159b3361Sopenharmony_ci            <li>
2958159b3361Sopenharmony_ci                mods so it works with VC++ (Thanks to Gabriel Bouvigne,
2959159b3361Sopenharmony_ci                www.mp3tech.org)
2960159b3361Sopenharmony_ci            </li>
2961159b3361Sopenharmony_ci            <li>
2962159b3361Sopenharmony_ci                MP3s marked "original" by default (Thanks to
2963159b3361Sopenharmony_ci                Gabriel Bouvigne, www.mp3tech.org)
2964159b3361Sopenharmony_ci            </li>
2965159b3361Sopenharmony_ci            <li>
2966159b3361Sopenharmony_ci                Can now be compiled into a BladeEnc compatible .DLL (Thanks to 
2967159b3361Sopenharmony_ci                Albert Faber, CDex author)
2968159b3361Sopenharmony_ci            </li>
2969159b3361Sopenharmony_ci            <li>
2970159b3361Sopenharmony_ci                Patches for "silent mode" and stdin/stdout (Thanks to Lars Magne
2971159b3361Sopenharmony_ci                Ingebrigtsen)
2972159b3361Sopenharmony_ci            </li>
2973159b3361Sopenharmony_ci            <li>
2974159b3361Sopenharmony_ci                <font color="#ff0000">Fixed rare bug: if a long_block is 
2975159b3361Sopenharmony_ci                sandwiched between two short_blocks, it must be changed to a 
2976159b3361Sopenharmony_ci                short_block, but the short_block ratios have not been computed in
2977159b3361Sopenharmony_ci                l3psy.c. Now always compute short_block ratios just in case.</font>
2978159b3361Sopenharmony_ci            </li>
2979159b3361Sopenharmony_ci            <li>
2980159b3361Sopenharmony_ci                <font color="#ff0000">Fixed bug with initial quantize step size 
2981159b3361Sopenharmony_ci                when many coefficients are zero. (Thanks to Martin Weghofer).</font>
2982159b3361Sopenharmony_ci            </li>
2983159b3361Sopenharmony_ci            <li>Bug fixed in MP3x display of audible distortion.</li>
2984159b3361Sopenharmony_ci            <li>improved status display (Thanks to Lauri Ahonen).</li>
2985159b3361Sopenharmony_ci        </ul>
2986159b3361Sopenharmony_ci        <h3>LAME 3.02 &nbsp;May 12 1999</h3>
2987159b3361Sopenharmony_ci        <ul>
2988159b3361Sopenharmony_ci            <li>
2989159b3361Sopenharmony_ci                <font color="#ff0000">encoder could use ms_stereo even if 
2990159b3361Sopenharmony_ci                channel 0 and 1 block types were different. (Thanks to Jan 
2991159b3361Sopenharmony_ci                Rafaj)</font>
2992159b3361Sopenharmony_ci            </li>
2993159b3361Sopenharmony_ci            <li>
2994159b3361Sopenharmony_ci                <font color="#ff0000">added -k option to
2995159b3361Sopenharmony_ci                disable the 16 kHz cutoff at 128kbs. This cutoff is never
2996159b3361Sopenharmony_ci                used at higher bitrates. (Thanks to Jan Rafaj)</font>
2997159b3361Sopenharmony_ci            </li>
2998159b3361Sopenharmony_ci            <li>
2999159b3361Sopenharmony_ci                <font color="#ff0000">modified pe bit allocation formula to 
3000159b3361Sopenharmony_ci                make sense at bit rates other than 128kbs.</font>
3001159b3361Sopenharmony_ci            </li>
3002159b3361Sopenharmony_ci            <li>
3003159b3361Sopenharmony_ci                fixed l3_xmin initialization problem which showed up under
3004159b3361Sopenharmony_ci                FreeBSD. (Thanks to Warren Toomey)
3005159b3361Sopenharmony_ci            </li>
3006159b3361Sopenharmony_ci        </ul>
3007159b3361Sopenharmony_ci        <h3><b>LAME 3.01 &nbsp;May 11 1999</b> </h3>
3008159b3361Sopenharmony_ci        <ul>
3009159b3361Sopenharmony_ci            <li>max_name_size increased to 300 (Thanks to Mike Oliphant)</li>
3010159b3361Sopenharmony_ci            <li>patch to allow seeks on input file (Thanks to Scott Manley)</li>
3011159b3361Sopenharmony_ci            <li>
3012159b3361Sopenharmony_ci                fixes for mono modes (Thanks to everyone who pointed this out)
3013159b3361Sopenharmony_ci            </li>
3014159b3361Sopenharmony_ci            <li>overflow in calc_noise2 fixed</li>
3015159b3361Sopenharmony_ci            <li>
3016159b3361Sopenharmony_ci                it reservoir overflow when encoding lots of frames with
3017159b3361Sopenharmony_ci                all zeros (Thanks to Jani Frilander)
3018159b3361Sopenharmony_ci            </li>
3019159b3361Sopenharmony_ci        </ul>
3020159b3361Sopenharmony_ci        <hr>
3021159b3361Sopenharmony_ci        <h3>LAME 3.0 &nbsp;May 10 1999</h3>
3022159b3361Sopenharmony_ci        <ul>
3023159b3361Sopenharmony_ci            <li>
3024159b3361Sopenharmony_ci                <font color="#ff0000">added GPSYCHO (developed by Mark Taylor)
3025159b3361Sopenharmony_ci                </font>
3026159b3361Sopenharmony_ci            </li>
3027159b3361Sopenharmony_ci            <li>
3028159b3361Sopenharmony_ci                <font color="#000000">added MP3x (developed by Mark Taylor)</font>
3029159b3361Sopenharmony_ci            </li>
3030159b3361Sopenharmony_ci            <li>LAME now maintained by Mark Taylor</li>
3031159b3361Sopenharmony_ci        </ul>
3032159b3361Sopenharmony_ci        <h3>November 8 1998</h3>
3033159b3361Sopenharmony_ci        <ul>
3034159b3361Sopenharmony_ci            <li>Version 2.1f released</li>
3035159b3361Sopenharmony_ci            <li>
3036159b3361Sopenharmony_ci                50% faster filter_subband() routine in encode.c
3037159b3361Sopenharmony_ci                contributed by James Droppo
3038159b3361Sopenharmony_ci            </li>
3039159b3361Sopenharmony_ci        </ul>
3040159b3361Sopenharmony_ci        <h3>November 2 1998</h3>
3041159b3361Sopenharmony_ci        <ul>
3042159b3361Sopenharmony_ci            <li>Version 2.1e released.</li>
3043159b3361Sopenharmony_ci            <li>
3044159b3361Sopenharmony_ci                New command line switch <b>-a</b> auto-resamples a stereo input 
3045159b3361Sopenharmony_ci                file to mono.
3046159b3361Sopenharmony_ci            </li>
3047159b3361Sopenharmony_ci            <li>
3048159b3361Sopenharmony_ci                New command line switch <b>-r</b> resamples from 44.1 kHz to 32 
3049159b3361Sopenharmony_ci                kHz [this switch doesn't work really well. Very tinny sounding 
3050159b3361Sopenharmony_ci                output files. Has to do with the way I do the resampling
3051159b3361Sopenharmony_ci                probably]
3052159b3361Sopenharmony_ci            </li>
3053159b3361Sopenharmony_ci            <li>
3054159b3361Sopenharmony_ci                Both of these were put into the ISO code in the encode.c file, 
3055159b3361Sopenharmony_ci                and are simply different ways of filling the input buffers from 
3056159b3361Sopenharmony_ci                a file.
3057159b3361Sopenharmony_ci            </li>
3058159b3361Sopenharmony_ci        </ul>
3059159b3361Sopenharmony_ci        <h3>October 31 1998</h3>
3060159b3361Sopenharmony_ci        <ul>
3061159b3361Sopenharmony_ci            <li>Version 2.1d released</li>
3062159b3361Sopenharmony_ci            <li>Fixed memory alloc in musicin.c (for l3_sb_sample)</li>
3063159b3361Sopenharmony_ci            <li>
3064159b3361Sopenharmony_ci                Added new command line switch (-x) to force swapping of
3065159b3361Sopenharmony_ci                byte order
3066159b3361Sopenharmony_ci            </li>
3067159b3361Sopenharmony_ci            <li>
3068159b3361Sopenharmony_ci                Cleaned up memory routines in l3psy.c. All the mem_alloc() and 
3069159b3361Sopenharmony_ci                free() routines where changed so that it was only done <i>once</i>
3070159b3361Sopenharmony_ci                and not every single time the routine was called.
3071159b3361Sopenharmony_ci            </li>
3072159b3361Sopenharmony_ci            <li>
3073159b3361Sopenharmony_ci                Added a compile time switch -DTIMER that includes all timing 
3074159b3361Sopenharmony_ci                info. It's a switch for the time being until some other people
3075159b3361Sopenharmony_ci                have tested on their system. Timing code has a tendency to do 
3076159b3361Sopenharmony_ci                different things on different platforms.
3077159b3361Sopenharmony_ci            </li>
3078159b3361Sopenharmony_ci        </ul>
3079159b3361Sopenharmony_ci        <h3>October 18 1998</h3>
3080159b3361Sopenharmony_ci        <ul>
3081159b3361Sopenharmony_ci            <li>Version 2.1b released.</li>
3082159b3361Sopenharmony_ci            <li>Fixed up bug: all PCM files were being read as WAV.</li>
3083159b3361Sopenharmony_ci            <li>
3084159b3361Sopenharmony_ci                Played with the mem_alloc routine to fix crash under amigaos 
3085159b3361Sopenharmony_ci                (just allocating twice as much memory as needed). Might see if
3086159b3361Sopenharmony_ci                we can totally do without this routine. Individual malloc()s 
3087159b3361Sopenharmony_ci                where they are needed instead
3088159b3361Sopenharmony_ci            </li>
3089159b3361Sopenharmony_ci            <li>
3090159b3361Sopenharmony_ci                Put Jan Peman's quality switch back in. This reduces quality 
3091159b3361Sopenharmony_ci                via the '-q&nbsp;&lt;int&gt;' switch. Fun speedup which is
3092159b3361Sopenharmony_ci                mostly harmless if you're not concerned with quality.
3093159b3361Sopenharmony_ci            </li>
3094159b3361Sopenharmony_ci            <li>Compiling with amiga-gcc works fine</li>
3095159b3361Sopenharmony_ci        </ul>
3096159b3361Sopenharmony_ci        <h3>October 16 1998</h3>
3097159b3361Sopenharmony_ci        <ul>
3098159b3361Sopenharmony_ci            <li>
3099159b3361Sopenharmony_ci                Version 2.1a released. User input/output has been cleaned up a 
3100159b3361Sopenharmony_ci                bit. WAV file reading is there in a very rudimentary sense ie 
3101159b3361Sopenharmony_ci                the program will recognize the header and skip it, but not read 
3102159b3361Sopenharmony_ci                it. The WAV file is assumed to be 16bit stereo 44.1 kHz.
3103159b3361Sopenharmony_ci            </li>
3104159b3361Sopenharmony_ci        </ul>
3105159b3361Sopenharmony_ci        <h3>October 6 1998</h3>
3106159b3361Sopenharmony_ci        <ul>
3107159b3361Sopenharmony_ci            <li>
3108159b3361Sopenharmony_ci                Version 2.1 released with all tables now incorporated into
3109159b3361Sopenharmony_ci                the exe. Thanks to <b>Lars Magne Ingebrigtseni</b>
3110159b3361Sopenharmony_ci            </li>
3111159b3361Sopenharmony_ci        </ul>
3112159b3361Sopenharmony_ci        <h3>October 4 1998</h3>
3113159b3361Sopenharmony_ci        <ul>
3114159b3361Sopenharmony_ci            <li>
3115159b3361Sopenharmony_ci                In response to some concerns about the quality of the encoder, I
3116159b3361Sopenharmony_ci                have rebuilt the encoder from scratch and carefully compared output
3117159b3361Sopenharmony_ci                at all stages with the output of the unmodified ISO encoder.
3118159b3361Sopenharmony_ci            </li>
3119159b3361Sopenharmony_ci            <li>
3120159b3361Sopenharmony_ci                <a href="http://www.uq.net.au/%7Ezzmcheng/lame/download.html">
3121159b3361Sopenharmony_ci                Version 2.0</a> of LAME is built from the ISO source code (dist10),
3122159b3361Sopenharmony_ci                and incorporates modifications from myself and the 8hz effort. The
3123159b3361Sopenharmony_ci                output file from LAME v2.0 is <em>identical</em> to the output of
3124159b3361Sopenharmony_ci                the ISO encoder for my test file. Since I do not have heaps of time,
3125159b3361Sopenharmony_ci                I left the ISO AIFF file reader in the code, and did not incorporate
3126159b3361Sopenharmony_ci                a WAV file reader.
3127159b3361Sopenharmony_ci            </li>
3128159b3361Sopenharmony_ci            <li>
3129159b3361Sopenharmony_ci                Added section
3130159b3361Sopenharmony_ci                on <a href="http://www.uq.net.au/%7Ezzmcheng/lame/quality.html">
3131159b3361Sopenharmony_ci                quality</a>.
3132159b3361Sopenharmony_ci            </li>
3133159b3361Sopenharmony_ci        </ul>
3134159b3361Sopenharmony_ci        <h3> October 1 1998</h3>
3135159b3361Sopenharmony_ci        <ul>
3136159b3361Sopenharmony_ci            <li>Updated web page and released LAME v1.0</li>
3137159b3361Sopenharmony_ci        </ul>
3138159b3361Sopenharmony_ci        <hr>
3139159b3361Sopenharmony_ci        <h3>Up to September 1998</h3>
3140159b3361Sopenharmony_ci        <p>Working on the 8hz source code...</p>
3141159b3361Sopenharmony_ci        <ul>
3142159b3361Sopenharmony_ci            <li>
3143159b3361Sopenharmony_ci                Patched the <a href="http://www.8hz.com/">8hz</a> source
3144159b3361Sopenharmony_ci                code
3145159b3361Sopenharmony_ci            </li>
3146159b3361Sopenharmony_ci            <li>
3147159b3361Sopenharmony_ci                45% faster than original source (on my freebsd p166).
3148159b3361Sopenharmony_ci                <ul>
3149159b3361Sopenharmony_ci                    <li>
3150159b3361Sopenharmony_ci                        m1 - sped up the mdct.c and quantize() functions [MDCTD,
3151159b3361Sopenharmony_ci                        MDCTD2, LOOPD]
3152159b3361Sopenharmony_ci                    </li>
3153159b3361Sopenharmony_ci                    <li>
3154159b3361Sopenharmony_ci                        m2 - sped up the filter_subband routine using <b>Stephane
3155159b3361Sopenharmony_ci                        Tavenard</b>'s work from musicin [FILTST]
3156159b3361Sopenharmony_ci                    </li>
3157159b3361Sopenharmony_ci                    <li>m2 - minor cleanup of window_subband [WINDST2]</li>
3158159b3361Sopenharmony_ci                    <li>
3159159b3361Sopenharmony_ci                        m2 - Cleaned up a few bits in l3psy.c. Replaced a sparse
3160159b3361Sopenharmony_ci                        matrix multiply with a hand configured unrolling [PSYD]
3161159b3361Sopenharmony_ci                    </li>
3162159b3361Sopenharmony_ci                    <li>
3163159b3361Sopenharmony_ci                        m3 - (amiga only) Added in the asm FFT for m68k (based on
3164159b3361Sopenharmony_ci                        sources from <b>Henryk Richter</b> and <b>Stephane Tavenard</b>)
3165159b3361Sopenharmony_ci                    </li>
3166159b3361Sopenharmony_ci                    <li>m4 - raw pcm support back in</li>
3167159b3361Sopenharmony_ci                    <li>
3168159b3361Sopenharmony_ci                        m5 - put in a byte-ordering switch for raw PCM reading 
3169159b3361Sopenharmony_ci                        (just in case)
3170159b3361Sopenharmony_ci                    </li>
3171159b3361Sopenharmony_ci                    <li>
3172159b3361Sopenharmony_ci                        m6 - reworked the whole fft.c file. fft now 10-15%
3173159b3361Sopenharmony_ci                        faster.
3174159b3361Sopenharmony_ci                    </li>
3175159b3361Sopenharmony_ci                    <li>
3176159b3361Sopenharmony_ci                        m7 - totally new fft routine. exploits fact that this is 
3177159b3361Sopenharmony_ci                        a real-&gt;complex fft. About twice as fast as previous 
3178159b3361Sopenharmony_ci                        fastest fft (in m6). (C fft routine is faster than the 
3179159b3361Sopenharmony_ci                        asm one on an m68k!)
3180159b3361Sopenharmony_ci                    </li>
3181159b3361Sopenharmony_ci                    <li>
3182159b3361Sopenharmony_ci                        m8
3183159b3361Sopenharmony_ci                        <ul>
3184159b3361Sopenharmony_ci                            <li>
3185159b3361Sopenharmony_ci                                Now encodes from stdin. Use '-' as the input 
3186159b3361Sopenharmony_ci                                filename. Thanks to <b>Brad Threatt</b>
3187159b3361Sopenharmony_ci                            </li>
3188159b3361Sopenharmony_ci                            <li>
3189159b3361Sopenharmony_ci                                Worked out that the 1024point FFT only ever uses 
3190159b3361Sopenharmony_ci                                the first 6 phi values, and the first 465 energy 
3191159b3361Sopenharmony_ci                                values. Saves a bunch of calculations.
3192159b3361Sopenharmony_ci                            </li>
3193159b3361Sopenharmony_ci                            <li>
3194159b3361Sopenharmony_ci                                Added a speed-up/quality switch. Speed is 
3195159b3361Sopenharmony_ci                                increased but quality is decreased <i>slightly</i>.
3196159b3361Sopenharmony_ci                                My ears are bad enough not to be able to notice
3197159b3361Sopenharmony_ci                                the difference in quality at low settings :). 
3198159b3361Sopenharmony_ci                                Setting '-q 1' improves speed by about 10%. '-q
3199159b3361Sopenharmony_ci                                100' improves speed by about 26%. Enoding of my 
3200159b3361Sopenharmony_ci                                test track goes from 111s (at default '-q 0') 
3201159b3361Sopenharmony_ci                                to 82s (at -q 100). Thanks to <b>Jan Peman</b> 
3202159b3361Sopenharmony_ci                                for this tip.
3203159b3361Sopenharmony_ci                            </li>
3204159b3361Sopenharmony_ci                        </ul>
3205159b3361Sopenharmony_ci                    </li>
3206159b3361Sopenharmony_ci                    <li>
3207159b3361Sopenharmony_ci                        m9 - fixed an error in l3psy.c. numlines[] is overwritten 
3208159b3361Sopenharmony_ci                        with incorrect data. Added a new variable numlines_s[] 
3209159b3361Sopenharmony_ci                        to fix this. Thanks again to <b>Jan Peman</b>.
3210159b3361Sopenharmony_ci                    </li>
3211159b3361Sopenharmony_ci                    <li>
3212159b3361Sopenharmony_ci                        m10 - Down to 106 seconds by selecting a few more compiler
3213159b3361Sopenharmony_ci                        options. Also added a pow20() function in l3loop.c to 
3214159b3361Sopenharmony_ci                        speed up (ever so slightly) calls to pow(2.0, x)
3215159b3361Sopenharmony_ci                    </li>
3216159b3361Sopenharmony_ci                    <li>
3217159b3361Sopenharmony_ci                        m11
3218159b3361Sopenharmony_ci                        <ul>
3219159b3361Sopenharmony_ci                            <li>
3220159b3361Sopenharmony_ci                                No speedups. Just cleaned up some bits of the code.
3221159b3361Sopenharmony_ci                            </li>
3222159b3361Sopenharmony_ci                            <li>
3223159b3361Sopenharmony_ci                                Changed K&amp;R prototyping to 'normal' format. 
3224159b3361Sopenharmony_ci                                Thanks to <b>Steffan Haeuser</b> for his help here.
3225159b3361Sopenharmony_ci                            </li>
3226159b3361Sopenharmony_ci                            <li>
3227159b3361Sopenharmony_ci                                Changed some C++ style comments to normal C comments in
3228159b3361Sopenharmony_ci                                huffman.c
3229159b3361Sopenharmony_ci                            </li>
3230159b3361Sopenharmony_ci                            <li>
3231159b3361Sopenharmony_ci                                Removed the #warning from psy_data.h (it was getting
3232159b3361Sopenharmony_ci                                annoying!)
3233159b3361Sopenharmony_ci                            </li>
3234159b3361Sopenharmony_ci                            <li>
3235159b3361Sopenharmony_ci                                Removed reference in bitstream.c to malloc.h. Is there a
3236159b3361Sopenharmony_ci                                system left where malloc.h hasn't been superceded by
3237159b3361Sopenharmony_ci                                stdlib.h?
3238159b3361Sopenharmony_ci                            </li>
3239159b3361Sopenharmony_ci                        </ul>
3240159b3361Sopenharmony_ci                    </li>
3241159b3361Sopenharmony_ci                </ul>
3242159b3361Sopenharmony_ci            <li>
3243159b3361Sopenharmony_ci                In Progess:
3244159b3361Sopenharmony_ci                <ul>
3245159b3361Sopenharmony_ci                    <li>
3246159b3361Sopenharmony_ci                        my PSYD hack for the spreading functions is only valid for
3247159b3361Sopenharmony_ci                        44.1 kHz - Should really put in a "if freq = 44.1 kHz"
3248159b3361Sopenharmony_ci                        switch for it. Someone might want to extend the speedup for
3249159b3361Sopenharmony_ci                        48 and 32 kHz.
3250159b3361Sopenharmony_ci                    </li>
3251159b3361Sopenharmony_ci                    <li>
3252159b3361Sopenharmony_ci                        Putting in Jan Peman's quantanf_init speedup.
3253159b3361Sopenharmony_ci                    </li>
3254159b3361Sopenharmony_ci                </ul>
3255159b3361Sopenharmony_ci            </li>
3256159b3361Sopenharmony_ci        </ul>
3257159b3361Sopenharmony_ci        <hr>
3258159b3361Sopenharmony_ci        <center>
3259159b3361Sopenharmony_ci            <p>
3260159b3361Sopenharmony_ci                <a href="http://validator.w3.org/check?uri=referer">
3261159b3361Sopenharmony_ci                <img src="images/valid-html401.png" alt="Valid HTML 4.01 
3262159b3361Sopenharmony_ci                Transitional" height="31" width="88">
3263159b3361Sopenharmony_ci                </a>
3264159b3361Sopenharmony_ci            </p>
3265159b3361Sopenharmony_ci        </center>
3266159b3361Sopenharmony_ci    </body>
3267159b3361Sopenharmony_ci</html>
3268