Audacity has links for LAME that point to a website that allows you to install LAME 3.99.3. I’ve been using this version for years without any problems.
Sourceforge for LAME is showing the latest version is 3.99.5, with a link to a page with compiled binaries for windows (32 and 64 bit). I downloaded these libraries, and pointed Audacity to each in turn using Preferences → Libraries. The “MP3 Library Version” continued to show 3.99.3, regardless of which lame_enc.dll was being used.
Each lame_enc.dll (current 3.99.3, 3.99.5 32bit, 3.99.5 64bit) produced an MP3.
What are the essential differences, as far as Audacity is concerned, between LAME 3.99.3 and LAME 3.99.5?
Why did Preferences → Libraries continue to show the the LAME version as 3.99.3 when using version 3.99.5?
It looks like LAME 3.100 is under development. Any plans for using that when it is released?
My guess is that Audacity is still using 3.99.3, even though you “told it” to use the other one. (Audacity “tries” to load a version that works).
I don’t fully understand this myself, but it not really to do with functional differences (I don’t think there are any functional differences between those two versions used by Audacity), but is to do with programming “hooks” through which the Audacity program can “link” to commands provided by LAME. If on the other hand, you use LAME as an “external” program (“piping” the audio data from one application to the other), then you can use any version of LAME because the Audacity program does not need to “link” to the LAME program.
Libraries are updated eventually, but not very frequently. Updating libraries takes a lot of time both for developers and for testing, and there is a limited supply of human resources (see here for how to contribute to Audacity: Redirecting to: https://support.audacityteam.org/community/contributing). There is also a risk of breaking things when updating libraries. The emphasis tends to be with stability rather than always having the latest versions of libraries, so yes I expect that LAME will be updated eventually, but I don’t think there is a pressing need to do so at this time.
The log showed that Audacity tried to use the lame_enc.dll specified in Preferences → Libraries, got an unknown error, then went back to the LAME as stored in the registry.
It’s perfectly possible to load a valid later version of lame_enc.dll and ignore the registry setting created by the LAME 3.99.3 installer:
However it only works if the lame_enc.dll or libmp3lame.dll you obtained has the “symbols” built in that Audacity requires. Most of them that you can find online don’t. So it looks like you downloaded the wrong binaries from the links on the lame.sourceforge.net site.
Yes, I’m running Audacity 2.0.6. It was after downloading the latest version I decided to try some of the non-standard LAME binaries.
From http://www.rarewares.org/files/mp3/lame3.99.5.zip Attempting to use this dll results in numerous errors in the log:
10:56:48 PM: Actual LAME path C:Program Files (x86)Lame BinariesLAME 3.99.5 32bitlame_enc.dll
10:56:48 PM: Error: Couldn’t find symbol ‘get_lame_version’ in a dynamic library (error 127: the specified procedure could not be found.)
10:56:48 PM: Error: Couldn’t find symbol ‘lame_encode_buffer’ in a dynamic library (error 127: the specified procedure could not be found.)
10:56:48 PM: Error: Couldn’t find symbol ‘lame_set_quality’ in a dynamic library (error 127: the specified procedure could not be found.)
10:56:48 PM: Error: Couldn’t find symbol ‘lame_set_brate’ in a dynamic library (error 127: the specified procedure could not be found.)
10:56:48 PM: Error: Couldn’t find symbol ‘lame_set_VBR’ in a dynamic library (error 127: the specified procedure could not be found.)
10:56:48 PM: Error: Couldn’t find symbol ‘lame_set_VBR_q’ in a dynamic library (error 127: the specified procedure could not be found.)
10:56:48 PM: Error: Couldn’t find symbol ‘lame_set_VBR_min_bitrate_kbps’ in a dynamic library (error 127: the specified procedure could not be found.)
10:56:48 PM: Error: Couldn’t find symbol ‘lame_set_mode’ in a dynamic library (error 127: the specified procedure could not be found.)
10:56:48 PM: Error: Couldn’t find symbol ‘lame_set_preset’ in a dynamic library (error 127: the specified procedure could not be found.)
10:56:48 PM: Error: Couldn’t find symbol ‘lame_set_error_protection’ in a dynamic library (error 127: the specified procedure could not be found.)
10:56:48 PM: Error: Couldn’t find symbol ‘lame_set_disable_reservoir’ in a dynamic library (error 127: the specified procedure could not be found.)
10:56:48 PM: Error: Couldn’t find symbol ‘lame_set_padding_type’ in a dynamic library (error 127: the specified procedure could not be found.)
10:56:48 PM: Error: Couldn’t find symbol ‘lame_set_bWriteVbrTag’ in a dynamic library (error 127: the specified procedure could not be found.)
10:56:48 PM: Error: Couldn’t find symbol ‘lame_get_lametag_frame’ in a dynamic library (error 127: the specified procedure could not be found.)
10:56:48 PM: Failed to find a required symbol in the LAME library.
Using http://www.rarewares.org/files/mp3/libmp3lame-3.99.5x86.zip and renaming to lame_enc.dll:
11:03:57 PM: Attempting to load LAME from previously defined path
11:03:57 PM: Loading LAME from C:Program Files (x86)Lame Binarieslibmp3lame-3.99.5x86-1lame_enc.dll
11:03:57 PM: Actual LAME path C:Program Files (x86)Lame Binarieslibmp3lame-3.99.5x86-1lame_enc.dll
11:03:57 PM: Error: Couldn’t find symbol ‘beWriteInfoTag’ in a dynamic library (error 127: the specified procedure could not be found.)
11:03:57 PM: Error: Couldn’t find symbol ‘beVersion’ in a dynamic library (error 127: the specified procedure could not be found.)
11:03:57 PM: LAME library successfully loaded
This version will produce an MP3 and shows Preferences → Libraries → MP3 Library Version: LAME 3.99.5.
The tried and true LAME 3.99.3 that installs into the “Lame for Audacity” folder will load with no errors in the log:
11:10:49 PM: Loading LAME from C:Program Files (x86)Lame For Audacitylame_enc.dll
11:10:49 PM: Actual LAME path C:Program Files (x86)Lame For Audacitylame_enc.dll
11:10:49 PM: LAME library successfully loaded
Thanks Gale and KeyserS for taking the time to reply. I’ve already spent too much time on this. Certainly if and when a better LAME for Audacity comes along, someone will have a nice self-extracting zip file with prominent links on the Audacity sourceforce page.