fedora11声卡不能发声

本文描述了作者在VMware上运行Fedora11时遇到的声卡无法正常工作的问题,以及通过查阅Linuxsir.org的文章并进行一系列操作后,最终解决问题的过程。操作包括查看硬件信息、系统内核版本、已加载的内核模块,并使用modprobe加载snd-intel8x0模块,从而使得声卡恢复正常工作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我用的是HASEE优雅HP530 D3本子,然后用VM6.5装Fedora11,装好后声卡发声不正常,用xmms播放Mp3时,发出的声音根本不是音乐,而是“咚咚 。。。”的声音,并且关了xmms后,也一直发出这种声音。另外,在网上找几个视频播放,也没有声音。原因是什么,不清楚。于是搜索声卡方面的资料,最后找到Linuxsir.org的北南文章 用ALSA驱动声卡流程详解 》,按照这篇文章来做,也不清楚是怎样做的,突然发现声卡没有发出声音了,并且调节音量到最大,也没有声音。再在百度中搜索《速度与激情》在线观看,点击发现可以听到声音了,就这样,这个声卡不能发志或是发出“咚咚。。。”之类的声音的问题,被我稀里糊涂地给解决了。按照北南的文章,我做了以下几步:

 

0.查看声卡是不是已经能发声了

[root@localhost ~]# cat /usr/share/sounds/pop.wav > /dev/audio
[root@localhost ~]# cat /usr/share/sounds/pop.wav > /dev/dsp

[root@localhost ~]#

什么也没有听到,什么也没有看到

 

1.查看硬件芯片

[root@localhost beinan]# lspci -v

输出结果为:

00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 01)
    Subsystem: VMware Inc Virtual Machine Chipset
    Flags: bus master, medium devsel, latency 0
    Kernel driver in use: agpgart-intel

00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 01) (prog-if 00 [Normal decode])
    Flags: bus master, 66MHz, medium devsel, latency 0
    Bus: primary=00, secondary=01, subordinate=01, sec-latency=64

00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 08)
    Subsystem: VMware Inc Virtual Machine Chipset
    Flags: bus master, medium devsel, latency 0

00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01) (prog-if 8a [Master SecP PriP])
    Subsystem: VMware Inc Virtual Machine Chipset
    Flags: bus master, medium devsel, latency 64
    [virtual] Memory at 000001f0 (32-bit, non-prefetchable) [size=8]
    [virtual] Memory at 000003f0 (type 3, non-prefetchable) [size=1]
    [virtual] Memory at 00000170 (32-bit, non-prefetchable) [size=8]
    [virtual] Memory at 00000370 (type 3, non-prefetchable) [size=1]
    I/O ports at 1460 [size=16]
    Kernel driver in use: ata_piix

00:07.2 USB Controller: Intel Corporation 82371AB/EB/MB PIIX4 USB (prog-if 00 [UHCI])
    Subsystem: VMware Inc Virtual Machine Chipset
    Flags: bus master, medium devsel, latency 64, IRQ 19
    I/O ports at 1060 [size=32]
    Kernel driver in use: uhci_hcd

00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)
    Subsystem: VMware Inc Virtual Machine Chipset
    Flags: medium devsel, IRQ 9
    Kernel modules: i2c-piix4

00:0f.0 VGA compatible controller: VMware Inc Abstract SVGA II Adapter (prog-if 00 [VGA controller])
    Subsystem: VMware Inc Abstract SVGA II Adapter
    Flags: medium devsel
    I/O ports at 1470 [size=16]
    Memory at f0000000 (32-bit, non-prefetchable) [size=128M]
    Memory at e8000000 (32-bit, non-prefetchable) [size=8M]
    [virtual] Expansion ROM at 30010000 [disabled] [size=32K]

00:10.0 SCSI storage controller: BusLogic BT-946C (BA80C30) [MultiMaster 10] (rev 01)
    Subsystem: BusLogic BT-946C (BA80C30) [MultiMaster 10]
    Flags: medium devsel, IRQ 17
    I/O ports at 1440 [size=32]
    Memory at e8800000 (32-bit, non-prefetchable) [size=32]
    [virtual] Expansion ROM at 30018000 [disabled] [size=16K]
    Kernel modules: BusLogic

00:11.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rev 10)
    Subsystem: Advanced Micro Devices [AMD] PCnet - Fast 79C971
    Flags: bus master, medium devsel, latency 64, IRQ 18
    I/O ports at 1080 [size=128]
    [virtual] Expansion ROM at 30000000 [disabled] [size=64K]
    Kernel driver in use: pcnet32
    Kernel modules: pcnet32

00:12.0 Multimedia audio controller: Ensoniq ES1371 [AudioPCI-97] (rev 02)
    Subsystem: Ensoniq Creative Sound Blaster AudioPCI64V, AudioPCI128
    Flags: bus master, medium devsel, latency 64, IRQ 19
    I/O ports at 1400 [size=64]
    Kernel driver in use: ENS1371
    Kernel modules: snd-ens1371

 

2.系统内核版本

[root@localhost sounds]# uname -rmpi
2.6.29.4-167.fc11.i686.PAE i686 i686 i386

 

3.modeprob.conf的内容

没有找到modeprob.conf这个文件,但是根据文章,找到名为modules.conf的文件也可以。

modules.conf的内容如下:

# Added by VMware Tools
alias eth0 vmnics
probeall vmnics vmxnet pcnet32
alias char-major-14 es1371

 

看不懂是什么意思,本人Linux菜鸟一只。

 

 

4. lsmod查看已加载的内核模块

 

[root@localhost sounds]# lsmod
Module                  Size  Used by
fuse                   49780  2
ipt_MASQUERADE          2364  1
iptable_nat             5152  1
nf_nat                 14736  2 ipt_MASQUERADE,iptable_nat
sco                     9324  2
bridge                 41488  0
stp                     1944  1 bridge
llc                     4780  2 bridge,stp
bnep                   10888  2
l2cap                  18884  3 bnep
bluetooth              44768  5 sco,bnep,l2cap
sunrpc                152352  1
ip6t_REJECT             3160  2
nf_conntrack_ipv6      11368  2
ip6table_filter         3132  1
ip6_tables             10712  1 ip6table_filter
ipv6                  232288  22 ip6t_REJECT,nf_conntrack_ipv6
dm_multipath           13512  0
uinput                  6496  0
ppdev                   6304  0
snd_ens1371            20196  4
gameport                9708  1 snd_ens1371
snd_rawmidi            18728  1 snd_ens1371
snd_seq_device          5988  1 snd_rawmidi
snd_ac97_codec         91576  1 snd_ens1371
ac97_bus                1400  1 snd_ac97_codec
snd_pcm                62632  2 snd_ens1371,snd_ac97_codec
snd_timer              17888  1 snd_pcm
snd                    49056  14 snd_ens1371,snd_rawmidi,snd_seq_device,snd_ac97_codec,snd_pcm,snd_timer
pcnet32                27968  0
parport_pc             22216  0
soundcore               5404  1 snd
parport                28496  2 ppdev,parport_pc
i2c_piix4               8480  0
snd_page_alloc          7644  1 snd_pcm
i2c_core               18056  1 i2c_piix4
mii                     4028  1 pcnet32
pcspkr                  2156  0
BusLogic               61836  3

 

什么意思,也不清楚,照着文章做就是了。

 

再接着来,

[root@localhost sounds]# ls /lib/modules/2.6.29.4-167.fc11.i686.PAE/kernel/
arch  crypto  drivers  fs  lib  net  sound

 

下面的,就是比较关键的了,因为我就是做了下面的,然后就突然发现声卡可以发声了的。

[root@localhost sounds]# modinfo snd-intel8x0
filename:       /lib/modules/2.6.29.4-167.fc11.i686.PAE/kernel/sound/pci/snd-intel8x0.ko
license:        GPL
description:    Intel 82801AA,82901AB,i810,i820,i830,i840,i845,MX440; SiS 7012; Ali 5455
author:         Jaroslav Kysela <perex@perex.cz>
srcversion:     76A91B3ED19728E89DFCF7D
alias:          pci:v000010B9d00005455sv*sd*bc*sc*i*
alias:          pci:v00001022d00007445sv*sd*bc*sc*i*
alias:          pci:v00001022d0000746Dsv*sd*bc*sc*i*
alias:          pci:v000010DEd0000026Bsv*sd*bc*sc*i*
alias:          pci:v000010DEd000000EAsv*sd*bc*sc*i*
alias:          pci:v000010DEd000000DAsv*sd*bc*sc*i*
alias:          pci:v000010DEd0000008Asv*sd*bc*sc*i*
alias:          pci:v000010DEd00000059sv*sd*bc*sc*i*
alias:          pci:v000010DEd0000006Asv*sd*bc*sc*i*
alias:          pci:v000010DEd0000003Asv*sd*bc*sc*i*
alias:          pci:v000010DEd000001B1sv*sd*bc*sc*i*
alias:          pci:v00001039d00007012sv*sd*bc*sc*i*
alias:          pci:v00008086d00007195sv*sd*bc*sc*i*
alias:          pci:v00008086d00002698sv*sd*bc*sc*i*
alias:          pci:v00008086d000027DEsv*sd*bc*sc*i*
alias:          pci:v00008086d0000266Esv*sd*bc*sc*i*
alias:          pci:v00008086d000025A6sv*sd*bc*sc*i*
alias:          pci:v00008086d000024D5sv*sd*bc*sc*i*
alias:          pci:v00008086d000024C5sv*sd*bc*sc*i*
alias:          pci:v00008086d00002485sv*sd*bc*sc*i*
alias:          pci:v00008086d00002445sv*sd*bc*sc*i*
alias:          pci:v00008086d00002425sv*sd*bc*sc*i*
alias:          pci:v00008086d00002415sv*sd*bc*sc*i*
depends:        snd-ac97-codec,snd-pcm,snd-page-alloc,snd
vermagic:       2.6.29.4-167.fc11.i686.PAE SMP mod_unload 686
parm:           index:Index value for Intel i8x0 soundcard. (int)
parm:           id:ID string for Intel i8x0 soundcard. (charp)
parm:           ac97_clock:AC'97 codec clock (0 = whitelist + auto-detect, 1 = force autodetect). (int)
parm:           ac97_quirk:AC'97 workaround for strange hardware. (charp)
parm:           buggy_semaphore:Enable workaround for hardwares with problematic codec semaphores. (bool)
parm:           buggy_irq:Enable workaround for buggy interrupts on some motherboards. (bool)
parm:           xbox:Set to 1 for Xbox, if you have problems with the AC'97 codec detection. (bool)
parm:           spdif_aclink:S/PDIF over AC-link. (int)
parm:           enable:bool
parm:           joystick:int

 

然后是

[root@localhost sounds]# modprobe snd-intel8x0
WARNING: All config files need .conf: /etc/modprobe.d/vmware-tools, it will be ignored in a future release.

 

操作到这一步,突然发现之前的“咚咚。。。”的声音没了,然后就找在线观看,发现好久未闻的声音,终于出来了。然后又试了一下Mp3,有声音了,虽然比较卡,但总比之前没有强。

 

这时,再来lsmod查看加载的内核模块

[root@localhost sounds]# lsmod
Module                  Size  Used by
snd_intel8x0           27440  0
fuse                   49780  2
ipt_MASQUERADE          2364  1
iptable_nat             5152  1
nf_nat                 14736  2 ipt_MASQUERADE,iptable_nat
sco                     9324  2
bridge                 41488  0
stp                     1944  1 bridge
llc                     4780  2 bridge,stp
bnep                   10888  2
l2cap                  18884  3 bnep
bluetooth              44768  5 sco,bnep,l2cap
sunrpc                152352  1
ip6t_REJECT             3160  2
nf_conntrack_ipv6      11368  2
ip6table_filter         3132  1
ip6_tables             10712  1 ip6table_filter
ipv6                  232288  22 ip6t_REJECT,nf_conntrack_ipv6
dm_multipath           13512  0
uinput                  6496  0
ppdev                   6304  0
snd_ens1371            20196  4
gameport                9708  1 snd_ens1371
snd_rawmidi            18728  1 snd_ens1371
snd_seq_device          5988  1 snd_rawmidi
snd_ac97_codec         91576  2 snd_intel8x0,snd_ens1371
ac97_bus                1400  1 snd_ac97_codec
snd_pcm                62632  3 snd_intel8x0,snd_ens1371,snd_ac97_codec
snd_timer              17888  1 snd_pcm
snd                    49056  15 snd_intel8x0,snd_ens1371,snd_rawmidi,snd_seq_device,snd_ac97_codec,snd_pcm,snd_timer
pcnet32                27968  0
parport_pc             22216  0
soundcore               5404  1 snd
parport                28496  2 ppdev,parport_pc
i2c_piix4               8480  0
snd_page_alloc          7644  2 snd_intel8x0,snd_pcm
i2c_core               18056  1 i2c_piix4
mii                     4028  1 pcnet32
pcspkr                  2156  0
BusLogic               61836  3

 

发现比上次使用lsmod的结果多了一行(没有认真地对比前后两次的结果)如下:

snd_intel8x0           27440  0

我想,这行输出的原因,可能就是通过modprobe snd-intel8x0这句把声卡加载了的原因。

 

并且,再次运北南用来测试声卡的语句,还是什么也没有听到,什么也没有看到

[root@localhost ~]# cat /usr/share/sounds/pop.wav > /dev/audio
[root@localhost ~]# cat /usr/share/sounds/pop.wav > /dev/dsp

既然北面说命令是用来检测声卡是否发声的语句,之前能时声发不没有听到任何东西,现在能发声了,也没有听到什么,这是为什么,不清楚。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值