Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: best mp3 encoder with something better than a command line interface? (Read 33609 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

best mp3 encoder with something better than a command line interface?

If I understand, different mp3 encoders sound different.
Daniel L Newhouse

Re: best mp3 encoder with something better than a command line interface?

Reply #1
Command line encoders like lame are really just interfaces to the library libmp3lame.

Many graphical encoders (which I assume you mean by the term "better"), either use the command line program by calling that underneath, or using whatever encoding library directly.

Things like foobar either use libraries or call encoders, too.

Your question doesn't really make sense, but given what I've explained, and that LAME is kinda the best encoder over all (including availability, etc.), I'd suggest get a GUI for LAME. I.e. one that either calls the command line program (and there's tons of those, as this is often a programming exercise for novice programmers), or simply uses libmp3lame internally (this is by far the standard).

I believe the "best" MP3 encoder in terms of perceived audio quality, is fastenc from FhG, but I might be wrong, I haven't looked at any ABX test for quite some time. Just get a GUI calling fastenc for you, if that's what you're after.

Re: best mp3 encoder with something better than a command line interface?

Reply #2
If I understand, different mp3 encoders sound different.

You don't need to worry over that. Use LAME or any media player that (cf. polemon's reply) that uses LAME to encode. E.g., as mentioned, foobar2000.

IMHO, tweaking MP3 options and the like isn't really worth it. If MP3 isn't good enough at a certain bitrate - for example if I wished to cram as much as possible into my cellphone at "acceptable in-car quality" - then rather than asking how to get the best out of MP3, I would ask whether I could use a different codec. I can play Opus.
Heck, given that MP3 cannot even go below 32 kbit/s, I am kinda shocked at how good Opus at 31 kbit/s is.

Re: best mp3 encoder with something better than a command line interface?

Reply #3
Yep. LAME is the clear winner for MP3. Forget everything else. :D

As long as an up-to-date version of LAME is used, it doesn't really matter what tool you use for the conversion. Will result in same quality.

A barebone tool for MP3-encoding from files is RazorLame.

If you encode from a CD, use ExactAudioCopy, which turns a CD straight into a bunch of MP3's (using LAME).

Audacity uses MP3 export too.

In many cases, you have to download LAME separately to enable the MP3 encoding functionality.
- I abandoned this account since I didn't find a way to delete it -

Re: best mp3 encoder with something better than a command line interface?

Reply #4
If you encode from a CD, use ExactAudioCopy, which turns a CD straight into a bunch of MP3's (using LAME).

Don't. Rip to lossless and keep the rip. Encode you can always do later.

Re: best mp3 encoder with something better than a command line interface?

Reply #5
He asked for Software with GUI that encodes high-quality MP3's using the best encoder, not FLAC. :P

If he has a few CD's, it is OK to rip directly to MP3 (re-rip wouldn't be that time-consuming).
But yes, a big archive with 1000's of CD's should be archived losslessly. :)
- I abandoned this account since I didn't find a way to delete it -

Re: best mp3 encoder with something better than a command line interface?

Reply #6

In many cases, you have to download LAME separately to enable the MP3 encoding functionality.

That should be a thing of the past though, since MP3 patents have run out.  They should all be able to bundle the LAME encoder now, no?

Re: best mp3 encoder with something better than a command line interface?

Reply #7
Didn't Winamp Pro have the Fraunhoffer IIS encoder?  The best?
Daniel L Newhouse

Re: best mp3 encoder with something better than a command line interface?

Reply #8
IIRC it has Fraunhofer AAC encoder and LAME MP3 encoder.

Re: best mp3 encoder with something better than a command line interface?

Reply #9
Quote
best mp3 encoder with something better than a command line interface?

Foobar2000 with the Foobar2000 'Encoders Pack'. you can't really go wrong with that as, while I don't know for sure, I would imagine Foobar2000 is one of the more popular general audio playback/conversion programs on Windows based PC's in general as it's simple and effective.

that gives you the newest LAME encoder which seems to be the standard for encoding MP3 files. just add your lossless files into the active window (a simple drag and drop from Windows Explorer into the Foobar2000 window will work) and then select them (left click a file, hold CTRL (or shift to select a bunch), click what you want to select what you want to convert) and then right click and select 'Convert' and the rest I don't expect you to have much trouble figuring out. but one may want to tweak the 'destination' info a bit (which you will see once you enter the "Convert > ..." section) as I usually have mine appear like "01. Track Name Here" and then put those into a folder in relation to the album title (for example, "Artist Name - Album Title (2010)" (with "(2010)" being the year of release of that particular album)) etc.

Foobar2000 is my general 'go to' program for converting FLAC to MP3/AAC/Opus etc. but as far as getting your FLAC files from say a original audio CD in the first place, I would probably suggest using EAC (Exact Audio Copy). although you can use Foobar2000 but EAC is safer for ripping CD's.

p.s. if possible, I would suggest keeping a copy of your music CD's in FLAC format as this way in the future when converting to another lossy format (i.e. MP3/AAC/Opus etc) it will be nice and simple as a typical album would convert in no more than about 1 minute on most CPU's still in use. so unless you got a boatload of music to convert, it takes a minimal amount of ones time.

NOTE: as a general guideline for MP3... you want to use a minimum of LAME v5 (130kbps) and to be safe try LAME v2 (190kbps). but like I always say, unless you must use MP3, it's best to use either AAC or Opus at this point in time since they give you better quality at lower bit rates as if your using high bit rates, say around 190kbps (or more), it does not really matter what lossy format your using. but at the lower ranges, say around 128kbps and less, it's best to stick to AAC if you need wide compatibility or Opus if your going for maximum sound quality at the low bit rates and are not too concerned with having wide support.
For music I suggest (using Foobar2000)... MP3 (LAME) @ V5 (130kbps). NOTE: using on AGPTEK-U3 as of Mar 18th 2021. I use 'fatsort' (on Linux) so MP3's are listed in proper order on AGPTEK-U3.

 

Re: best mp3 encoder with something better than a command line interface?

Reply #10
I know this tread is aging, but LameXP is an option.
In the beginning there was ONLY noise, then came the signal.

Re: best mp3 encoder with something better than a command line interface?

Reply #11
how has no one mentioned dbpoweramp? i've been using it to create mp3's for the past 20+ years

Re: best mp3 encoder with something better than a command line interface?

Reply #12
IMO lame v3.100 is the best .mp3 encoder.

If you want to know what lame.exe really can do, you must recompile the source code with all the dev settings unlocked. Now I realized the .mp3 format is not dead; can be used even for high quality encoding, with the .mp3 file size +7x smaller than the .wav format.

By the way, use some good quality speakers to hear the differences;  my subwoofer make 20 Hz audible signal and the best vibration output is at 34 Hz -3dB.

I made a small bat file to automate the finding of the best scale when I encode with lame.

Code: [Select]
@echo off
@setlocal
color 1E
echo  ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
echo  Ý                                          ÚÄÄÄ¿Þ
echo  Ý         LAME v3.100 64bit unleashed      ³ û ³Þ
echo  Ý                                          ÀÄÄÄÙÞ
echo. ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
echo.

:: highpass filter disabled. polyphase lowpass filter disabled
:: using short blocks if better
:: interchannel masking ratio: 0.0002
:: using joint stereo for better compression
::      for access to dev settings (--help dev) put "#define _ALLOW_INTERNAL_OPTIONS 1" in parse.c and compile
:: default lame psychoacustic tuning:                        --ns-bass -0.5 --ns-alto -0.25 --ns-treble -0.025 --ns-sfb21 0.5
:: adjusted masking (more clear and selective sounds, noise out): bass=-1 dB,    alto=-0.5 dB,   treble=-0.275 dB,  sfb21=0 dB

lame.exe -mj --ns-bass -0.5 --ns-alto -0.25 --ns-treble -0.25 --ns-sfb21 -0.25 --short --verbose -q0 -b320 --cbr -c --resample 48 --highpass 0.001 --lowpass -1 --clipdetect aaa.wav out.mp3 --bitwidth 24 --interch 0.0002 --scale 1.5
ECHO 

:step1
echo -------------------
Set /P _link=new scale:
echo -------------------
lame.exe -mj --ns-bass -0.5 --ns-alto -0.25 --ns-treble -0.25 --ns-sfb21 -0.25 --short --verbose -q0 -b320 --cbr -c --resample 48 --highpass 0.001 --lowpass -1 --clipdetect aaa.wav out.mp3 --bitwidth 24 --interch 0.0002 --scale %_link%
ECHO 

echo ----------------------------
     Set /P _abort=exit? (y, *):
echo ----------------------------
If /i "%_abort%"=="Y" goto step2
If /i "%_abort%"=="y" goto step2
goto step1
:step2
pause
P.S.- Before the .mp3 encoding, I used some wave editor to make sounds better for me.


Re: best mp3 encoder with something better than a command line interface?

Reply #13
IMO lame v3.100 is the best .mp3 encoder.
 
 
Another example:
- aaa.wav before encoding
- out.mp3 after encoding with my above mentioned lame settings.



Re: best mp3 encoder with something better than a command line interface?

Reply #14
Default settings are choosen by the devlopers for a reason. If you're the kind of user who thinks posting spectrograms of mp3s is a good idea, you should probably should stick to the defaults.

Re: best mp3 encoder with something better than a command line interface?

Reply #15
Default settings are choosen by the devlopers for a reason. If you're the kind of user who thinks posting spectrograms of mp3s is a good idea, you should probably should stick to the defaults.
Are you happy now? Check the ABX tests. The encoded sample sounds better, more vivid and selective sounds, less noise.

I posted spectograms only to see the encoded .mp3 was not butchered by the encoder (trimmed from 20 kHz to 16 kHz), as you suggest with the default settings and so on.

May you tell me what is the reason the developers locked for general use the fine tuning (psychoacoustics) of lame v3.100? I remember in lame v3.98 these settings was available, not locked. Commercial reasons whatever?

GiT gUd

Re: best mp3 encoder with something better than a command line interface?

Reply #16
Default settings are choosen by the devlopers for a reason. If you're the kind of user who thinks posting spectrograms of mp3s is a good idea, you should probably should stick to the defaults.
Are you happy now? Check the ABX tests. The encoded sample sounds better, more vivid and selective sounds, less noise.

That is an ABX test comparing a WAV and an MP3.  Assuming the WAV is the lossless file and the MP3 is your custom compile, that shows is that your MP3 is not transparent, which is a bad thing.

I posted spectograms only to see the encoded .mp3 was not butchered by the encoder (trimmed from 20 kHz to 16 kHz), as you suggest with the default settings and so on.

A spectrogram cannot show you if a file was "butchered".  It just shows you the spectrum, which is irrelevant.  It is not impossible that you might outsmart the developers, but if you're looking at spectrograms, it is very, very unlikely.

May you tell me what is the reason the developers locked for general use the fine tuning (psychoacoustics) of lame v3.100?

Generally settings are exposed if there is a reason a user might need to change them.  For things that don't have a reason to change they're not exposed.


Re: best mp3 encoder with something better than a command line interface?

Reply #17
Are you happy now? Check the ABX tests. The encoded sample sounds better, more vivid and selective sounds, less noise.

What do you mean by "sounds better"? Are you saying the MP3 sounds better than the WAV?

In the ABX you are just showing that you are able to tell the difference between the original WAV and the MP3. That is not what you want. (For example if you encode an mp3 with very low bitrate so that it sounds terrible, you would also get this 40/40 ABX result.) What you want is an MP3 that is indistinguishable from the WAV. So in the ABX you could not tell the difference. This is what you will get if you test LAME v3.100 with -b 320. Your modifications are totally untested, unlike the LAME default settings.

Have a look at the LAME changelog: https://svn.code.sf.net/p/lame/svn/trunk/lame/doc/html/history.html The changes in red are all the fine tuning and tweaking that has gone into the default settings (particularly around 2001-2003). If there was anything more to be squeezed out of LAME, it would already have been done years through these very rigorous tests and tweaks. Your new settings are very unlikely to be of any improvement over these.

May you tell me what is the reason the developers locked for general use the fine tuning (psychoacoustics) of lame v3.100? I remember in lame v3.98 these settings was available, not locked. Commercial reasons whatever?

I'm confused here too. What are you suggesting? Something like LAME developers having some secret high quality settings which they have locked out for normal users for commercial reasons? And your script is "unleashing" them? If you are suggesting anything along these lines, your thinking is way, way off. Sorry if I have misunderstood what you are saying here.

Re: best mp3 encoder with something better than a command line interface?

Reply #18
What do you mean by "sounds better"? Are you saying the MP3 sounds better than the WAV?

Lowering the psychoacoustic masking patterns (with the dev settings unlocked) give more room for creativity, testing and discovering new sounds masked before. More vivid, crystal, noiseless and selective sounds. I encode music for myself not for you. You are free to use the default settings, is your problem. Why Lame v3.98 had the psy settings unlocked by default?

Personally, I don't like this new generally idiocratic trend to simplify everything to only two buttons, start and stop, and nothing else. If this is the future, the brave new world, then humans will end in cages guarded by robots. Idiocracy.

By the way, the ABX test was a joke, I found a glitch, a 1/8 second desync between samples at a certain point. But if you listen A and B entirely, more times, you will unable to guess the right answer. If you want to check yourself, I can send you in private the "unleashed lame" with settings, the .wav and the .mp3. The .wav is ripped from an original CD. You know, the copyright policy of TOS.

Re: best mp3 encoder with something better than a command line interface?

Reply #19

Lowering the psychoacoustic masking patterns (with the dev settings unlocked) give more room for creativity, testing and discovering new sounds masked before.

I don't think any of that is accurate.

I encode music for myself not for you. You are free to use the default settings, is your problem.

If you didn't read the ToS when you signed up, now might be a good time. You are required to support claims you make about quality with objective means. The idea is to allow the community to evaluate ideas objectively.

Personally, I don't like this new generally idiocratic trend to simplify everything to only two buttons, start and stop, and nothing else.

In this case though it was a good idea. With access to those settings you changed a lot of things you did not understand while looking at tools you did not know how to interpret. A best you wasted a lot of time, and more likely than not also made bad files.

The settings are always there since the code is open source, but by forcing people to look at the code it hopefully suggests to people that these are complicated tools that require careful understanding.

By the way, the ABX test was a joke, I found a glitch, a 1/8 second desync between samples at a certain point.

Not sure that's a joke. It sounds like you inadvertently found out that something is wrong with your encoder changes, even if at the time you didn't understand that.

Re: best mp3 encoder with something better than a command line interface?

Reply #20
Lowering the psychoacoustic masking patterns (with the dev settings unlocked) give more room for creativity, testing and discovering new sounds masked before. More vivid, crystal, noiseless and selective sounds.
But if you listen A and B entirely, more times, you will unable to guess the right answer.

I am trying to understand what you are saying here. You say your new settings produce a "more vivid sound" in one sentence, but then later you say that you cannot tell any difference with the original?

When you say that being able to change the psychoacoustic settings allows "discovering new sounds masked before". What do you mean by "before"? Do you mean in the original WAV? Or the mp3 with default Lame settings? Do you think it is the purpose of an mp3 encoder to do some kind of EQ filtering on the original to make the music more vivid or to remove noise?

If you want to check yourself, I can send you in private the "unleashed lame" with settings, the .wav and the .mp3. The .wav is ripped from an original CD. You know, the copyright policy of TOS.

But you are encoding at 320kbps CBR. Using default LAME settings at 320kbps, you will not be able to tell the difference between the original wav and the mp3. At this maximum bitrate, you can probably change quite a lot of the LAME psychoacoustic settings and the output will still be transparent. That may very well also be the case when using your settings, but I think it can only make things worse. It can't improve on transparency.

If you would like to PM me your files and script, I will be happy to have a listen and try to ABX.

Re: best mp3 encoder with something better than a command line interface?

Reply #21
Sent priv message.

Feel free to tell me your opinion.

Maybe the boost is because the .wav is originally encoded at 44100 Hz 16bit and the resulting .mp3 is encoded at 48000 Hz 24bit and I used interchannel masking ratio: 0.0002. Lowering the psy masking seems to be some kind of denoise.

Re: best mp3 encoder with something better than a command line interface?

Reply #22
Sent priv message.

Clips under 30 seconds, which do not violate copyright laws in most countries, are allowed under ToS.  However, if you want people to take your samples seriously, you should first demonstrate that they improve something.  So far, all you have done is suggest that they make things worse.  

Maybe the boost is because the .wav is originally encoded at 44100 Hz 16bit and the resulting .mp3 is encoded at 48000 Hz 24bit

Resampling files is a bad idea, but if you want to experiment with that, you should resample the PCM first, and then do the comparison between the lossless and lossy resampled files.  Otherwise it is extremely difficult to do fair comparisons between files of different sampling rates.  

Re: best mp3 encoder with something better than a command line interface?

Reply #23
@BrilliantBob

You sound like a person who wants the best quality music files so is there any reason you're not ripping your music in to FLAC or another lossless audio format? If you went down this path you can use an EQ to tweak the sound to your preference. If you upgrade your gear in the future all you need to do is redo the EQ settings to suit and not have to rerip and reencode your music again in to further "tweaked" mp3s.

Who are you and how did you get in here ?
I'm a locksmith, I'm a locksmith.

Re: best mp3 encoder with something better than a command line interface?

Reply #24
Resampling files is a bad idea, but if you want to experiment with that, you should resample the PCM first, and then do the comparison between the lossless and lossy resampled files.  Otherwise it is extremely difficult to do fair comparisons between files of different sampling rates.
Good point, I did not think about it before. I will proceed accordingly.

Clips under 30 seconds, which do not violate copyright laws in most countries, are allowed under ToS.  However, if you want people to take your samples seriously, you should first demonstrate that they improve something.
I will make the 30 sec new samples sets to post them in forum. The main comparison will be between the default .mp3 lame encoding and my personalized encoding and also between the original resampled WAV and my personalized HQ .mp3 encoding.

I think I was misunderstood... Excuse my french, but I am not a native english speaker. The improvement of the .mp3 encoded with the modified psy extended settings must be compared with the .mp3 encoded with the default settings (filters ON, no other psy settings only the default,...). Those default psy settings and filters I think are good for the low to medium-level quality of the encoding and are unchanged for years. Times changed, now there are new standards for HI-FI encodings, 48,000 Hz, 24bit depth, and so on and the new PC hardware can manage. My goal is to tweak the lame settings, psy included, to obtain a mp3 file as close as possible with the original WAV, so that they can not feel any difference in ABX tests.

Thank for suggestions.

You sound like a person who wants the best quality music files so is there any reason you're not ripping your music in to FLAC or another lossless audio format? If you went down this path you can use an EQ to tweak the sound to your preference.
Indeed, I rip music with EAC directly to FLAC and I keep it in this format. My experiment is to test the extreme quality limits of the lame encoder. I can keep thousands of high quality mp3's in my android, to listen them anytime, anywhere. The WAV or FLAC formats are too large for this.