On Sat, 23.05.09 15:50, Jud Craft (craftjml at gmail.com) wrote: > Hello. Just installed F11 and made a note about the sound. I hate to > waste anybody's time with something obvious, but... > > Why does Pulseaudio (both in pavucontrol and in the new Sound > Properties panel) not scale exactly with Alsamixer? Because PA exposes the same volume scale mapping on all hardware. In 0.9.15 we mapped 0% on the volume scale to -90dB and 100% to 0dB, in between the mapping between those percentages and the dB scale was linear (i.e. to the effect that we had an overall logarithmic mapping). This mapping is not particularly well chosen since it gives too much control over the uninteresting parts below -20dB and too little control over the 'interesting' parts above -20dB. That's why I modified the mapping in PA git. It's now cubic, which is supposed to be feel more 'natural'. So, coming back to how PA maps those volumes to ALSA: alsamixer will expose the exact discrete volume steps of the sound card and show dB information just as little help at the side. PA however controls the volume in dB and if the hw doesn't provide the requested volume step we go to the next higher and then attenuate by the remaining factor in software. That way we can provide the same volume range and granularity on all hardware with the same mapping from the UI to the attenuation factor. So basically, while tha mapping from those percentages to the loudness is different in PA and alsamixer, the dB scaling is mostly the same -- except when it is not... ALSA does not define any reference point for the dB scale it exports in its mixer controls. i.e. it is not clear what 0dB refers to, sometimes it is some 'standard' voltage, sometimes it is a different 'standard' voltage, sometimes it is maximum amplification. To even out all those differences PA shifts the dB scale so that 0dB is always maximum amplification. (To complicate things further this is actually only maximum *hardware* amplification, PA will allow you to go higher in software). Because sometimes the 0dB ALSA exposes is actually useful PA exposes that value as "base volume". Confused? You have every right to. Lennart -- Lennart Poettering Red Hat, Inc. lennart [at] poettering [dot] net http://0pointer.net/lennart/ GnuPG 0x1A015CC4