[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [fluid-dev] Purpose of dither?
From: |
Mihail Zenkov |
Subject: |
Re: [fluid-dev] Purpose of dither? |
Date: |
Wed, 9 May 2007 21:53:13 +0300 |
On Wed, 9 May 2007 06:12:10 -0700 (PDT)
Z F <address@hidden> wrote:
>
> --- Mihail Zenkov <address@hidden> wrote:
>
> >
> > > > Yes, I hear.
> > > > 1. 16bit accuracy give 96 dB resolution. Human limit 120dB.
> > > > 2. For mostly purpose 96 dB enough. But when we truncate audio to
> > 16
> > > > bit, we get new harmonics (distortion) with -60 dB level.
> > > > 3. When i play on midi keyboard, i set gain 0.1-0.2 to prevent
> > > > clipping. It narrows dynamic range. Without dithering i got only
> > > > 40-46
> > > > dB dynamic range when play one note.
> > >
> > > The points 1 and 2 are interesting and improtant. This tells me
> > that
> > > the
> > > 16 bit sampling was used as a trade-off and is not good enough for
> > > high quality audio. I was under the impression that audio CDs were
> > > adequate. Apparently not, thanks for this clarification.
> > >
> > > Your point 3, however, indicates a problem somewhere else, which
> > can
> > > not and should not be solved by dithering. My feeling is that this
> > > problem
> > > should be solved by a non-linear aplification process.
> >
> > With dithering i don't hear any distortion, it enough for me. I also
> > try sound card with 24 bits (108 dB dynamic range) - it slightly
> > better then dithering.
>
> Yes, this confirms my statement. This problem should not be solved
> by dithering, but rather by dynamic range adjustments. This is not
> easy to do, but what is relatively easy to do is to introduce
> exponential gain function. I do not know the audio terminology here,
> but
> in image processing, I think it is called gamma-correction.
>
> The idea is that there should be a mapping between the sound level
> computed by the sythesizer and the actual audio output level. This
> fucntion, roughly should have a shape of
>
> out_volume =( 1- exp(-in_volume))
>
> in_volume is the signal amplitude computed by the sythesizer and
> out_volume is what should be pushed to the audio card. Now, this is
> simply the rought shape can be adjusted to anything one wants. I think
> that this is how your problem needs to be fixed, not dithering. This
> way
> you will use the dynamic range of the audio card DAC more efficiently.
> The fluid synthesizer may have this already. If it does, this is the
> place to fix your problem. If not, that this module has to be added.
1. Dynamic gain just fake. I can change velocity curve in midi and get
something similarities gamma-correction. This sounds like cheap
hardware synth. I need _full_ emulation real piano (and want better
then real, with greater dynamic range :). Just play and compare classic
music and pop. First have dynamic range 70-80 dB, second - 20-30 dB.
For expression real emotions we need huge dynamic range!
2. I need total control on volume each note. Otherwise, i can't
expression what i want.
> > Truncation with dithering not produce new harmonics. Just try do
> > experiments in fresh audacity (old version have broken dithering).
> >
> [snip]
> >
> > If we do float-int-float conversion without dithering, we get
> > distortion.
> > If we do it with dithering noise level slightly grows, without
> > distortion.
> >
>
>
> Well, unfotutanely, as far as I know, it is a common misconception in
> engineering. Truncation with or without dithering produces new
> harmoncis
> just in a different way. I call them distortions.
I don't see harmonics after dithering ... Only noise.
Look at this:
http://www.users.qwest.net/~volt42/cadenzarecording/DitherExplained.pdf
In any case with dithering i don't hear any distortion, without - it
_very_ annoying me.
- Re: [fluid-dev] Purpose of dither?, (continued)
- Message not available
- Fwd: [fluid-dev] Purpose of dither?, Miguel Lobo, 2007/05/09
- Re: [fluid-dev] Purpose of dither?, Miguel Lobo, 2007/05/09
- Re: Fwd: [fluid-dev] Purpose of dither?, Z F, 2007/05/09
- Re: Fwd: [fluid-dev] Purpose of dither?, Mihail Zenkov, 2007/05/09
- Re: [fluid-dev] Purpose of dither?, Z F, 2007/05/09
- Re: [fluid-dev] Purpose of dither?, Z F, 2007/05/09
- Re: [fluid-dev] Purpose of dither?, Josh Green, 2007/05/09
- Re: [fluid-dev] Purpose of dither?,
Mihail Zenkov <=
- Re: [fluid-dev] Purpose of dither?, Z F, 2007/05/09
- Re: [fluid-dev] Purpose of dither?, Mihail Zenkov, 2007/05/10
- Re: [fluid-dev] Purpose of dither?, Z F, 2007/05/10
- Re: [fluid-dev] Purpose of dither?, Edenyard, 2007/05/10
- Re: [fluid-dev] Purpose of dither?, Z F, 2007/05/10
- Re: [fluid-dev] Purpose of dither?, Josh Green, 2007/05/11
- Re: [fluid-dev] Purpose of dither?, Z F, 2007/05/11
- Re: [fluid-dev] Purpose of dither?, Miguel Lobo, 2007/05/11
- Re: [fluid-dev] Purpose of dither?, Z F, 2007/05/11
- Re: [fluid-dev] Purpose of dither?, Miguel Lobo, 2007/05/11