16bit -> 2^16 = 65536

Which means that there is exactly 65536 possible levels
that sound signal can occupy. But because 1 bit is used
for the sign (+ or -) we can actually only use one half,
32768 levels.
To put it in simple words - to make the loudest noise
completely silent, you must divide it with more than 32768
in order to make it 0.
hmm, thinking about it now, you need to divide it by 96 dB to get [32768 -32768] to go to [0.5 -0.5] which would round down to zero. Dividing by 90 dB would get to [1 -1]. Going with 96 dB is probably the go (and people recognise that number).
But if this will be applied, your keyframes set to -40dB may be heard.
(-40dB = 100  --->  32768 / 100 = 327,68)
Of course things now work in such a way (according to Pierre), that any
sound divided by 100 or more is automatically muted (how this is
realized, I don't know).
It is realize by lines:

       if(fade_value <= INFINITYGAIN)
           value = 0;
       else
           value = DB::fromdb(fade_value);

in cinelerra/virtualanode.C where INFINITYGAIN is defined in units.h as -40.

It least this is how I understand things. But if I am wrong, someonen
please correct me.
Seems rightish to me.

Again, please use the latest SVN if you want sane methods of controlability of the automation curves!

_______________________________________________
Cinelerra mailing list
[email protected]
https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra

Reply via email to