[pkg-mad-maintainers] Bug#465438: Bug#465438: terrible decoding quality with libmad0 on amd64

Kurt Roeckx kurt at roeckx.be
Tue Feb 12 18:51:36 UTC 2008


On Tue, Feb 12, 2008 at 01:48:59PM +0100, Julien Pommier wrote:
> Package: libmad0
> Version: 0.15.1b-2.1
> Severity: important
> Tags: patch
> 
> Every program using libmad0 decodes wrongly some (if not all) mp3  
> files on amd64.
> The bug is very audible on this one:
> 
> http://www.pianoteq.com/audio/mengo-je-passerai-la-main-partial.mp3
> 
> (One may need headphones to hear the high pitch noise as it is above  
> 10kHz)

There seems to be some 10 KHz signal, but it's like -75 dB.  I doubt you
can hear that, since the rest seems to be around -10 dB.  I can't hear it.

The mp3 file also seems to be just not 0 dB.

> It seems to be specific to 64 bit architecture. Compiling libmad with  
> the
> configure option --enable-fpm=64bit fixes the problem.

Note that during building the packages it says:
checking for architecture-specific fixed-point math routines... DEFAULT
configure: WARNING: default fixed-point math will yield limited accuracy

Which it doesn't when using for instance --enable-fpm=64bit.

There are a few options:
- default: low quality, fastest, current version
- fpm=64bit: Highest accuracy, but slower.
- fpm=intel: fast and accurate, written in i386 assembler.

64bit and intel actually produce the same file.

The reason I didn't change this yet was that it changes
the symbol "mad_build" which contains the options used
to build it.  It then generates this:
madplay: Symbol `mad_build' has different size in shared object, consider re-linking

And it doesn't properly display the actual string.

Anyway, I've done some speed test with it:
- Current version: 4.9 s
- Recompiled with current gcc: 4.1 s
- 64bit: 4.7 s
- Intel: 6.6 s

Anyway, this has been on my own wishlist things to change for
a while.

I don't remember the intel version being so bad on amd64.  So
64bit clearly seems to be the best option if we change things.


Kurt






More information about the pkg-mad-maintainers mailing list