On Wed, Feb 17, 2010 at 10:04:50AM +0100, Jaroslav Kysela wrote: > I think that having a reference level is good for users. For example, > some AC97 codecs have Line Out range from -94.5dB .. 0dB , Mixed Line In > is in range -34.5dB .. 12dB. So if I set 0dB to Line In and 0dB to Line > Out, I would expect to get (if analog parts of soundcard are not > assymetric) identical output level as input level. That'll tend to be the case for most hardware - the main issues are the fact that we don't currently have a way to tell userspace about the signal path in the device (so knowing which amplifiers are in use at a given time can be tricky) and the fact that you're likely to run into are that you do get fixed gain or attenuation stages in the signal path for various reasons and those currently aren't exposed to user space at all (but that'd probably flop out of doing the routing information). > The second question is if the represented dB range and scale reported from > the driver (hardware and audio chip datasheets) really matches the > hardware and how we can measure these values. I suspect a lot of trouble > here, because the analog parts of soundcards might have strange curves - > it's probably thing you deal with in PA now. Datasheets really should be reliable, and if the curve in the datsheet is too unusual to handle with a range the TLV data format does always allow us to specify subranges (down to individual values for each step) so there's no fundamental problem exposing the information to user space. I'd actually be surprised if there were too much of an issue with this beyond the data collection one (especially for USB devices). _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel