我在 Ubuntu 12.04 上遇到了音频问题,我会尝试提供尽可能多的细节,如果有太多细节请谅解。
问题
- 无论我选择什么连接器,无论我使用什么配置文件,音频都会从扬声器和耳机播放。
- 麦克风的声音不断通过耳机和扬声器播放。
当我在“声音设置”中为连接器选择“耳机”时,耳机音频非常安静,但可以从双耳播放。当我在“声音设置”中为连接器选择“模拟输出”时,耳机音频只能从一只耳朵播放,并且很安静(但不像上面那么安静)。
如果我将配置文件设置为“模拟立体声输出/双工”,我只能在声音设置中选择“耳机”作为连接器,所有其他只允许我选择“模拟输出”作为连接器。
尽管存在耳机声音问题,但扬声器声音很好,除了我无法选择使用哪个输出之外,它们只是同时播放。
我的耳机和麦克风插在前面,扬声器插在后面。
我尝试过
alsamixer
除了“前置麦克风增强”设置为 0 以外,我把其他所有设置都设置为 100。
命令输出
aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Intel [HDA Intel], device 0: AD198x Analog [AD198x Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 0: Intel [HDA Intel], device 1: AD198x Digital [AD198x Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: Intel [HDA Intel], device 2: AD198x Headphone [AD198x Headphone]
Subdevices: 1/1
Subdevice #0: subdevice #0
arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: Intel [HDA Intel], device 0: AD198x Analog [AD198x Analog]
Subdevices: 2/3
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
cat /proc/asound/cards
0 [Intel ]: HDA-Intel - HDA Intel
HDA Intel at 0xf7ff8000 irq 70
cat /proc/asound/modules
0 snd_hda_intel
cat /proc/asound/card*/codec* | grep "Codec"
Codec: Analog Devices AD1989B
cat /etc/modprobe.d/alsa-base.conf
# autoloader aliases
install sound-slot-0 /sbin/modprobe snd-card-0
install sound-slot-1 /sbin/modprobe snd-card-1
install sound-slot-2 /sbin/modprobe snd-card-2
install sound-slot-3 /sbin/modprobe snd-card-3
install sound-slot-4 /sbin/modprobe snd-card-4
install sound-slot-5 /sbin/modprobe snd-card-5
install sound-slot-6 /sbin/modprobe snd-card-6
install sound-slot-7 /sbin/modprobe snd-card-7
# Cause optional modules to be loaded above generic modules
install snd /sbin/modprobe --ignore-install snd $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-ioctl32 ; /sbin/modprobe --quiet --use-blacklist snd-seq ; }
#
# Workaround at bug #499695 (reverted in Ubuntu see LP #319505)
install snd-pcm /sbin/modprobe --ignore-install snd-pcm $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-pcm-oss ; : ; }
install snd-mixer /sbin/modprobe --ignore-install snd-mixer $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-mixer-oss ; : ; }
install snd-seq /sbin/modprobe --ignore-install snd-seq $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq-midi ; /sbin/modprobe --quiet --use-blacklist snd-seq-oss ; : ; }
#
install snd-rawmidi /sbin/modprobe --ignore-install snd-rawmidi $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq-midi ; : ; }
# Cause optional modules to be loaded above sound card driver modules
install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-emu10k1-synth ; }
install snd-via82xx /sbin/modprobe --ignore-install snd-via82xx $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq ; }
# Load saa7134-alsa instead of saa7134 (which gets dragged in by it anyway)
install saa7134 /sbin/modprobe --ignore-install saa7134 $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist saa7134-alsa ; : ; }
# Prevent abnormal drivers from grabbing index 0
options bt87x index=-2
options cx88_alsa index=-2
options saa7134-alsa index=-2
options snd-atiixp-modem index=-2
options snd-intel8x0m index=-2
options snd-via82xx-modem index=-2
options snd-usb-audio index=-2
options snd-usb-caiaq index=-2
options snd-usb-ua101 index=-2
options snd-usb-us122l index=-2
options snd-usb-usx2y index=-2
# Ubuntu #62691, enable MPU for snd-cmipci
options snd-cmipci mpu_port=0x330 fm_port=0x388
# Keep snd-pcsp from being loaded as first soundcard
options snd-pcsp index=-2
# Keep snd-usb-audio from beeing loaded as first soundcard
options snd-usb-audio index=-2
希望我提供了足够的信息,我很乐意提供所需的更多信息。谢谢。
更新
重新安装alsa-base
并pulseaudio
修复我遇到的耳机问题。
答案1
你的声卡是 5.1 环绕声卡吗?如果是,我有一个对我有用的解决方案,它也解决了我的麦克风问题。
sudo apt-get remove --purge alsa-base
sudo apt-get remove --purge pulseaudio
sudo apt-get install alsa-base
sudo apt-get install pulseaudio
sudo apt-get install gnome-alsamixer
sudo apt-get install indicator-sound
sudo alsa force-reload
此后重新启动计算机。您将获得 5.1 环绕声。要测试它,请输入
sudo speaker-test -c6
哦,如果你重启后听不到环绕声,你可能需要在终端中输入 alsamixer 并将那里的设置从 2 声道 ( ch2 ) 更改为 6 声道 ( ch6 )。你甚至需要编辑那个配置文件以在那里进行设置。
gksu gedit /etc/pulse/daemon.conf
更改 default-sample-channels = 2 的设置
至:default-sample-channels = 6 (这可以用 ; 或 # 注释掉,取消注释)
编辑该文件并将 alsamixer 设置为 6 个通道后,您可能需要再次重新启动。
编辑更新:即使您没有环绕声,您仍然可以使用上述命令进行移除和安装。它们将允许您以更干净的方式安装 alsamixer。然后打开 alsamixer 并在重启后再次尝试麦克风。