[alsa-devel] wrong decibel data?
gineera at aspect135.co.uk
Mon Jun 14 13:29:22 CEST 2010
On Monday 14 June 2010 11:46, James Courtier-Dutton wrote:
> On 14 June 2010 11:22, Colin Guthrie <gmane at colin.guthr.ie> wrote:
> > 'Twas brillig, and James Courtier-Dutton at 14/06/10 09:56 did gyre and
> > gimble:
> >> If you use "alsamixer", dB values are shown so it is easy to find the
> >> 0dB "sweet spot".
> >> I think it is pulse audio that hides this information when it combines
> >> two alsa mixer controls into one pulseaudio control.
> > But it doesn't hide it. It's shown very clearly in the volume control
> > GUIs as the Base Volume.
> > Do you really think that most users look at the sliders to find the 0dB
> > point? Does gnome-alsa-mixer (the old one) expose this information? No.
> > Does kmix? No. So the vast, vast majority of users do not know where the
> > 0dB point is unless they use alsamixer.... and even if the user is
> > advanced enough to use alsamixer, then I'd still say a proportion of
> > users are just looking at how far up the slider is rather than looking
> > specifically for 0dB.
> > So I'd argue the exact opposite of your claim. That with the base volume
> > clearly presented in the GUI, the h/w 0dB spot is much, much more
> > obvious to the vast majority of users.
> > I really think this is a vast improvement over a complex balancing act
> > of getting two different sliders setup to get distortion free audio!
> > Col
> One has very different problems with capture than one does with playback.
> With capture it is important to identify which are analog controls
> (applied to the analog part of the circuit) and which are digital
> controls (applied to the digital part of the circuit)
> So, for capture one might wish to adjust the analog control so that
> the signal going into the ADC is a suitable level, but once the signal
> is digital, one should really not adjust it further, and just record
> what you have.
> If one was to combine these two capture controls in one PA control, it
> would just be wrong.
> I think there is some indication with the name of the control. It
> sometimes has "Analog" or "Digital" attached to it.
> I think this would be better if alsa reported the "Analog" or
> "Digital" as meta data, like the dB Scales.
> PA could then make more informed decisions for capture. I.e. only
> display the "Analog" controls, and hide the digital ones, setting them
> to 0dB.
> That would provide the most distortion free capture.
> I think it would also be useful if the alsa driver also reported meta
> data indicating how the controls are connected together, because then
> PA would have even more information to make better decisions.
> For example, USB audio devices have this information, but it is not
> sent to user space.
I tried unsuccessfully to argue the importance of the distinction between
analogue and digital gain controls for capture some time ago in respect of
ice1712 based cards fitted with 24-bit AK4524 ADAC chips (or something
similar). The chip provides analogue gain pre-ADC, and software attenuation
post-ADC. They are however set via a single register, which prevents
needless gain+attenuation. Originally they were exposed as 2 separate (but
interacting) controls, giving the user the ability to set true '0dB'
no-gain-no-software-attenuation point (for pro use). The proposal was made
to merge into a single control, and my view against did not prevail. Thus
from 1.0.14 the analogue and digital controls portions are indistinguishable
on this card, unless you happen to know the 'magic number' that is the value
corresponding to the transition from analogue to digital on the scale.
If a mixer app were unknowingly to consider the full-scale value to be the
normal operating point, and scale from there, the results would be poor.
More information about the Alsa-devel