[alsa-devel] Handling of the DXS controls in the via82xx driver

Soeren D. Schulze soeren.d.schulze at gmx.de
Sun Mar 28 00:04:23 CET 2010


Hi everyone,

before my latest upgrade to Linux 2.6.32 (yes, sorry, it's Debian), I
had four levers in my alsamixer: VIA DXS, VIA DXS 1, VIA DXS 2 and VIA
DXS 3.  They controlled the hardware mixing when accessing the sound
device multiple times.

Now they have disappeared.  I think I can pretty certainly trace this
down to commit 2fb930b53f513cbc4c102d415d2923a8a7091337 to Linux
[http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.32.y.git;a=commit;h=2fb930b53f513cbc4c102d415d2923a8a7091337],
which "move[s] DXS volume controls to PCM interface".

As I'm not an ALSA developer, I don't realize the intended effect of
this change, but the actual effect is that I cannot change the DXS
volumes any more.  mplayer still controls the global PCM volume.  Well,
in fact, there is one way.  While an mplayer is running, I can do:

amixer cset numid=47,iface=PCM,name='PCM Playback Volume' 24,24

When restarting mplayer, the volume is reset to 31,31 (maximum).  Commit
3d00941371a765779c4e3509214c7e5793cce1fe
[http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.33.y.git;a=commit;h=3d00941371a765779c4e3509214c7e5793cce1fe]
seems to be responsible for this.

The bad thing about it is that 31,31 is a really bad setting for my
poorly engineered sound card.  It distorts a lot.

I suspect that the real *bug* is that mplayer does not use the
per-channel DXS controls even though it's supposed to (which seems to be
why the DXS controls are called "PCM Playback Volume").

Personally, rather than fixing this bug, I would just revert to the
former state.  I was always happy with all the DXS levers set to 75%.


Thank you

Sören


More information about the Alsa-devel mailing list