Description of problem: PulseAudio volume control and ALSA volume control not aligned. Version-Release number of selected component (if applicable): Name: pulseaudio Arch: i586 Version: 0.9.15 Release: 11.fc11 How reproducible: Always happens. Steps to Reproduce: 1. Open ALSA mixer (alsamixer -c0) and PulseAudio's sound preferences or pavucontrol. 2. Reduce the volume using PulseAudio down to 0. 3. Watch the ALSA mixer get to -64 dB gain or 0% before PulseAudio. Actual results: Volumes from both ALSA mixer Master and the PA Output Device Internal Audio slider in pavucontrol: PA 100, ALSA 100 (dB gain = -0) PA 90, ALSA 88 (dB gain = -9) PA 80, ALSA 72 (dB gain = -18) PA 70, ALSA 58 (dB gain = -27) PA 60, ALSA 45 (dB gain = -35) PA 50, ALSA 30 (dB gain = -45) PA 40, ALSA 17 (dB gain = -54) PA 30, ALSA 2 (dB gain = -63) At this point there is 'almost no sound' PA 20, ALSA 0 (dB gain = -64) PA 10, ALSA 0 (dB gain = -64) PA 0, ALSA 0 (dB gain = -64) Expected results: PulseAudio and ALSA should both scale smoothly from -64 dB gain to 0.
Created attachment 344991 [details] alsa-info
To be clear, here, the issue is really that when adjusting the volume with PA, you don't get a smooth scale from -64 to 0dB gain; the settings between 0 and 30% in PA are more or less useless.
PA 0.9.15 basically maps 0dB to 100% and -90dB to 0%. In between that the mapping from the 'percentages' to dB is 'linear'. At 16bit PCM resolution 'silence' is reached around -90dB. That's why the scale ends there. Your sound card's schedule already ends at -64dB as it seems. To the effect that between -64dB and -90dB PA extends the attenuation range in software. In the current git version of PA I changed the mapping between 'percentage' volumes and the gain. Now, the attenuation factor and the percentage have a cubic relation. This should give us a more 'natural' feeling of pixel distance on the screen and actual change in loudness.