LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1402|回复: 6

为何升级内核后声卡哑了?

[复制链接]
发表于 2002-11-8 08:55:59 | 显示全部楼层 |阅读模式
我用的是DELL Latitude C600,ESS ES1983S maestro3i PCI Audio Accelerator
模块maestro3
在2.4.18-14下可以正常发声,在线升级到2.4.18-17.8.0后就不能发声了,但声卡检测正常.该振样解决这个问题?
 楼主| 发表于 2002-11-8 08:57:59 | 显示全部楼层
补充一下:是在RH8下
发表于 2002-11-8 10:59:15 | 显示全部楼层
用下面的命令配制过吗?
#sndconfig
 楼主| 发表于 2002-11-8 11:52:14 | 显示全部楼层
配置了的,可以正确检测出型号,但听不到测试音.
发表于 2002-11-10 17:47:27 | 显示全部楼层
在modules.conf加入

# ALSA portion
alias char-major-116 snd
options snd snd_major=116 snd_cards_limit=1
alias snd-card-0 snd-maestro3
# module options should go here
options snd-maestro3 snd_index=0 snd_id="Maestro3" snd_external_amp=1 snd_amp_gpio=3

# OSS/Free portion
alias char-major-14 soundcore
alias sound-slot-0 snd-card-0

# card #1
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
post-install snd alsactl restore
 楼主| 发表于 2002-11-11 14:16:28 | 显示全部楼层
声卡还是不能发声,不知道新内核是不是还有兼容性问题.
发表于 2002-11-11 14:25:30 | 显示全部楼层

你用这个方法!

这是转传的

ESS 1988是一款比较怪的声卡,至少我这么认为。我在互联网上发现大多数ESS 1988声卡的用户,特别是笔记本用户都在抱怨虽然在Linux能够发现声卡,而且声卡工作正常,但是就是没有声音。我也深受其害,自从把操作系统从win2000换成RedHat 7.3以后,我的笔记本上的扬声器一直没有响过,虽然没有声音也能够工作,但是总觉得缺少了点什么。

我的笔记本是联想昭阳3100CF,为了让声卡能够发出声音,我尝试了除重编译内核以外的大多数方法,装过OSS系统,使过ALSA,可能是不得要领,均没有成功,但是我并没有放弃。工夫不负有心人,在前辈们无私的帮助以及我坚持不懈的努力下,声卡终于发出了美妙的,久违的,动听的声音。

其实ALSA完全可以把声卡驱动起来,只需要稍微改动一个参数就可以让起发声,下面我就一步一步来说明安装过程:

1.开始当然是下载ALSA的驱动程序了。可以到http://www.alsa-project.org
去下载驱动,需要下载的软件包有三个分别是driver,lib和utils,我下载的版本是0.9.0rc3,0.9.0rc2也可以,但是更低的版本我没有试过。
2.把这三个软件包分别展到对应的目录下面,然后按照driver,lib,utils的顺序依次 configure, make , make install。注意driver在configure的时候最好附加上一些参数,比如:
./configure --with-isapnp=no --with-oss=yes --with-cards=maestro3
否则0.9.0rc3的driver可能编译不成功。随便说一句,ESS 1988使用的芯片名字叫做maestro3。

3.安装成功以后,到driver的目录下运行一下./snddevices,生成对应的设备文件。

4.打开/etc/modules.conf,添加对声卡的支持,这是关键的地方。
#====================================================================================
# ALSA portion
alias char-major-116 snd
options snd snd_major=116 snd_cards_limit=1
alias snd-card-0 snd-maestro3
# module options should go here
options snd-maestro3 snd_index=0 snd_id="Maestro3" snd_external_amp=1 snd_amp_gpio=3

# OSS/Free portion
alias char-major-14 soundcore
alias sound-slot-0 snd-card-0

# card #1
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
post-install snd alsactl restore
#===================================================================================
这个文件是我参照了很多前辈的设置改出来的,关键的地方在参数 snd_amp_gpio 上,笔记本电脑上的声卡不出声音很有可能因为这个参数没有正确设置,它的取值范围是0~15。

5./sbin/lsmod可以列出系统内核中的模块,如果没有声卡驱动,则运行 /etc/rc.d/init.d/alsasound start 把它加载到内核空间中去。

6.运行 alsamixer 调整音量,取消静音。按F1可以得到帮助。这里需要注意的是 External Amplifier Power Down,根据前辈的经验,它有可能影响发声。如果没有声音可以把它置为on或者off试一试。

7.运行 aplay ***.wav 试一下,看有没有声音,如果没有,修改snd_amp_gpio的值,运行 /etc/rc.d/init.d/alsasound restart ,然后调整一下音量,再试一试,直到声卡发出声音为止。我的心得是,要在安静的环境中来调试,有可能声卡发出的声音比较小,不注意就漏过去了。先调整一下音量和静音,如果还没有声音再修改snd_amp_gpio的值。



您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表