On Mon, 14.06.10 11:46, James Courtier-Dutton (james.dutton@gmail.com) wrote:
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.
Well, we apply volumes going from the "outer end" to the "inner end" of the pipeline. That should have the affect that the biggest part is done on the analog elements (i.e. "outer") and only minimal attenuation on the digital elements (i.e. "inner").
In short: this should be covered nicely by PA already, at least if the ALSA mixer used somewhat standard names for things.
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.
I think it is advisable to to attenuation in hw if possible, simply to minimize CPU load. Hence we try to do the biggest volume adjustment in analog hw, and everything we cannot apply there we do in digital hw, and finally everything else in sw.
Lennart