Log message:
Update to 3.98.2:
LAME 3.98.1 September 21 2008
* Rogerio Brito:
* More fixes for the abx tool for Unix systems:
* Plugged a memory leak.
* Fixed an endianness problem: users of big-endian machines
can now do abx tests.
* Fixed history's HTML doctype
* Fixed history so that it finally validates at W3's validator
* Fixed compilation of frontend mp3rtp.c. Thanks to Kris Karas.
Bugtracker item [ 2015432 ] mp3rtp missing uint16_t in lame 3.98
* Robert Hegemann:
* Fix for Bugtracker item [ 2031704 ] --id3v1-only didnt work in
3.98-final
* Fix for Bugtracker item [ 2022035 ] encoder_padding value and
resampling
* Fix for Bugtracker item [ 2029282 ] Frequency filtering API
broken in 3.98
* Fix for Bugtracker item [ 2039648 ] potential memory leak in
parse_args() function in parse.c
* Fix for some tagging issues:
* Made search for ID3v1 genres more sloppy, abbrevations may
match more often as some simple typos. Examples:
* --tg "Alt. Rock" matches genre "Alternate \
Rock"
* --tg "acapela" matches genre "A Cappella"
* New switch --pad-id3v2-size "n": adds ID3v2 tag with n
padding bytes.
LAME 3.98 July 4 2008
* Anton Sergunov:
* Frontend DirectShow: enabling LAME dshow filter to connect to
"File Writer Filter".
* Rogerio Brito:
* Updates to the Debian Packaging
* Fixes to the abx tool for Unix systems (so that more people can
evaluate LAME's compression against the original files)
* Alexander Leidinger:
* explicitely link the math lib to the lame lib
* add switch to disable the use of the compaq optimized math lib
LAME 3.98 beta 8 April 13 2008
* Robert Hegemann:
* LAME now accepts a floating point value in the range [0,...,10[
as VBR quality setting, like -V5.678
* Found and fixed some suspicious code in additive masking
calculation for VBR-NEW
* bug-fix:experimental code was defaulted by accident for VBR-NEW
* fix for some endianess problem on big-endian machines
LAME 3.98 beta 7 April 6 2008
* Robert Hegemann:
* libmp3lame API: allow frontends to separately retrieve LAME/Xing
and ID3 data, because the old library automatism makes it
impossible to make fully buffered encodes.
* libmp3lame API: added some experimental unicode ID3 tagging code.
* frontends: write itself final ID3 tags and LAME/Xing header frame
* lame_enc.dll: writes itself final LAME/Xing header frame
* Latest changes to the new VBR psymodel:
* uses a different spreading function
* bug-fix for out-of-bounds array access (program stack
corruption possible)
LAME 3.98 beta 6 December 16 2007
* Robert Hegemann:
* Feature request [ 1811483 ] WAVE_FORMAT_EXTENSIBLE support (PCM)
* Fix for some rare scalefactor selection issue the newer vbr code
had at low compression levels
* Fix for Bugtracker item[ 1813496 ] AIFF parsing bug
* Latest changes to the new VBR code:
* it now has its own psy model, a derivation from NSPSY.
* some more tuning has been done for this new psy model. Many
thanks to Horst Albrecht and Myles Thaiss.
* the "out-of-bits" strategy is reworked
* It was possible, that the "interchannel masking effects \
feature"
was used by the dual-channel-mode for bi-lingual encodings too.
It was meant to work on stereo L/R channels only.
LAME 3.98 beta 5 August 12 2007
* Jonathan Stott:
* Bug tracker items: [ 1590693 ] ID3v2 tag not writing, [ 1636267 ]
ID3v2 tags overwritten
If the output file is opened 'write-only', then LAME can't update
the LAME tag. In this case LAME silently overwrote the first
bytes of the file and an optional ID3v2 tag disappeared. Now an
error message will be printed and no data is written in this
case.
* Robert Hegemann:
* Fix for Bugtracker item [ 1719593 ] Track numbers > 255 not
allowed even with --id3v2-only
* Fix for Bugtracker item [ 1742623 ] fail(lame --mp3input -m m -b
128 --resample 8 *.mp3 **.mp3)
The problem here was, the input files are MPEG-1 Layer2 files
named as MP3s. Even if you leave out the --mp3input switch LAME
tried to decode the input files as Layer3 files because of the
file name extension and because it found some valid looking
Layer3 synchronization header. The fixed LAME version does not
assume the file name extension is always correct and treats the
files depending on the first found MPEG sync word. The files in
question are now correctly detected as Layer2 files and
transcoding does succeed.
* Fix for Bugtracker item [ 1445175 ] Input being stdin fails in
Windows on WAV files
The problem here was, seeking on pipes shows some different
behaviour depending on C-Library implementations. The workaround
tries to detect it's working on a pipe and doing some reading
instead of seeking in that case.
* Fixing some memory leak in the 'lame_enc.dll'.
* Fix for Bugtracker items [ 1160757, 1160741 ] --little-endian /
--big-endian not working
These switches where originally intended to be used together with
Libsndfile only.
* Fix for Bugtracker item [ 1746336 ] Incorrect Bitrate with ABR
und --resample, LAME 3.98b4
Some earlier bug-fix had some typo. As a result, when adding a
'--resample 123' switch, the average bitrate rised upto maximum
bitrate.
LAME 3.98 beta 4 June 23 2007
* Dennis Lambe Jr: Added support for total track count (id3v2) in the
frontend
* Nyaochi:
* Ability to set user-defined ID3v2.3 frame
* Ability to include albumArt in ID3v2.3 tag
* Robert Hegemann:
* Bugfix: the "play length in ms", which is stored in the \
ID3v2 tag
TLEN, was not correctly computed. Some hardware and software
players were confused by this garbage data.
* Out of bits strategy for the newer VBR code overhauled
* LAME API: the ID3 tag functions do not store the pointers passed
anymore, they do make deep copies of strings passed as
parameters.
* Changes in LAME frontend switches regarding ID3 tags:
--tg "MyGenre" will route unknown ID3v1 genres to \
"Other" for
ID3v1 tags and will be stored as plain text "MyGenre" for ID3v2
tags. Genres given by known ID3v1 numbers will be stored as its
corresponding text in ID3v2 tags.
--tn "02/02" will store the track number specified as \
plain text
as-is for ID3v2 tags.
LAME 3.98 beta 3 May 22 2007
* Robert Hegemann:
* Fixes regarding max number of bits limitation
LAME 3.98 beta 2 May 20 2007
* Robert Hegemann:
* Bug tracker item: [ 1693461 ]; Fixed memory leaks in ACM codec
* Fixed encoding of non-standard sampling rates in CBR
* Improved VBR strategy when running out of bits
LAME 3.98 beta 1 May 16 2007
* Alexander Leidinger:
* Add TLEN (ID3v2) support (Submitted by: Linus Walleij).
* Add number of total tracks per album (ID3v2) support (Submitted
by: Kyle VanderBeek).
* Some seatbelts for overflowing arrays in the ID3v2 support.
* Update the RPM spec (Submitted by: Kyle VanderBeek).
* Fix some mem-leaks in the error case.
* Update to newer autotools versions.
* Update to use a recent libsndfile (submitted by libsndfile
author).
* Intrinsics support enabled for gcc
* Robert Hegemann:
* The newer VBR code is now LAME's default VBR routine
* Fixed: in case of not enough bits the new vbr code incorrectly
used old vbr routine
* Improved ATH adjustment in low volume cases
* Fixed (PSY model): mapping from convolution bands to partition
bands was broken since we replaced tables by own calculation
several years ago
* Fixed (PSY model): loss of fraction in equal loudness weighting
* Fixed (PSY model): in NSPSY highpass filter, out of bounds access
in fircoef
* Known problem samples for the new VBR code: many of them are at
an acceptable quality level now; with a big 'Thank You' to
Francis Niechcial
* Modified VBR strategy to handle out of bits cases
* Restricted bitreservoir size for 320 kbps frames to the size used
for sideinfo, because of decoding problems with FhG decoders
installed on almost every Windows system
* LAME aborts on unsupported input files or unrecognized parameter
options passed more often now
* Bug tracker item: [ 1596306 ] "fatal error during
initialization"; an invalid MPEG samplerate was returned by
optimum_samplefreq function
* Bug tracker item: [ 1585942 ] lame not --silent when TERM not
set; in case LAME was build with TERMCAP defined and no TERM
environment is defined, now we do not issue an error message and
silently fallback to the default behaviour as if LAME was
compiled without TERMCAP defined.
* Bug tracker item: [ 1711980 ] LAME writes invalid Xing header
when ID3 tags exist; LAME was sometimes writing an invalid
Xing/Info header
* Feature request: [ 1588283 ] Flushing output stream in lame.exe;
'flush' option added
* Added FFTSSE and FFT3DNOW assembler code from Lame4 branch
* Changes in lame frontend switches: -k removed, add lowpass and
highpass switches if you need to change them;
--short/noshort/allshort - degraded into DEVELOPER ONLY switches
normal users shouldn't use them; -X -Z degraded to DEVELOPER ONLY
switches, -X is too tough to communicate to end users and -Z
isn't used actualy
* Fixed some console printing problems
* Windows: ACM code now uses LAME library API only, all references
to private include files are removed
* Windows: DirectShow code now uses LAME library API only, all
references to private include files are removed
* Windows: disabled code that resets processor affinity, because
this doesn't belong to LAME, but seems to work around some
problems the parent process has (in most cases EAC)
* John33:
* Fixed mp2 and mp3 decoding: For mp3 and mp2 decoding, this now
yields the same output as foobar2000 but the error checking
remains unchanged
* Gabriel Bouvigne:
* VC8 project files
* Added support for x64 under VC8
* Restricted MPEG 2.5 to 64kbps frames
* Takehiro Tominaga:
* SSE version of FFT
|