Help - Search - Members - Calendar
Full Version: MAD decoder Settings
Hydrogenaudio Forums > Lossy Audio Compression > MP3 > MP3 - General
uli-76
Hello.

I want to use MAD decoder to decode *.Mp3 to *.Wav.
So in the MAD frontend you can simply choose "Decode", but there are a lot of Options that can be used.

So my question: To decode an *.Mp3 File just hit "Decode" or are there any recommended settings to improve quality?


cu
Bedeox
I don't know about options, but you should get MAD compiled with optimisations for quality...
the one on their homepage most probably isn't.

(Anyway, MAD is quite bad decoder... does weird things with VBR sometimes.
Try Foobar with its modified mpglib.)
tigre
Right. Foobar2000's diskwriter will give you best possible quality in mp3->wav conversion (especially if the mp3s have been mp3gained). If your soundcard resamples you might want to use integrated SSRC resampling to 48kHz (but I doubt you want this as I can't see a reason why you should playback wav files on your PC when you have the mp3 sources...).

If you want to exaggerate it, you could write 32bit .wav files with fb2k and dither them down to 16bit using e.g. CoolEdit with noise shaped dither of your choice.

BTW: Any news about your EAC drive feature database?
uli-76
Thanks for the answer.

But now my next question:
Is the modified mpglib contained in the standard download of foobar?


cu


P.S.: The OffsetBase was last updated at 08.03 and there are 12 new entries since I started the OffsetBase.
Bedeox
That MPGLIB is built into foobar.
If you want Foobar2000 and all plugins in a single download try this (from Case):
http://www.saunalahti.fi/cse/foobar2000/

<edit>
Only one plugin isn't included: 'Classical GUI'
It's available there as a separate download.
</edit>
yq
QUOTE (uli-76 @ Mar 15 2003 - 06:10 PM)
But now my next question:
Is the modified mpglib contained in the standard download of foobar?

Sure it is. Foobar uses it to decode and play mp3's smile.gif


Edit: I don't believe I'm sooo sloooow
uli-76
Thanks for the answers.

I didn't know that Foobar uses it to decode.


cu
uli-76
Hello.

QUOTE
Anyway, MAD is quite bad decoder... does weird things with VBR sometimes.


And what does the MAD with VBR (sometimes)? Are there lost samples/frames?


cu
tigre
Yes. In this statement there are some points I didn't know before so I'd beg you to give some details:
QUOTE (Bedeox @ Mar 15 2003 - 08:51 AM)
I don't know about options, but you should get MAD compiled with optimisations for quality...
the one on their homepage most probably isn't.

Have you compiled yourself using different options and compared the decoding results, do you have other information about this (please give details/ a link), or is this just a guess?

QUOTE
Anyway, MAD is quite bad decoder...

From the comparisons I've read so far MAD's acuracy is among the best (it just uses dither instead of truncation), it handles freeformat ... Where does the information that MAD is a "quite bad decoder" come from?

QUOTE
... does weird things with VBR sometimes.
What does this mean? Winamp MAD plugin shows different remaining time + bitrate info compared to integrated mp3 decoder on VBR files? It doesn't handle errors in downloaded VBR files as good as other decoders? Or something else?
Madrigal
@tigre: Thank you. I strongly second all these questions.

@Bedeox: Was your post based on personal opinion, or objectively verifiable fact?

Regards,
Madrigal
Bedeox
My post is based on objective facts:
VBR test
Decode Test
24 bit accuracy test
Artificially corrupted file test

mpg123 uses unmodified mpglib, Peter fixed some bugs and improved corrupted data handling.
That modified mpglib is accurate up to 32 bits.
dev0
AFAIK all of the MAD bugs in the mp3decoder test were fixed in the newer versions.
MAD and mpglib share the 'best MP3 decoder' position.

dev0
tigre
QUOTE (Bedeox @ Mar 16 2003 - 07:23 AM)
My post is based on objective facts:

From VBR test, tested MAD Winamp plugin version: 0.12.2B:
QUOTE
What are the important results of this test?

ACM 1999, CDex, CEP FhG, Easy CD creator, lame, Media Jukebox, Quicktime, Real Jukebox (writing to CD-R), Siren, Ultra Player, Winamp 2.22, Winamp 2.7, the Winamp MAD plug-in, and the Winamp mpg123 plug-in pass this test.

MAD gets a "6" in all tests here which means it "decodes to the nearest bit". Most likely the reason why the result is not bit-identical to the "reference" is the applied dither (which can be considered as advantage).

From Decode Test, tested MAD Winamp plugin version: 0.12.2B:
MAD "clips end of file" in some cases. From MAD changelog:
QUOTE
Version 0.13.0 (beta)

  * The last complete audio frame should now be properly decoded even when
    it is not followed by other data [fixed in both `madplay' and the
    plug-in for Winamp.

Seems like this isn't an issue anymore.

From 24 bit accuracy test, two Winamp plugin verions tested, MAD commandline decoder version not specified:
QUOTE
Only CEP GNU 32 and l3dec give true 24-bit accurate ouput.
Since CEP GNU fails most other tests, l3dec is the only recommended 24-bit decoder.

The numbers show that MAD is second best - some points that should be mentioned:
* Newest version could be improved (things like "dithered pcm output improved" mentioned in changelog, but no details - so tests would be needed).
* lossy formats are supposed for playback use only - and no DAC is capable of full 24bit SNR - so I doubt that more than MAD's performance is needed.
* I don't see a reason here to call MAD a "quite bad encoder".

From Artificially corrupted file test, tested MAD Winamp plugin version: 0.12.2B:
QUOTE
Does a corrupt file decode? - Yes, with a few loud bleeps


QUOTE
mpg123 uses unmodified mpglib, Peter fixed some bugs and improved corrupted data handling.

* I haven't seen a comparison (=test) between an actual version of MAD and fb2k on handling of mp3 errors.
* Good error handling (=errors near to inaudible) is fine for playback but bad for decoding to .wav, e.g. for burning audi CDs.


My conclusion of this all: MAD is a decent decoder with no important weaknesses. This has been proven in comparison tests. Foobar2000 has the potential to perform equal or better, but there are no publically available test results for it like the ones mentioned above for MAD.
Bedeox
If you'd look at MAD's configure options, you'd find an option '--enable-quality'.
It does seem to mess with clipping handling and dithering at least.
MAD 14.xx isn't bad at all... my assumption was based on my previous experiences.

Another thing: foobar's decoder is faster...
(0,9% CPU whole foobar compared to 2,7% with MAD - Athlon XP 1700+ Gainward 7DXE 256MB RAM DDR266)

There should be a thorough comparison made, though.

<edit>
Why is good error handling bad for decoding MP3 for burning? I don't get it...
</edit>
tigre
QUOTE (Bedeox @ Mar 17 2003 - 08:26 AM)
Why is good error handling bad for decoding MP3 for burning? I don't get it...

Because ...

If you decode and hear all errors clearly when playing back the decoded .wav file even on PC listening setup, you can get the corrupted songs from another source or try to handle the erros in another way (like trying if other decoders do a better job).

If your standard decoder tries to make errors less noticable that's ok for mp3 playback for listening, but if you use this decoder for audio CD creation you might notice that the CD contains errors when it's too late.
_________________________

About tests: I'd like to do a test on this (and invite you and all interested people to join).

Please tell me your ideas what it should look like (and what not).

Some of my thoughts:

- wave substraction is only useful to show horrible problems. If the last (or second last) significant bit is identical or not doesn't tell anything about quality because noise shaped dither as used in fb2k will ad noise of an max. amplitude >1. The main part of the test should be listening.

- If it's about what sounds better, this doesn't make much sense as shown in the MAD challenge. So to get results what's theoretically better modifications are needed to emphasize differences.

- The way to achieve this I'm thinking of is
1. fadeout-like ampflification of a test sample (in 32bit resolution),
2. encoding to mp3 with 32bit input (if possible, otherwise 24bit) (--alt-preset insane to avoid VBR mode's ATH issue),
3. decoding to 16bit (maybe to 24bit too) .wav with the decoders/modes included in the test,
4. fadein-like amplification to take back the 1st step.
5. ABX tests vs. a reference sample created like this:
5.1. see 1.
5.2. Dither to 16bit, using noise shaped dither (e.g. CEP's 44.1kHz noise shaped)
5.3. see 4.

- I'd like to test fb2k, MAD, XMPlay (a personal preference B) - supports 16/24/32bit diskwriting), lame (?), I'm not interested in testing Winamp with it's native mp3 decoder but if someone else wants to ...
Bedeox
Good error handling != error hiding

Error handling should remove the frame with error (and not insert silence)
and then eventually crossfade edges.

MAD does a, but inserts a moment of silence. Most often happens at the end of file,
breaks continous CDs.
I'll post a sample later (I'll be reinstalling my Linux)
uli-76
Hello.

QUOTE
MAD is a decent decoder with no important weaknesses. This has been proven in comparison tests.

Test from this Versions:
QUOTE
MAD Winamp plugin version: 0.12.2B

QUOTE
Version 0.13.0 (beta)

But what about tests or results from the actual Version 0.14.2b ?
And are there any tests of foobar2000 like tigre wrotes?
QUOTE
- The way to achieve this I'm thinking of is
1. fadeout-like ampflification of a test sample (in 32bit resolution),
2. encoding to mp3 with 32bit input (if possible, otherwise 24bit) (--alt-preset insane to avoid VBR mode's ATH issue),
3. decoding to 16bit (maybe to 24bit too) .wav with the decoders/modes included in the test,
4. fadein-like amplification to take back the 1st step.
5. ABX tests vs. a reference sample created like this:
5.1. see 1.
5.2. Dither to 16bit, using noise shaped dither (e.g. CEP's 44.1kHz noise shaped)
5.3. see 4.


Or was the modificated mpglib not tested?
QUOTE
That modified mpglib is accurate up to 32 bits

So we can be sure that this is right?


cu
tigre
Hello uli-76,

I don't know of any tests like this - maybe the author of fb2k and/or some people helping him have done similar testing, but I don't know about it. That's the reason why I want to do this.

To make sure it's a *test* and not a waste of time I posted my ideas you quoted before starting and asked for feedback.

Cheers tigre
Bedeox
There's no need for a listening test to find decoder good at 24bit or not...
both MAD and Foobar can disable dithering...
I'll test it... (foobar with diskwriter vs. MAD quality Linux vs. MAD normal win vs. original)
when I get my Linux setup back. This will be soon, in the next week.
I'll just compare the depth using e.g. Cool Edits Spectral View with zoom
and dynamic range set to about 160 dB... and post screenshots.
MP3 will be LAME 3.93.1 with -api, disabled ath
Sound will be a 1000 Hz sine fading in from -160dB to 0dB, very easy to compress and decode.
(I'll then try the decoders which pass the test with faded music)

<edit>
Of course I'll do the listening test anyway. but with another clip...
1000Hz sine with volume set in 0.5 bit steps.
I'll post the samples too.
</edit>
uli-76
Hello.

QUOTE
I'll test it... (foobar with diskwriter vs. MAD quality Linux vs. MAD normal win vs. original)
when I get my Linux setup back. This will be soon, in the next week.
I'll just compare the depth using e.g. Cool Edits Spectral View with zoom
and dynamic range set to about 160 dB... and post screenshots.

This was on March 21, so I and other are still waiting for the results or the screenshots.


cu
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2009 Invision Power Services, Inc.