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