Re: [linux-audio-dev] 24 bits, 2's complement - help!

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-dev] 24 bits, 2's complement - help!
From: Bill Gribble (grib_AT_cs.utexas.edu)
Date: ma tammi  17 2000 - 09:19:28 EST


Benno Senoner <sbenno_AT_gardena.net> writes:
> yea, an opensource dithering/shaping library would be great,
> do you know if there are some papers around the net which speak about
> high quality dithering/noise-shaping ?

There are lots of papers in the Journal of the Audio Engineering
Society (http://www.aes.org, article searches at
http://www.aes.org/journal/search.html). You can look up likely
articles here and then head out to the library to find them, or order
the (sort of pricy) reprints online.

However, dither isn't brain surgery. The principle is that you have a
random signal that you add to your audio signal before truncating the
word length. The variables are the shape and magnitude of the
probability distribution function (PDF) that describes the random
signal. If the time-domain PDF is not rectangular we call it a "noise
shaped" PDF. Bob Katz's web page on dither
http://www.digido.com/ditheressay.html has a semi-technical overview
with a frequency-domain picture of a successful noise PDF; the idea is
that you use the same noise power but you put most of the noise
frequency content in the bands where the ear is less sensitive. Come
up with a good shape, give it a fancy name, and you're in business.

As a counterexample, Paul B-D sent me a pointer to RME's "anti-dither"
page: http://www.rme-audio.com/english/techinfo/dither.htm . This is
an attempt to explain why RME's bad analog circuitry design in their
A/D converters is actually a good thing because it adds dither for
free. It's a point worth considering, but, um, not for too long; I've
participated in enough critical listening tests with dithered
vs. non-dithered word-length truncation to know that it's something
you definitely want to do, even with real-world AD conversion
hardware.

> But explain me please why tables are a no-no ?

I think tables are a fine implementation idea. You just need to make
sure you have enough of them and they're long enough. The noise needs
to be uncorrelated across all the channels that will be played
simultaneously; you need a separate noise table for right and left of
a stereo output, for example.

Bill Gribble


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : pe maalis 10 2000 - 07:23:26 EST