任何高于 5.15 的内核,Dell XPS 17 上的声音都会消失(“虚拟输出”)

任何高于 5.15 的内核,Dell XPS 17 上的声音都会消失(“虚拟输出”)

因此,我的戴尔经常在内核更新时遇到一些声音问题,但最新版本(引入 pipewire 时)让我完全困惑,因为我真的不知道该怎么办了。

是的 - 它在较旧的内核上运行良好,但由于其他功能,我无法永远使用 5.15。就发行版而言,我曾尝试让它在 22.04、22.10 和现在的 23.04 上运行,但都没有成功。

以下是诊断结果,下面是我尝试过的事项列表。

英西-SMA:

> System:   Host: a-buntu Kernel: 6.4.2-1-liquorix-amd64 arch: x86_64
> bits: 64
>     Desktop: GNOME v: 44.2 Distro: Ubuntu 23.04 (Lunar Lobster) Machine:   Type: Laptop System: Dell product: Precision 5750 v: N/A
>     serial: <superuser required>   Mobo: Dell model: 0FR8C2 v: A00 serial: <superuser required> UEFI: Dell
>     v: 1.24.0 date: 03/14/2023 Audio:   Device-1: Intel Comet Lake PCH cAVS driver: snd_hda_intel   Device-2: NVIDIA TU106 High Definition
> Audio driver: snd_hda_intel   Sound API: ALSA v:
> k6.4.2-1-liquorix-amd64 running: yes   Sound Server-1: PipeWire v:
> 0.3.71 running: yes

pactl 列表简短:

1   libpipewire-module-rt   {
            nice.level    = -11
            #rt.prio      = 88
            #rt.time.soft = -1
            #rt.time.hard = -1
        }   
2   libpipewire-module-protocol-native      
3   libpipewire-module-profiler     
5   libpipewire-module-metadata     
7   libpipewire-module-spa-device-factory       
9   libpipewire-module-spa-node-factory     
11  libpipewire-module-client-node      
13  libpipewire-module-client-device        
15  libpipewire-module-portal       
16  libpipewire-module-access   {
            # access.allowed to list an array of paths of allowed
            # apps.
            #access.allowed = [
            #    /usr/bin/pipewire-media-session
            #]

            # An array of rejected paths.
            #access.rejected = [ ]

            # An array of paths with restricted access.
            #access.restricted = [ ]

            # Anything not in the above lists gets assigned the
            # access.force permission.
            #access.force = flatpak
        }   
17  libpipewire-module-adapter      
19  libpipewire-module-link-factory     
21  libpipewire-module-session-manager      
536870912   module-always-sink      
54  alsa_output.pci-0000_00_1f.3.hdmi-stereo    PipeWire    s32le 2ch 48000Hz   IDLE
54  alsa_output.pci-0000_00_1f.3.hdmi-stereo.monitor    PipeWire    s32le 2ch 48000Hz   RUNNING
63  54  62  PipeWire    float32le 1ch 25Hz
33  PipeWire    pipewire
31  PipeWire    pipewire-media-session
32  PipeWire    pipewire-media-session
59  PipeWire    xdg-desktop-portal
60  PipeWire    gsd-media-keys
61  PipeWire    gnome-shell
62  PipeWire    gnome-control-center
70  PipeWire    gnome-terminal-server
71  PipeWire    chrome
72  PipeWire    pactl
48  alsa_card.pci-0000_01_00.1  alsa
49  alsa_card.pci-0000_00_1f.3  alsa

aplay-l:

**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 3: Generic Digital [Generic Digital]
  Subdevices: 0/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 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

请参阅lspci-v | grep -A7 -i“音频”:

00:1f.3 Multimedia audio controller: Intel Corporation Comet Lake PCH cAVS
    Subsystem: Dell Comet Lake PCH cAVS
    Flags: bus master, fast devsel, latency 64, IRQ 16
    Memory at 609b218000 (64-bit, non-prefetchable) [size=16K]
    Memory at 609b100000 (64-bit, non-prefetchable) [size=1M]
    Capabilities: <access denied>
    Kernel driver in use: snd_hda_intel
    Kernel modules: snd_hda_intel, snd_sof_pci_intel_cnl
--
01:00.1 Audio device: NVIDIA Corporation TU106 High Definition Audio Controller (rev a1)
    Subsystem: Dell TU106 High Definition Audio Controller
    Flags: bus master, fast devsel, latency 0, IRQ 17
    Memory at 73000000 (32-bit, non-prefetchable) [size=16K]
    Capabilities: <access denied>
    Kernel driver in use: snd_hda_intel
    Kernel modules: snd_hda_intel

01:00.2 USB controller: NVIDIA Corporation TU106 USB 3.1 Host Controller (rev a1) (prog-if 30 [XHCI])

猫/ proc / asound /模块:

 0 snd_hda_intel
 1 snd_hda_intel

lsmod | grep snd_hda_intel:

snd_hda_intel          53248  4
snd_intel_dspcfg       28672  3 snd_hda_intel,snd_sof,snd_sof_intel_hda_common
snd_hda_codec         204800  5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_soc_hdac_hda,snd_sof_intel_hda
snd_hda_core          131072  8 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_ext_core,snd_hda_codec,snd_sof_intel_hda_common,snd_soc_hdac_hda,snd_sof_intel_hda
snd_pcm               192512  12 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,soundwire_intel,snd_sof,snd_sof_intel_hda_common,snd_compress,snd_soc_core,snd_sof_utils,snd_hda_core,snd_pcm_dmaengine
snd                   139264  23 snd_hda_codec_generic,snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_seq_oss,snd_hda_intel,snd_hda_codec,snd_sof,snd_timer,snd_compress,snd_soc_core,snd_pcm,snd_rawmidi

journalctl -k | grep -Ei “ALSA|HDA|sof[-]|HDMI|snd[_-]|sound|hda.codec|hda.intel”

snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
snd_hda_intel 0000:01:00.1: enabling device (0000 -> 0002)
snd_hda_intel 0000:01:00.1: Disabling MSI
snd_hda_intel 0000:01:00.1: Handle vga_switcheroo audio client
snd_hda_intel 0000:01:00.1: Applying patch firmware 'hda-jack-retask.fw'
input: HDA NVidia HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input14
input: HDA NVidia HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input15
input: HDA NVidia HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input16
input: HDA NVidia HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:01.0/0000:01:00.1/sound/card0/input17
sof-audio-pci-intel-cnl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
sof-audio-pci-intel-cnl 0000:00:1f.3: enabling device (0000 -> 0002)
sof-audio-pci-intel-cnl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if 0x040100
sof-audio-pci-intel-cnl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
sof-audio-pci-intel-cnl 0000:00:1f.3: use msi interrupt mode
sof-audio-pci-intel-cnl 0000:00:1f.3: hda codecs found, mask 4
sof-audio-pci-intel-cnl 0000:00:1f.3: Firmware info: version 2:2:0-57864
sof-audio-pci-intel-cnl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:0
sof-audio-pci-intel-cnl 0000:00:1f.3: unknown sof_ext_man header type 3 size 0x30
sof-audio-pci-intel-cnl 0000:00:1f.3: Firmware info: version 2:2:0-57864
sof-audio-pci-intel-cnl 0000:00:1f.3: Firmware: ABI 3:22:1 Kernel ABI 3:23:0

我尝试过的方法是(第 3 次更新):

  1. 将 snd-intel-dspcfg 和 snd_soc_skl 列入黑名单
  2. 终止、重启、删除并重新安装 pipewire、sof、alsa、ucm
  3. 添加选项snd_hda_intel.dmic_detect=0modprobe 和 grub
  4. 触摸/usr/share/pipewire/media-session.d/with-pulseaudio然后重新启动
  5. 消除胆怯
  6. 添加选项 snd-hda-intel 模型=通用选项 snd-usb-audio index=-2到 modprobe
  7. 安装 linux-modules-extra
  8. 查看 snd-hda-intel 驱动程序依赖关系(已全部安装)

最后一件事实际上是导致任何变化的唯一原因,因为设置中的“虚拟输出”更改为“HDMI /显示端口”(通过 HDMI 或蓝牙连接到我的电脑会产生声音),但这种变化对其他任何东西都没有影响。

两天来,我在这里阅读了几十个主题,但毫无收获。如能得到任何帮助,我将不胜感激!

相关内容