Ubuntu 20.04、联想 Thinkbook 14s G2 上没有声音

rso*_*oto 6 sound lenovo 20.04

我刚刚安装了 Ubuntu 20.04,除了声音之外,一切都运行得很好。奇怪的是,当音频被触发(由系统声音、静音/取消静音)时,会发出奇怪的蜂鸣声(听起来像是放气的东西)。当使用有线耳机时,只有静电。我猜蓝牙耳机可以工作是因为它是另一个接口?

我尝试过升级内核,我也研究了其他一些类似的问题,但似乎这是不同的。


sudo lshw -C multimedia这是@sancho.s的输出

  *-usb:0                   
       description: Video
       product: Integrated Camera
       vendor: SunplusIT Inc
       physical id: 5
       bus info: usb@3:5
       version: 56.14
       capabilities: usb-2.01
       configuration: driver=uvcvideo maxpower=500mA speed=480Mbit/s
  *-multimedia
       description: Multimedia audio controller
       product: Intel Corporation
       vendor: Intel Corporation
       physical id: 1f.3
       bus info: pci@0000:00:1f.3
       version: 20
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi bus_master cap_list
       configuration: driver=sof-audio-pci latency=64
       resources: iomemory:600-5ff iomemory:600-5ff irq:165 memory:601d180000-601d183fff memory:601d000000-601d0fffff
Run Code Online (Sandbox Code Playgroud)

这是其他命令的输出@sancho

$ cat /proc/asound/cards

0 [sofhdadsp      ]: sof-hda-dsp - sof-hda-dsp
                     LENOVO-20VA-ThinkBook14sG2ITL-LNVNB161216
Run Code Online (Sandbox Code Playgroud)

$ lsmod | grep snd

snd_soc_skl_hda_dsp    28672  5
snd_soc_hdac_hdmi      36864  1 snd_soc_skl_hda_dsp
snd_hda_codec_hdmi     65536  1
snd_hda_codec_realtek   139264  1
snd_hda_codec_generic    86016  1 snd_hda_codec_realtek
snd_soc_dmic           16384  1
snd_sof_pci            24576  0
snd_sof_intel_hda_common    94208  1 snd_sof_pci
snd_soc_hdac_hda       24576  1 snd_sof_intel_hda_common
snd_sof_intel_hda      20480  1 snd_sof_intel_hda_common
snd_sof_intel_byt      28672  1 snd_sof_pci
snd_sof_intel_ipc      20480  1 snd_sof_intel_byt
snd_sof               131072  4 snd_sof_pci,snd_sof_intel_hda_common,snd_sof_intel_byt,snd_sof_intel_ipc
snd_sof_xtensa_dsp     16384  2 snd_sof_intel_hda_common,snd_sof_intel_byt
snd_hda_ext_core       32768  4 snd_sof_intel_hda_common,snd_soc_hdac_hdmi,snd_soc_hdac_hda,snd_sof_intel_hda
snd_soc_acpi_intel_match    49152  2 snd_sof_pci,snd_sof_intel_hda_common
snd_soc_acpi           16384  3 snd_soc_acpi_intel_match,snd_sof_intel_hda_common,snd_sof_intel_byt
ledtrig_audio          16384  2 snd_hda_codec_generic,snd_sof
snd_hda_intel          53248  0
snd_intel_dspcfg       24576  3 snd_hda_intel,snd_sof_pci,snd_sof_intel_hda_common
soundwire_intel        40960  2 snd_sof_intel_hda_common,snd_intel_dspcfg
snd_hda_codec         147456  6 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek,snd_soc_hdac_hda,snd_soc_skl_hda_dsp
snd_hda_core           94208  11 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_ext_core,snd_hda_codec,snd_hda_codec_realtek,snd_sof_intel_hda_common,snd_soc_hdac_hdmi,snd_soc_hdac_hda,snd_sof_intel_hda,snd_soc_skl_hda_dsp
snd_hwdep              16384  1 snd_hda_codec
snd_soc_core          290816  7 soundwire_intel,snd_sof,snd_sof_intel_hda_common,snd_soc_hdac_hdmi,snd_soc_hdac_hda,snd_soc_dmic,snd_soc_skl_hda_dsp
snd_compress           28672  1 snd_soc_core
ac97_bus               16384  1 snd_soc_core
snd_pcm_dmaengine      16384  1 snd_soc_core
snd_pcm               118784  12 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,soundwire_intel,snd_sof,snd_sof_intel_hda_common,snd_soc_hdac_hdmi,snd_sof_intel_ipc,snd_compress,snd_soc_core,snd_hda_core,snd_pcm_dmaengine
snd_seq_midi           20480  0
snd_seq_midi_event     16384  1 snd_seq_midi
snd_rawmidi            36864  1 snd_seq_midi
snd_seq                73728  2 snd_seq_midi,snd_seq_midi_event
snd_seq_device         16384  3 snd_seq,snd_seq_midi,snd_rawmidi
snd_timer              40960  2 snd_seq,snd_pcm
snd                    94208  25 snd_hda_codec_generic,snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_soc_hdac_hdmi,snd_compress,snd_soc_core,snd_pcm,snd_soc_skl_hda_dsp,snd_rawmidi
soundcore              16384  1 snd
Run Code Online (Sandbox Code Playgroud)

$ dpkg -L linux-modules-5.11.0-051100-generic | grep snd

https://pastebin.com/yM4W9bin

$ inxi -SA

(inxi未安装)

$ lspci -nnk | grep -A 4 Audio

(空的)

$ uname -a

Linux camila 5.11.0-051100-generic #202102142330 SMP Sun Feb 14 23:33:21 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)

$ aplay -l

**** List of PLAYBACK Hardware Devices ****
card 0: sofhdadsp [sof-hda-dsp], device 0: HDA Analog (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: sofhdadsp [sof-hda-dsp], device 1: HDA Digital (*) []
  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
Run Code Online (Sandbox Code Playgroud)

$ dpkg -l | grep alsa

ii  alsa-base                                  1.0.25+dfsg-0ubuntu5                  all          ALSA driver configuration files
ii  alsa-topology-conf                         1.2.2-1                               all          ALSA topology configuration files
ii  alsa-ucm-conf                              1.2.2-1ubuntu0.5                      all          ALSA Use Case Manager configuration files
ii  alsa-utils                                 1.2.2-1ubuntu2                        amd64        Utilities for configuring and using ALSA
ii  gstreamer1.0-alsa:amd64                    1.16.2-4                              amd64        GStreamer plugin for ALSA
Run Code Online (Sandbox Code Playgroud)

$ grep intel /etc/modprobe.d/alsa-base.conf

options snd-intel8x0m index=-2
Run Code Online (Sandbox Code Playgroud)

san*_*lio 4

看来您使用的驱动程序是sof-audio-pci. 据此您可以尝试使用snd_hda_intel. 简单复制一下程序:

  1. 编辑grub

    $ sudo gedit /etc/default/grub
    
    Run Code Online (Sandbox Code Playgroud)
  2. 改变

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
    
    Run Code Online (Sandbox Code Playgroud)

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash snd_hda_intel.dmic_detect=0"
    
    Run Code Online (Sandbox Code Playgroud)
  3. 更新grub

    $ sudo update-grub
    
    Run Code Online (Sandbox Code Playgroud)
  4. 重启

您可以检查是否检测到声卡

$ aplay -l
Run Code Online (Sandbox Code Playgroud)

如果这不起作用,如果您发布以下输出可能会有所帮助:

$ cat /proc/asound/cards
$ lsmod | grep snd
$ dpkg -L linux-modules-<kernel version>-generic | grep snd
$ inxi -SA
$ lspci -nnk | grep -A 4 Audio
$ uname -a
$ aplay -l
$ dpkg -l | grep alsa
$ grep intel /etc/modprobe.d/alsa-base.conf 
Run Code Online (Sandbox Code Playgroud)

有关的

  1. https://bbs.archlinux.org/viewtopic.php?id=253588
  2. Ubuntu 20.04 重启后仅出现“虚拟输出”(声音) - 驱动程序/模块损坏