我已经从 12.04 更新到 Kubuntu 12.10,但我的声音停止工作了...我想是因为我的系统中有两个声卡,我认为禁用其中一个应该可以解决问题。以下是 inxi 的输出:
$ inxi -Ax
Audio: Card-1: NVIDIA GF106 High Definition Audio Controller
driver: snd_hda_intel bus-ID: 05:00.1
Card-2: Advanced Micro Devices [AMD] nee ATI SBx00 Azalia (Intel HDA)
driver: snd_hda_intel bus-ID: 00:14.2
Sound: Advanced Linux Sound Architecture ver: 1.0.25
$
我想禁用 NVIDIA GF106,因为它的 HDMI 输出无法传输到我的耳机。我该怎么做?或者还有其他恢复声音的技巧吗?非常感谢。
输出如下aplay -l
:
**** List of PLAYBACK Hardware Devices ****
card 0: SB [HDA ATI SB], device 0: ALC892 Analog [ALC892 Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 0: SB [HDA ATI SB], device 1: ALC892 Digital [ALC892 Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 7: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 8: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 9: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: Headset [Logitech USB Headset], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
这是~/.asoundrc
pcm.!default {type hw card 0 device 0}
ctl.!default {type hw card 0 device 0}
但仍然无法正常工作 :(
答案1
也许您的 NVIDIA 卡被设置为默认音频设备;当我尝试通过 HDMI 获取音频时,例如在 Flash 中,我遇到了类似的问题。问题是我的 Realtek 卡被设置为默认,而某些应用程序不允许您选择要使用的声音设备。我通过将 HDMI 音频设置为默认音频设备解决了该问题,这可以通过编辑.asoundrc
主目录中的文件来实现。
以下是操作方法。首先,您必须找到要使用的正确卡和设备。运行命令aplay -l
。我猜您想让音频从 USB 耳机中出来?从输出中,aplay -l
您可以看到 USB 耳机已卡号 2和设备编号 0,因此请将以下内容放入您的.asoundrc
文件中。
pcm.!default {
type hw
card 2
device 0
}
ctl.!default {
type hw
card 2
device 0
}
答案2
您可以使用 sysfs 节点从 ALSA 中取出 PCI/PCIe 卡
remove
:echo 1 | sudo tee /sys/class/sound/card0/device/remove
例如:
# current cards $ cat /proc/asound/cards 0 [HDMI ]: HDA-Intel - HDA ATI HDMI HDA ATI HDMI at 0xfcba0000 irq 73 1 [Generic ]: HDA-Intel - HD-Audio Generic HD-Audio Generic at 0xfca00000 irq 76 2 [Mic ]: USB-Audio - Samson Meteor Mic Samson Technologies Samson Meteor Mic at usb-0000:09:00.3-2.3, full speed 3 [SoundBar ]: USB-Audio - Dell AC511 USB SoundBar Dell Dell AC511 USB SoundBar at usb-0000:09:00.3-2.4.1, full speed # remove cards $ echo 1 | sudo tee /sys/class/sound/card0/device/remove 1 $ echo 1 | sudo tee /sys/class/sound/card1/device/remove 1 # updated cards $ cat /proc/asound/cards 2 [Mic ]: USB-Audio - Samson Meteor Mic Samson Technologies Samson Meteor Mic at usb-0000:09:00.3-2.3, full speed 3 [SoundBar ]: USB-Audio - Dell AC511 USB SoundBar Dell Dell AC511 USB SoundBar at usb-0000:09:00.3-2.4.1, full speed
要重新启用卡,请戳 PCI
rescan
节点:echo 1 | sudo tee /sys/bus/pci/rescan
USB 卡有点棘手,因为你必须从
/sys/class/sound/cardX/device
符号链接中读取 USB 设备路径才能将其接入device/unbind
:CARD=card3; \ basename $(readlink /sys/class/sound/$CARD/device) | \ sudo tee /sys/class/sound/$CARD/device/unbind
请注意,移除卡 0 会引起混淆alsamixer
:
$ alsamixer
cannot open mixer: No such file or directory
...因此请确保选择具有该--card
选项的其他卡。
答案3
最常见的情况是,您的系统会配备 PulseAudio。要禁用音频设备,请安装PulseAudio 音量控制并使用“配置”选项卡禁用设备。