QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1746|回复: 15

alsa安装后还是无声?

[复制链接]
发表于 2004-2-28 15:49:30 | 显示全部楼层 |阅读模式
我用的是 Red Hat 9,内核是 2.4.20-8,声卡是 FM801.

我已经安装了 alsa-driver-1.0.1 alsa-lib-1.0.1 alsa-oss-1.0.1 alsa-utils-1.0.1
安装过程如下:
  安装driver
    cd alsa-driver-1.0.1
    ./configure --with-cards=fm801 --with-oss=yes --with-sequencer=yes --with-debug=none --with-isapnp=no
    make
    make install
   
  安装Library
    cd alsa-lib-1.0.1
    ./configure
    make install
  安装OSS Compat.Library
    cd alsa-oss-1.0.1
    ./configure
    make install
  安装Utilities
    cd alsa-utils-1.0.1
    ./configure
    make install
  运行alsaconf,按提示配置/etc/modules.conf,基本上就是一路回车
  运行结果:
Loading driver...
Starting sound driver: snd-fm801 /lib/modules/2.4.20-8/kernel/sound/acore/snd.o: unresolved symbol schedule_work
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: insmod /lib/modules/2.4.20-8/kernel/sound/acore/snd.o failed
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: unresolved symbol schedule_work
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: insmod /lib/modules/2.4.20-8/kernel/sound/acore/snd.o failed
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: insmod snd-fm801 failed
done
Setting default volumes...
Saving the mixer setup used for this in /etc/asound.state.
/usr/sbin/alsactl: save_state:1061: No soundcards found...
===============================================================================

Now ALSA is ready to use.
For adjustment of volumes, use your favorite mixer.

Have a lot of fun!

  运行alsamixer,调整音量
  运行结果:
  alsamixer: function snd_ctl_open failed for default: No such device
  
  运行kmix,调整音量
  
  运行ntsysv,启动服务里有alsasound一项
  
  运行 #/etc/init.d/alsasound start
  运行结果:
[root@DIF root]# /etc/init.d/alsasound start
Starting sound driver: snd-fm801 /lib/modules/2.4.20-8/kernel/sound/acore/snd.o: unresolved symbol schedule_work
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: insmod /lib/modules/2.4.20-8/kernel/sound/acore/snd.o failed
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: unresolved symbol schedule_work
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: insmod /lib/modules/2.4.20-8/kernel/sound/acore/snd.o failed
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: insmod snd-fm801 failed
done
  
  运行 #lsmod
  显示的结果中没有alsasound
  
然后reboot
   
在 KDE 启动后,弹出标题为:提示-art信息 的窗口,内容为:
    Sound server informational message:
    Error while initializing the sound driver:
    device /dev/dsp can't be opened (No such device)
    The sound server will continue, using the null output device.
   
启动时并没有听到启动的音乐。
不知我那的设置有问题。
 楼主| 发表于 2004-2-29 11:30:18 | 显示全部楼层
怎么没人回答?
回复

使用道具 举报

发表于 2004-2-29 12:27:28 | 显示全部楼层
运行alsaconf式式
回复

使用道具 举报

 楼主| 发表于 2004-2-29 21:52:14 | 显示全部楼层
运行了,还是上面的显示结果。
回复

使用道具 举报

发表于 2004-2-29 22:03:32 | 显示全部楼层
insmod snd-fm801 failed
No soundcards found...

ALSA驱动安装成功了吗?
回复

使用道具 举报

发表于 2004-3-2 08:23:56 | 显示全部楼层
安装完alsa-drivers后,一定要运行一下该目录下的 ./snddevices , 该脚本创建了相应的设备文件。
回复

使用道具 举报

发表于 2004-3-2 08:30:03 | 显示全部楼层
装载驱动模块前要把原来的模块先去掉。
回复

使用道具 举报

 楼主| 发表于 2004-3-2 14:37:46 | 显示全部楼层
我在make install后运行./snddevices了,发贴时笔误。
楼上说的 “装载驱动模块前要把原来的模块先去掉。” 是什么意思?我没听说过,能讲得清楚一点吗?
还有,我把系统重装了一遍,然后安了公社的xmms-1.2.8和mp3插件,发现可以播放mp3,只是放两三分钟就会出现杂音,但kde启动时却没有启动音,我已经在kde控制中心里设置了启动时播放启动音,难道是系统不能使用声卡,软件却可以?
回复

使用道具 举报

 楼主| 发表于 2004-3-3 16:57:02 | 显示全部楼层
楼上说的装载驱动模块前要把原来的模块先去掉,应该怎么做呀?
回复

使用道具 举报

发表于 2004-3-3 21:04:38 | 显示全部楼层
用不着楼主那么复杂吧,只需安装alsa-driver就可以了,在编译的时候不妨直接make install,不要make那一步。还有要配置/etc/modules.conf文件。这个可以通过alsaconf命令获得。再就是把KDE的artsd音频服务进程杀掉。一般的用esd代替artsd比较好。
回复

使用道具 举报

 楼主| 发表于 2004-3-5 16:07:58 | 显示全部楼层
谢谢,我试试先。
回复

使用道具 举报

发表于 2004-3-5 16:20:35 | 显示全部楼层
你的内核重新配置了么?

需要内核取消声音的所有设置(除了声音支持)
回复

使用道具 举报

 楼主| 发表于 2004-3-5 20:55:07 | 显示全部楼层
我没有重新编译内核。
我仔细想了想,这几项可能有问题:
1. 系统启动时显示启动了alsasound,但是当我用 lsmod 查看装载的模块时,并没有alsasound,
    显示如下:
[root@DIF pci]# lsmod
Module                  Size  Used by    Not tainted
ppp_synctty             7904   0  (unused)
ppp_async               9440   1
ppp_generic            24444   3  [ppp_synctty ppp_async]
slhc                    6740   0  [ppp_generic]
soundcore               6404   0  (autoclean)
lp                      8996   0  (autoclean)
parport                37056   0  (autoclean) [lp]
autofs                 13268   0  (autoclean) (unused)
via-rhine              15856   1
mii                     3976   0  [via-rhine]
ipt_REJECT              3928   6  (autoclean)
iptable_filter          2412   1  (autoclean)
ip_tables              15096   2  [ipt_REJECT iptable_filter]
nls_gb2312               964   5  (autoclean)
nls_cp936             124956   6  (autoclean)
vfat                   13004   5  (autoclean)
fat                    38808   0  (autoclean) [vfat]
keybdev                 2944   0  (unused)
mousedev                5492   1
hid                    22148   0  (unused)
input                   5856   0  [keybdev mousedev hid]
usb-uhci               26348   0  (unused)
usbcore                78784   1  [hid usb-uhci]
ext3                   70784   1
jbd                    51892   1  [ext3]
[root@DIF pci]#

    也就是说,没有加载任何声卡驱动。我尝试手动加载,如下:

[root@DIF init.d]# ./alsasound start
Starting sound driver: snd-fm801 /lib/modules/2.4.20-8/kernel/sound/acore/snd.o: unresolved symbol schedule_work
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: insmod /lib/modules/2.4.20-8/kernel/sound/acore/snd.o failed
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: insmod snd-fm801 failed
done
[root@DIF init.d]# modprobe snd-fm801
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: unresolved symbol schedule_work
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: insmod /lib/modules/2.4.20-8/kernel/sound/acore/snd.o failed
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: insmod snd-fm801 failed
[root@DIF init.d]# insmod snd-fm801
Using /lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_pcm_new_R044bfa19
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_card_register_R641b5c23
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_pcm_set_ops_Re2066856
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_pcm_lib_free_pages_R44cfd9e6
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_mpu401_uart_new_Rbee95de0
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_verbose_printk_R49d4e4d1
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_mpu401_uart_interrupt_Rff6d4aa3
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_pcm_hw_constraint_list_R1d63291b
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_pcm_format_width_R55eb2175
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_opl3_create_R961e95a8
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_kcalloc_R4da9e78a
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_pcm_lib_malloc_pages_Ree8cb6e8
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_pcm_lib_ioctl_Rba25d96b
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_pcm_period_elapsed_Rffae58fd
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_pcm_lib_preallocate_pci_pages_for_all_R454529c1
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_card_new_R0daf89b8
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_ac97_mixer
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_ctl_add_R7f7d8998
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_pcm_hw_constraint_integer_Rc9d5a387
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_card_free_Rec27aad4
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_ctl_new1_Rb5b5594b
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_opl3_hwdep_new_Rfb2e3b50
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_pcm_lib_preallocate_free_for_all_Ra7025626
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_device_new_R1aedf641
/lib/modules/2.4.20-8/kernel/sound/pci/snd-fm801.o: unresolved symbol snd_ac97_bus
[root@DIF init.d]#

    由此,我认为也许是模块加载的问题。

2. 在 KDE 启动后,弹出标题为:提示-art信息 的窗口,内容为:

Sound server informational message:
Error while initializing the sound driver:
device /dev/dsp can't be opened (No such device)
The sound server will continue, using the null output device.

    系统提示找不到设备/dev/dsp,我不知声卡是不是/dev/dsp 呢?
    还有,我发现我的/etc目录下没有modprobe.conf 这个文件,不知是不是这个原因?
回复

使用道具 举报

 楼主| 发表于 2004-3-6 11:55:50 | 显示全部楼层
斑竹帮我看看吧!
回复

使用道具 举报

发表于 2004-3-6 14:50:52 | 显示全部楼层
安装ALSA需要重新配置内核,取消Kernel的声卡驱动。

不然ALSA抢不过内核自带的驱动,导致ALSA不能获得声卡的控制权。
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-11-19 18:29 , Processed in 0.045741 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

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