我全新安装了 Ubuntu 22.04。Bang & Olufsen 扬声器不播放声音。
我已经浏览过https://help.ubuntu.com/stable/ubuntu-help/sound-nosound.html.en但没有任何帮助。
我可以通过耳机听到声音,但是当我拔出耳机时,即使音量设置为最大,声音也消失了。
Speaker - sof-hda-dsp
在设置中显示为已识别,但未使用。当我拔出耳机时,Output device
开关。
sudo lspci -v
给出:
00:1f.3 Multimedia audio controller: Intel Corporation Device 51ca (rev 01)
Subsystem: Hewlett-Packard Company Device 8bdd
Flags: bus master, fast devsel, latency 32, IRQ 204, IOMMU group 15
Memory at 601d1d0000 (64-bit, non-prefetchable) [size=16K]
Memory at 601d000000 (64-bit, non-prefetchable) [size=1M]
Capabilities: [50] Power Management version 3
Capabilities: [80] Vendor Specific Information: Len=14 <?>
Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit+
Kernel driver in use: sof-audio-pci-intel-tgl
Kernel modules: snd_hda_intel, snd_sof_pci_intel_tgl
同样,我有一台旧笔记本电脑,其设置几乎相同,实际上可以工作:
lspci -v | fgrep -m1 -A19 '00:1f.3'
给出
00:1f.3 Multimedia audio controller: Intel Corporation Comet Lake PCH-LP cAVS
Subsystem: Hewlett-Packard Company Comet Lake PCH-LP cAVS
Flags: bus master, fast devsel, latency 32, IRQ 154
Memory at b431c000 (64-bit, non-prefetchable) [size=16K]
Memory at b4000000 (64-bit, non-prefetchable) [size=1M]
Capabilities: [50] Power Management version 3
Capabilities: [80] Vendor Specific Information: Len=14 <?>
Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit+
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel, snd_sof_pci_intel_cnl
也许切换正在使用的内核驱动程序是关键?如果有帮助的话,我该怎么做?
声卡未检测到并且命令sudo apt-get install build-essential linux-headers-
uname -r alsa-base alsa-firmware-loaders alsa-oss alsa-source alsa-tools alsa-tools-gui alsa-utils alsamixergui
没有解决问题。
如何为 HP 笔记本电脑安装 Bang and Olufsen 音频驱动程序?未能解决我的问题。
ubuntu(及其变体)上带有 sof-hda-dsp 音频的耳机没有声音也失败。
当耳机连接或断开连接也没有帮助时,音频输出不会切换。
cat /proc/asound/cards
产生以下输出:
0 [sofhdadsp ]: sof-hda-dsp - sof-hda-dsp
HP-HPEnvyLaptop17_cw0xxx-Type1ProductConfigId-8BDD
sudo gedit /etc/modprobe.d/alsa-base.conf
并添加
options snd-hda-intel model=generic
正如建议的Ubuntu 20.04 - 没有声音也失败了。
按照未检测到声卡 - Ubuntu 20.04 - sof-audio-pci 的建议使用 sof-bin也失败了。
我也得到了
[ 0.475866] pci 0000:00:07.0: DPC: RP PIO log size 0 is invalid
[ 0.476486] pci 0000:00:07.2: DPC: RP PIO log size 0 is invalid
在启动过程中。这是否与我的扬声器不工作有关?
我也做了标准sudo apt update && sudo apt upgrade
但无济于事。
当我 grep 中的音频时dmesg
:
[ 0.116257] ACPI: Added _OSI(Linux-Lenovo-NV-HDMI-Audio)
[ 7.147645] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[ 7.147677] sof-audio-pci-intel-tgl 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[ 7.147696] sof-audio-pci-intel-tgl 0000:00:1f.3: enabling device (0000 -> 0002)
[ 7.148080] sof-audio-pci-intel-tgl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040100
[ 8.341717] sof-audio-pci-intel-tgl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[ 8.407947] sof-audio-pci-intel-tgl 0000:00:1f.3: use msi interrupt mode
[ 8.441644] sof-audio-pci-intel-tgl 0000:00:1f.3: hda codecs found, mask 5
[ 8.441649] sof-audio-pci-intel-tgl 0000:00:1f.3: using HDA machine driver skl_hda_dsp_generic now
[ 8.441653] sof-audio-pci-intel-tgl 0000:00:1f.3: DMICs detected in NHLT tables: 2
[ 8.442691] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
[ 8.442695] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:21:0
[ 8.442697] sof-audio-pci-intel-tgl 0000:00:1f.3: FW ABI is more recent than kernel
[ 8.442701] sof-audio-pci-intel-tgl 0000:00:1f.3: unknown sof_ext_man header type 3 size 0x30
[ 8.538642] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware info: version 2:2:0-57864
[ 8.538647] sof-audio-pci-intel-tgl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:21:0
[ 8.538649] sof-audio-pci-intel-tgl 0000:00:1f.3: FW ABI is more recent than kernel
[ 8.555720] sof-audio-pci-intel-tgl 0000:00:1f.3: Topology: ABI 3:22:1 Kernel ABI 3:21:0
[ 8.555726] sof-audio-pci-intel-tgl 0000:00:1f.3: warn: topology ABI is more recent than kernel
[ 8.585014] snd_hda_codec_realtek ehdaudio0D0: autoconfig for ALC245: line_outs=1 (0x17/0x0/0x0/0x0/0x0) type:speaker
[ 8.585021] snd_hda_codec_realtek ehdaudio0D0: speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[ 8.585023] snd_hda_codec_realtek ehdaudio0D0: hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[ 8.585025] snd_hda_codec_realtek ehdaudio0D0: mono: mono_out=0x0
[ 8.585026] snd_hda_codec_realtek ehdaudio0D0: inputs:
[ 8.585028] snd_hda_codec_realtek ehdaudio0D0: Mic=0x19
[ 8.634984] snd_hda_codec_realtek ehdaudio0D0: ASoC: sink widget AIF1TX overwritten
[ 8.634992] snd_hda_codec_realtek ehdaudio0D0: ASoC: source widget AIF1RX overwritten
我也尝试添加snd-intel-dspcfg.dsp_driver=1
,/boot/grub/grub.cfg
但没有改变任何东西https://bbs.archlinux.org/viewtopic.php?id=275737
cat /proc/asound/cards
给出输出:
0 [sofhdadsp ]: sof-hda-dsp - sof-hda-dsp
HP-HPEnvyLaptop17_cw0xxx-Type1ProductConfigId-8BDD
sudo aplay -l
给出输出:
card 0: sofhdadsp [sof-hda-dsp], device 0: HDA Analog (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofhdadsp [sof-hda-dsp], device 3: HDMI1 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofhdadsp [sof-hda-dsp], device 4: HDMI2 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofhdadsp [sof-hda-dsp], device 5: HDMI3 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
如何让扬声器发出声音?
事实证明,这是一个众所周知的问题,目前还不容易解决。详细信息请参见此处。该帖子中提到的笔记本电脑是 HP ENVY x360 15-ey0xxx,它也使用 Bang & Olufsen 扬声器。这篇问答帖子非常活跃,截至撰写本文时的最新回复日期为昨天(2023 年 7 月 25 日)。我做了一些挖掘,似乎你有两个选择:
我认为这两个选项都不理想,我个人会等到这个问题在 Ubuntu 的未来版本中得到解决。