Upgrade, fix and new, maximal CS4236B chip support to mss.c available for testing

Harry Coin harrycoin at qconline.com
Fri Aug 5 00:42:20 GMT 2005

At 07:50 PM 8/4/2005 +0200, Michael Nottebrock wrote:
>All of that would definitely be very nice to have, but I'm not sure if OSS
>currently provides the facilities to do that a generic way - I'm cc'ing Dev
>Mazumdar of 4front who probably will know better.

All it would take would be for the OS to adopt a convention that each step 
from 0 to 100 represents a fixed, driver dependant db change (usual 
case).  It would be up to the device authors to specify the amplification 
at 0, and at 100, and helpfully to do the math so folk don't have to guess 
where 'flat' (0db) is in the 0 to 100 scale.  (Also, with some more recent 
sound chips, and all that resolution, volume scales that offer 100 choices 
start to look a little coarsely grained (especially for recording/input 
mixing jobs).

I'm sure this is old news, but sometimes the levels in mixers are actually 
attenuations for most of the scale, and small amplifications at the 
top.  So 'flat' (0db change input to output) might map onto around 
70,  with 100 mapping onto +12db, and negative values below that.

Also, in many sound chips, there are digital mixers that feed analog mixers 
in output sections, optional fixed  (either flat or +xx db) boosts on mic 
inputs, and so forth.  I mention this to show why there is just no way an 
OS can presuppose usable one size fits all default mixer values.


More information about the freebsd-multimedia mailing list