[pulseaudio-discuss] Volume problems in Pulse and alsamixer.
Jan Buchal
buchal at brailcom.org
Sun May 24 01:32:29 PDT 2009
Hello,
>>>>> "LP" == Lennart Poettering <lennart at poettering.net> writes:
[....]
LP> The ALSA drivers simply expose the dB information that is
LP> documented in the hardware documentation. Often that
LP> documentation mentions relative to which reference level those
LP> dB values are. However, ALSA doesn't encode that information in
LP> any way. Also, a lot of hardware/documentation does *not*
LP> document the reference level, for example the USB spec doesn't
LP> do that at all.
LP> We had longer discussions on alsa-devel about this. Ideally all
LP> 'inner' mixer sliders set 0dB to 'same amplitude on input as on
LP> output of the element in question'. And all 'outer' mixer
LP> sliders set 0dB to some defined reference voltage. However,
LP> realisitically it is an incredible amount of work if not
LP> impossible to do that. For many cards (especially cheaper ones)
LP> we'd have to physically measure the output voltage. We'd then
LP> have to create a huge quirk database that includes all that
LP> measured data. And then, what would we do about integrated
LP> speakers (i.e. speakers with an USB cable)? Measure sound
LP> pressure?
LP> Given the limited manpower, the lacking equipment and the fact
LP> that we have better things to do then spending all days with
LP> measuring sound cards this is unlikely to be added.
LP> But of course, you are welcome to contribute work in this area!
>> Next question, for the curious: how does PA know how to shift the
>> dB scale to where 0dB matches maximum amplification, if ALSA
>> itself doesn't know?
LP> For a specific driver ALSA tells us that the volume control
LP> range goes from (as an example) -64dB to +7dB. We have no clue
LP> what 0dB means in this range data. However, what we know is that
LP> we can shift this to -71dB to 0dB and then we know that 0dB is
LP> max hw amplification, -71dB is min hw attenutation and -7dB is
LP> the 'base' volume.
LP> Of course, this shifting doesn't add any information we didn't
LP> have before. However it unifies behaviour across different sound
LP> cards a bit and also makes the mixer a bit more like your stereo
LP> where 0dB is max amplification too.
>> So what you've said is basically -- "Yes, we know this is weird,
>> but we have a new volume scaling formula in the current tree that
>> should help balance out your volume control a little bit." Right?
LP> What I said is basically that it is *not* weird and *does* make
LP> a lot of sense, although the 'percent' to loudness mapping in
LP> 0.9.15 can be improved. Which I did in PA git.
Can it relate with SD volume problem which I describe in my previous
emails? How can test it? For my environment is complicate build own PA
so if anywhere exist Debian's packages will be helpful.
Thanks
--
Jan Buchal
Tel: +420242486008
Mob: +420608023021
http://www.brailcom.org
More information about the pulseaudio-discuss
mailing list