should calling mixer load soundcard drivers?
Brian J. Tarricone
bjt23 at cornell.edu
Tue Feb 22 22:12:38 CET 2005
Jason Keltz wrote:
> Should calling xfce4-mixer cause my Linux system to load the soundcard
> drivers?
Not directly, but attempting to access the sound device may cause the
kernel to automatically load the drivers.
> Case in point...
>
> Before I start xfce4-mixer, the following modules are loaded:
> snd-mixer-oss 16184 0 (autoclean) (unused)
> snd 47812 0 (autoclean) [snd-mixer-oss]
> soundcore 7076 0 (autoclean) [snd]
>
> If I start xfce4-mixer at this point, I can't adjust any of the
> settings. There are no options. On the other hand, if I manually
> load "alsamixer" and then exit, the required sound modules are loaded...
>
> snd-intel8x0 24936 0 (autoclean)
> snd-ac97-codec 59676 0 (autoclean) [snd-intel8x0]
> snd-pcm 88160 0 (autoclean) [snd-intel8x0]
> snd-page-alloc 9108 0 (autoclean) [snd-intel8x0 snd-pcm]
> snd-timer 20676 0 (autoclean) [snd-pcm]
> gameport 3524 0 (autoclean) [snd-intel8x0]
> snd-mpu401-uart 5664 0 (autoclean) [snd-intel8x0]
> snd-rawmidi 18944 0 (autoclean) [snd-mpu401-uart]
> snd-seq-device 6028 0 (autoclean) [snd-rawmidi]
> snd-mixer-oss 16184 0 (autoclean) (unused)
> snd 47812 0 (autoclean) [snd-intel8x0
> snd-ac97-codec snd-pcm snd-timer snd-mpu401-uart snd-rawmidi
> snd-seq-device snd-mixer-oss]
> soundcore 7076 1 (autoclean) [snd]
>
> If I try xfce4-mixer at this point, it works perfectly fine.
>
> Should xfce4-mixer cause the sound card modules to load like with
> alsamixer?
The problem is that xfce4-mixer appears to be trying to use the OSS
device for mixer functionality, which apparently causes the kernel to
load a subset of what you want (just the part of ALSA that does OSS
emulation). Of course, alsamixer, being an ALSA app, attempts to access
the ALSA mixer device, and so the kernel loads all the necessary ALSA
modules for your card.
The solution is to use your distro's mechanism to load all the modules
automatically at boot. I also believe the alsa-utils package provides
an initscript to load modules, restore mixer levels, etc. on boot.
-brian
More information about the Xfce
mailing list