[alsa-devel] USB dB data

Takashi Iwai tiwai at suse.de
Fri Sep 1 09:34:45 CEST 2017


On Wed, 30 Aug 2017 21:48:58 +0200,
Jack Bates wrote:
> 
> I confirmed with Wireshark that my USB sound card responds to GET_MIN
> with 0x0000 and GET_MAX with 0x6300 .. The audio device class
> definition [1] says the units are 1/256 dB (section 5.2.2.2.3: Mixer
> Control) ... So by my calculation, the min and max are 0 and 99 dB
> (0x6300 / 256 == 99) ... Why then does alsactl print:
> 
> > range '0 - 99'
> > dbmin 0
> > dbmax 38
> 
> (/usr/sbin/aslactl -f - store)
> 
> I originally asked about this on the pulseaudio-discuss list [2]
> because it uses "dB data" [3].
> 
> The "0 - 99" makes sense -- it lines up with my calculation ... Where
> does the 38 come from? (I expect it's obvious, I just haven't found
> the explanation?)

Hm, what shows /proc/asound/card*/usbmixer proc file?
It contains some raw data.

Basically the driver simply interprets the USB descriptor min/max
unless there are overriding mappings by quirk list.


Takashi


More information about the Alsa-devel mailing list