用ALSA搞定声卡

王朝other·作者佚名  2008-05-18
窄屏简体版  字體: |||超大  

在LINUX下驱动声卡是一件既简单又复杂的事情。简单之处在于如果安装的LINUX版本支持自己机子的声卡,那么一切都万事大吉。只需进入LINUX打sndconfig,选中符合自己机子的声卡,填上DMA、IRQ、IO参数即可。但是如果LINUX不支持的话,则:

安装ALSA(Advanced Linux sound Architecture)的声卡驱动程序。ALSA是免费的,安装也不复杂。下面以ESS Solol(es1938)声卡为例,介绍ALSA声卡驱动程序的安装方法。先到www.alsa-project.org下载最新的驱动程序。下载后用tar命令把它解压到任意目录下。在安装之前,应确认系统内核支持sound card module,验证方法是键入modprobe sound,如果显示Can’t locate sound module,则证明sound card module未被支持,需要新编译内核。叵支持则显示modprobe sound,运行:

./configure

make install

./snddevices

建立新的声音设备文件。ALSA声音设备文件名与原LINUX声音设备的名称不同。安装完毕后查看驱动程序安装情况可使用cat /proc/asound/sndstat而不是cat /dev/sndstat。

用任意文本编辑器编辑/etc/conf.modules,加入

#ALSA portion

alias char-major-116 snd

options snd snd_major=116 snd_cards_limit=1

alias snd-card-0 snd-card-es1938

options snd-card-es1938 snd_index=1 snd_id=”solol”

# OSS/Free portion

alias char-major-14 soundcore

alias sound-slot-0 snd-card-0

alias sound-service-0-0 snd-mixer-oss

alias sound-service-0-1 snd-seq-oss

alias sound-service-0-3 snd-pcm1-oss

alias sound-service-0-12 snd-pcm1-oss

除把第四五行的snd-card-es1938和snd_id=”solol”稍做改动外其余不必改动。es1938改成具体的声卡名称,可参见解压后modules目录中相关名称。Solol改成具体的声卡名称即可(不超过15个字符)。

modprobe snd-es1938

此处es1938可做与上步同样的改动。重新启动后声卡驱动程序就已加载,若lsmod可见类似下面的输出:

Module Size Used by

snd-pcm1-oss 13964 1 (autoclean)

snd-mixer-oss 3804 0 (autoclean)

snd-card-es1938 2100 1 (autoclean)

snd-es1938 11272 0 (autoclean)

snd-pcm1 17372 0 (autoclean)

snd-timer 8476 0 (autoclean)

snd-mixer 25888 0 (autoclean)

snd-hwdep 2956 0 (autoclean)

snd-pcm 9644 0 (autoclean)

snd 39276 1 (autoclean)

soundcore 2564 5 [snd sound]

因为在缺省情况下mixer是无声的,需用一程序打开它。

KDE:multimedia----Sound Mixer Panel

GNOME: multimedia----Audio Mixer

Anotherlevel: utilities----Sound----Xmixer

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航