ALSA声卡驱动程序的配置
对于声卡驱动程序,除了内核自带的驱动程序之外,您还可以使用Advanced
Linux Sound
Architecture(ALSA,http://www.alsa-project.org/)提供的驱动程序。它支持一系列主流声卡,同时它和内核
的声音结构互相兼容,在某种程度上,可以说是内核的声卡驱动模块的补充。
ALSA的声卡驱动程序的一般命名规则是snd-card-。soundcard代表不同类型的声卡。例如,对于所有
的16位Soundblaster声卡,它们对应的驱动程序模块为snd-card-sb16。
若与需要linux内核声音驱动的向后兼容性,您还需要两个模块snd-pcm-oss和snd-mixer-oss。对于amixer设置的多个混音
器,它们都是针对不同的设备的。比如CD通道的设置是针对CD播放器的。而很多应用程序,如象mpg123,xmms,realplayer,都要依赖
PCM通道的设置。MIC代表麦克风。不同的Gain部分对于不同的使用能提供特别的增益。
缺省情况下ALSA静音所有的输出。为了获得声音,必须解除主音量和PCM音量的静音。amixer -c 0 sset 'Master',0 100%,100% unmute
amixer -c 0 sset 'PCM ',0 100% unmute
选项包括mute,unmute,capture,nocapture,rec,norec,数字或left:right。amixer不带参数运行时,
返回声卡上所有通道的设置情况。
为了在每次插入声卡驱动模块时,都打开静音,您可以在/etc/modules.conf加入下列语句:post-install snd-card-sb16 amixer -c 0 sset 'Master',0 100%,100% unmute && amixer -c 0 sset 'PCM ',0 100% unmute
在成功插入了alsa声卡模块之后,系统会出现/proc/asound目录,这个目录描述了声卡的工作情况,以及创建的设备文件。
在您加载snd-pcm-oss设备模块之后,你也能使用与oss兼容的方式存取声卡,这时如下的映射会被完成:
ALSA设备OSS设备次设备号
/dev/snd/pcmC0D0/dev/audio0(/dev
/audio)4
/dev/snd/pcmC0D0/dev
/dsp0