PD Winamp MAD plug-in

Decoder Source: Rob Leslie http://www.mars.org/home/rob/proj/mpeg/mad-plugin/
Version: 0.12.2B © 2000 Robert Leslie
Price: free
Settings: 16-bit output, used within Winamp 2.7
Similar products: Based on the MAD Mpeg Audio Decoder.
Verdict: Very Good
VBR: All
Full file: Rarely
Major Flaws: none
Minor Flaws: clips end off most files, dither not optimum
Output level: correct
1-bit relative accuracy: Very Good
1-bit absolute accuracy: Excellent+

Though the latest version of Winamp includes an excellent mp3 decoder, Rob Leslie has tried to improve on this with his Winamp MAD plug-in. MAD is a new mp3 decoder which offers 24-bit accuracy, compared to the 16-bit accuracy offered by most other mp3 decoders. This extra accuracy is useful even if (like most of us) you only have a 16-bit soundcard - MAD takes the extra 8 bits of information (which are discarded by other decoders) and dithers them onto the quietest bit of the 16-bit signal. There's more information on this in the 24 bit test and on the MAD Winamp plug-in homepage. Note that the Winamp MAD decoder plug-in (the review of which you are currently reading) is the first application of the MAD decoder (reviewed separately, here).

Compared to the best 16-bit decoders, the only problem with the Winamp MAD decoder is that it clips the end off most files (typically 1000 samples, or 1/50th of a second). The only time it decodes a file completely is when the mp3 audio data is followed by an ID3 tag, which may hide this problem from users who have fully tagged mp3 collections. Winamp-MAD also performs differently from other 16-bit decoders in the 16-bit LSB accuracy test because of its dithering, but this an advantage rather than a fault.

The Winamp MAD plug-in claims to offer 24-bit decoding accuracy, and to dither this down to 16-bits if required. The 24 bit test revealed that this is not quite the case.

In 16-bit mode, it's not the accuracy of the decoder that limits Winamp-MAD, since 24-bit internal decoding is used whatever the output bit-depth, and we've already shown that this is accurate to 20-bits. The problem is in the dither used to convert the 24-bit decoder output to 16-bits - it's not ideal. As a comparison, A standard 16-bit decoder destroys all information below the 16th bit; True 24-bit accurate 16-bit dithered output would retain all information in the extra 8 bits undistorted, the only limit being the 16-bit noise floor; Winamp-MAD retains some of the information in the extra 8 bits, but beyond the 1st extra bit, it's increasingly distorted. For more details see the 24-bit test and the MAD decoder review.

In conclusion, the MAD decoder has no major decoding bugs, and the only problem compared to other decoders is that it clips the ends off many files. It doesn't quite live up to its accuracy claims - it is better than other 16-bit decoders, but doesn't yet represent the best that can be achieved.

EXTRA NOTES:

  1. Rob Leslie provided various information about MAD throughout the testing of his decoder.
  2. MAD is a general Mpeg Audio Decoder - it can handle mp1 and mp2 as well as mp3.
  3. The best 24-bit accurate decoding (for 16-bit output) can be obtained by using l3dec to decode an mp3 to 24-bit ASCII HEX output. This can be converted to a 24-bit wav file using an external utility (I was forced to write the necessary code using MATLAB). Loading this file into Cool Edit Pro, and dithering down to 16-bits using noise shaped dither gave 21-bit accurate 16-bit output. Standard (no noise shaping) dither gave 19-bit accuracy. I carried this out for a couple of 25 second test files - I would not even consider doing it for an entire CD due to the length of time involved. Hopefully MAD will improve to match this performance and make such a process redundant.

Screenshots

Configuring the Winamp MAD decoder plug-in
Configuring the Winamp MAD decoder plug-in

about the Winamp MAD decoder plug-in v0.12.2B
about the Winamp MAD decoder plug-in v0.12.2B

Return to the list of decoders.