[pulseaudio-discuss] [PATCH] alsa-mixer: Take channel mask of volume element into account when finding a subset path

Dave Williams d.r.williams.01 at cantab.net
Fri Dec 30 08:01:12 PST 2011

> Actually, if my reasoning above makes sense, there's no need to
> implement anything. Just remove the lfe-on-mono path from the mappings
> in profile-sets/default.conf that don't have lfe in their channel map.
> Can someone say why lfe-on-mono would be needed on mappings without
> separate lfe channel?

I have an example of just such a case: A Dell Inspiron 9300. There is no
lfe PCM channel, but there is a 'Master Mono' control that controls the
subwoofer level (I guess the separation is done in the analogue domain
after the DACs).

For this computer, the 'Master' level control and 'Master Mono' level
control need to be set to (approximately) the same level to get
reasonable sound out of it.

At present I'm having to take volume control out of the hands of
pulse, as I can't persuade it to do this (I've been playing with the
analog-output-lfe-on-mono.conf path that ships with debian to no avail).
What appears to be happening is the volume chain constructed by pulse
looks like:
PCM -- Master Mono -- Master

when it should be more like:
PCM -- Master
    \- Master Mono

The upshot being that the sub gets cranked up to max before the main
speaker levels even start to rise when controlling volume through pulse.

There is a lot of talk on forums (e.g. ubuntu launchpad) about this
being an ALSA issue. It isn't - ALSA is reporting perfectly reasonable
dB levels. Pulse is just making a mess of working out the audio path.

Apologies if this has gone off topic slightly - I'm not familiar
enough with the workings of pulse to work out whether it's relevant
to the patch at the start of the topic or not.

More information about the pulseaudio-discuss mailing list