[alsa-devel] Question about snd_mixer_selem_get_playback_dB_range()

Tanu Kaskinen tanu.kaskinen at digia.com
Mon Mar 21 14:55:22 CET 2011

On Mon, 2011-03-21 at 15:43 +0200, Raymond Yau wrote:
> 2011/3/21 Tanu Kaskinen <tanu.kaskinen at digia.com>
> > Hi,
> >
> > I have added code to Pulseaudio that checks that the kernel driver
> > returns the same values if I call
> > snd_mixer_selem_get_playback_dB_range() or
> > snd_mixer_selem_ask_playback_vol_dB() with the lowest and highest volume
> > steps. The reason I do this is that I've seen a driver that didn't
> > return correct values from _dB_range() (it's fixed nowadays), so it's
> > possible that the same kind of bugs will be seen in the future too.
> > Doing this check at Pulseaudio startup helps to detect such bugs early.
> >
> > My question is about the case where the lowest volume step is mute. Is
> > it a bug in the driver if _dB_range() returns something else than
> > SND_CTL_TLV_DB_GAIN_MUTE as the min gain in such case?
> >
> >
> AFAIK , only those STAC920x codec has SND_CTL_TLV_DB_GAIN_MUTE

Also some broken HDA cards, but I'm not referring to any particular
driver. I just want to get my code right.

> most driver does not has min dB mute as the alsa driver just use the values
> in the datasheet of most codec and DAC
> So it is not any driver bug

What is not any driver bug?

> I guess why the volume slider of gnome volume control is mute at mint is
> just follow the behaviour of those OSS driver

Thank you for your reply. Unfortunately, I'm not much wiser after
reading it.

I'll repeat my question:

Is it a bug in alsa (the driver or alsa-lib or whatever) if
snd_mixer_selem_get_playback_dB_range() returns something else than
SND_CTL_TLV_DB_GAIN_MUTE as the min gain, if the lowest volume step for
the element is mute?


More information about the Alsa-devel mailing list