** 无声音问题:搭载 Intel Sunrise Point-LP HD Audio 的 Ubuntu 22.04 出现“虚拟输出” **
描述: 我在 Ubuntu 22.04 系统上遇到了声音问题,希望有人能帮我解决问题。目前,我只有“虚拟输出”作为唯一可用的声音输出设备。
系统信息:
- 操作系统:Ubuntu 22.04
- 核心:Linux Swift 6.2.0-33-通用#33~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC
- 音频控制器:英特尔公司 Sunrise Point-LP HD 音频 [8086:9d71] (rev 21)
采取的故障排除步骤:
% sudo alsa force-reload
Unloading ALSA sound driver modules: snd-seq-dummy snd-hrtimer snd-sof-pci-intel-skl snd-sof-intel-hda-common snd-sof-intel-hda snd-sof-pci snd-sof-xtensa-dsp snd-sof snd-sof-utils snd-soc-hdac-hda snd-soc-acpi-intel-match snd-soc-acpi snd-soc-avs snd-soc-hda-codec snd-hda-ext-core snd-soc-core snd-compress snd-pcm-dmaengine snd-hda-intel snd-intel-dspcfg snd-intel-sdw-acpi snd-hda-codec snd-hda-core snd-hwdep snd-pcm snd-seq-midi snd-seq-midi-event snd-rawmidi snd-seq snd-seq-device snd-timer (failed: modules still loaded: snd-hrtimer snd-seq snd-seq-device snd-timer).
Loading ALSA sound driver modules: snd-seq-dummy snd-hrtimer snd-sof-pci-intel-skl snd-sof-intel-hda-common snd-sof-intel-hda snd-sof-pci snd-sof-xtensa-dsp snd-sof snd-sof-utils snd-soc-hdac-hda snd-soc-acpi-intel-match snd-soc-acpi snd-soc-avs snd-soc-hda-codec snd-hda-ext-core snd-soc-core snd-compress snd-pcm-dmaengine snd-hda-intel snd-intel-dspcfg snd-intel-sdw-acpi snd-hda-codec snd-hda-core snd-hwdep snd-pcm snd-seq-midi snd-seq-midi-event snd-rawmidi snd-seq snd-seq-device snd-timer.
~ % grep intel /etc/modprobe.d/alsa-base.conf
options snd-intel8x0m index=-2
~ % lspci -nnk | grep -n -A 4 Audio
37:00:1f.3 Multimedia audio controller [0401]: Intel Corporation Sunrise Point-LP HD Audio [8086:9d71] (rev 21)
38: Subsystem: Acer Incorporated [ALI] Sunrise Point-LP HD Audio [1025:1245]
39- Kernel modules: snd_hda_intel, snd_soc_skl, snd_soc_avs, snd_sof_pci_intel_skl
40-00:1f.4 SMBus [0c05]: Intel Corporation Sunrise Point-LP SMBus [8086:9d23] (rev 21)
41- Subsystem: Acer Incorporated [ALI] Sunrise Point-LP SMBus [1025:1245]
42- Kernel driver in use: i801_smbus
~ % aplay -l
aplay: device_list:274: no soundcards found...
% dpkg -L linux-modules-$(uname -r) | grep snd
/lib/modules/6.2.0-33-generic/kernel/sound/core/seq/snd-seq-dummy.ko
/lib/modules/6.2.0-33-generic/kernel/sound/core/seq/snd-seq-midi-emul.ko
/lib/modules/6.2.0-33-generic/kernel/sound/core/seq/snd-seq-midi-event.ko
/lib/modules/6.2.0-33-generic/kernel/sound/core/seq/snd-seq-midi.ko
/lib/modules/6.2.0-33-generic/kernel/sound/core/seq/snd-seq-virmidi.ko
/lib/modules/6.2.0-33-generic/kernel/sound/core/seq/snd-seq.ko
/lib/modules/6.2.0-33-generic/kernel/sound/core/snd-compress.ko
/lib/modules/6.2.0-33-generic/kernel/sound/core/snd-ctl-led.ko
/lib/modules/6.2.0-33-generic/kernel/sound/core/snd-hrtimer.ko
/lib/modules/6.2.0-33-generic/kernel/sound/core/snd-hwdep.ko
/lib/modules/6.2.0-33-generic/kernel/sound/core/snd-pcm-dmaengine.ko
/lib/modules/6.2.0-33-generic/kernel/sound/core/snd-pcm.ko
/lib/modules/6.2.0-33-generic/kernel/sound/core/snd-rawmidi.ko
/lib/modules/6.2.0-33-generic/kernel/sound/core/snd-seq-device.ko
/lib/modules/6.2.0-33-generic/kernel/sound/core/snd-timer.ko
/lib/modules/6.2.0-33-generic/kernel/sound/core/snd.ko
/lib/modules/6.2.0-33-generic/kernel/sound/drivers/pcsp/snd-pcsp.ko
/lib/modules/6.2.0-33-generic/kernel/sound/pci/snd-ens1370.ko
~ % cat /proc/asound/cards
--- no soundcards ---
~ % modprobe --show-depends snd_hda_intel
insmod /lib/modules/6.2.0-33-generic/kernel/sound/soundcore.ko
install /sbin/modprobe --ignore-install snd $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-ioctl32 ; /sbin/modprobe --quiet --use-blacklist snd-seq ; }
insmod /lib/modules/6.2.0-33-generic/kernel/sound/core/snd-timer.ko
install /sbin/modprobe --ignore-install snd-pcm $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-pcm-oss ; : ; }
insmod /lib/modules/6.2.0-33-generic/kernel/sound/core/snd-hwdep.ko
insmod /lib/modules/6.2.0-33-generic/kernel/sound/hda/snd-hda-core.ko
insmod /lib/modules/6.2.0-33-generic/kernel/sound/pci/hda/snd-hda-codec.ko
insmod /lib/modules/6.2.0-33-generic/kernel/sound/hda/snd-intel-sdw-acpi.ko
insmod /lib/modules/6.2.0-33-generic/kernel/sound/hda/snd-intel-dspcfg.ko
insmod /lib/modules/6.2.0-33-generic/kernel/sound/pci/hda/snd-hda-intel.ko
~ % pulseaudio -vvv
I: [pulseaudio] main.c: setrlimit(RLIMIT_NICE, (31, 31)) failed: Operation not permitted
I: [pulseaudio] main.c: setrlimit(RLIMIT_RTPRIO, (9, 9)) failed: Operation not permitted
D: [pulseaudio] core-rtclock.c: Timer slack is set to 50 us.
D: [pulseaudio] core-util.c: RealtimeKit worked.
I: [pulseaudio] core-util.c: Successfully gained nice level -11.
I: [pulseaudio] main.c: This is PulseAudio 15.99.1
D: [pulseaudio] main.c: Compilation CFLAGS: Not yet supported on meson
D: [pulseaudio] main.c: Running on host: Linux x86_64 6.2.0-33-generic #33~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Thu Sep 7 10:33:52 UTC 2
D: [pulseaudio] main.c: Found 4 CPUs.
I: [pulseaudio] main.c: Page size is 4096 bytes
D: [pulseaudio] main.c: Compiled with Valgrind support: no
D: [pulseaudio] main.c: Running in valgrind mode: no
D: [pulseaudio] main.c: Running in VM: no
D: [pulseaudio] main.c: Running from build tree: no
D: [pulseaudio] main.c: Optimized build: yes
D: [pulseaudio] main.c: All asserts enabled.
I: [pulseaudio] main.c: Machine ID is c17f95c5e5cf40c580d027a5d2fe9e1d.
I: [pulseaudio] main.c: Using runtime directory /run/user/1000/pulse.
I: [pulseaudio] main.c: Using state directory /home/sasha/.config/pulse.
I: [pulseaudio] main.c: Using modules directory /usr/lib/pulse-15.99.1+dfsg1/modules.
I: [pulseaudio] main.c: Running in system mode: no
E: [pulseaudio] pid.c: Daemon already running.
E: [pulseaudio] main.c: pa_pid_file_create() failed.
~ % sudo dmesg | grep -iE 'snd|sound|alsa'
[ 8.975744] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[ 8.975759] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SST driver
[ 9.362640] snd_soc_avs 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[ 9.362656] snd_soc_avs 0000:00:1f.3: Digital mics found on Skylake+ platform, using SST driver
~ % 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
~ % alsamixer
ALSA lib confmisc.c:855:(parse_card) cannot find card '0'
ALSA lib conf.c:5178:(_snd_config_evaluate) function
cannot open mixer: No such file or directory
~ % journalctl -p err
Sep 18 19:43:40 Sasha-Swift kernel: ACPI BIOS Error (bug): Failure creating named object [\_SB.UBTC], AE_ALREADY_EXISTS (20221020/dsw>
Sep 18 19:43:40 Sasha-Swift kernel: ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20221020/psobject-220)
Sep 18 19:43:40 Sasha-Swift kernel: i801_smbus 0000:00:1f.4: Transaction timeout
Sep 18 19:43:40 Sasha-Swift kernel: i801_smbus 0000:00:1f.4: Failed terminating the transaction
Sep 18 19:43:40 Sasha-Swift kernel: i801_smbus 0000:00:1f.4: SMBus is busy, can't use it!
Sep 18 19:43:46 Sasha-Swift kernel: debugfs: File 'DMIC01 Rx' in directory 'dapm' already present!
Sep 18 19:43:46 Sasha-Swift kernel: HDMI HDA Codec ehdaudio0D2: hdac_hdmi_present_sense: disconnect for pin:port 5:0
Sep 18 19:43:46 Sasha-Swift kernel: HDMI HDA Codec ehdaudio0D2: hdac_hdmi_present_sense: disconnect for pin:port 6:0
Sep 18 19:43:46 Sasha-Swift kernel: HDMI HDA Codec ehdaudio0D2: hdac_hdmi_present_sense: disconnect for pin:port 7:0
Sep 18 19:44:01 Sasha-Swift kernel: snd_soc_skl 0000:00:1f.3: MCPS Budget Violation: 9b050000
Sep 18 19:44:01 Sasha-Swift kernel: snd_soc_skl 0000:00:1f.3: MCPS Budget Violation: 9b050000
Sep 18 19:44:01 Sasha-Swift kernel: snd_soc_skl 0000:00:1f.3: MCPS Budget Violation: 9b050000
Sep 18 19:44:01 Sasha-Swift kernel: snd_soc_skl 0000:00:1f.3: MCPS Budget Violation: 9b050000
Sep 18 19:44:01 Sasha-Swift kernel: snd_soc_skl 0000:00:1f.3: ASoC: error at soc_dai_trigger on hdmi2: -32
Sep 18 19:44:01 Sasha-Swift kernel: HDA DSP HDMI2: ASoC: trigger FE cmd: 1 failed: -32
Sep 18 19:44:02 Sasha-Swift kernel: snd_soc_skl 0000:00:1f.3: ASoC: error at soc_dai_trigger on hdmi1: -32
尝试重新启动、重新安装 pulseaudio 和 alsa,但没有任何效果。
答案1
我不确定,但也许你可以用以下方法解决:
sudo touch /usr/share/pipewire/media-session.d/with-pulseaudio
进而
systemctl --user restart pipewire-session-manager
答案2
请尝试此处列出的步骤:
没有声音:main.c: pa_pid_file_create() 失败
内容是:(rm ~/.config/pulse/*
或者如果自 2019 年以来发生了变化,则使用类似的说法)然后重新启动。祝你好运。
PS 我通过搜索 AskUbuntu 找到了这个线程,[pulseaudio] main.c: pa_pid_file_create() failed.
这样做通常会找到有同样问题的人创建线程。