为什么我的音频设备无法被识别?

为什么我的音频设备无法被识别?

在我的笔记本电脑上,声音首选项中仅出现虚拟输出。这是 Mint 20.3,但同样,在 Endeavor 或 Fedora live-USB 记忆棒上运行时什么也找不到。 AUX 中的耳机也不起作用。在 Windows 中,音频可以正常工作。显然声卡是HDA Intel PCH(见aplay -l下文)。arecord --list-devices给出一个空结果(如下)。另请参见arecord --list-pcms下文/sbin/lsmod | grep snd

我怎样才能让它发挥作用?

$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 10: HDMI 4 [HDMI 4]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
arecord --list-devices


**** List of CAPTURE Hardware Devices ****
$ arecord --list-pcms
default
    Playback/recording through the PulseAudio sound server
surround21
    2.1 Surround output to Front and Subwoofer speakers
surround40
    4.0 Surround output to Front and Rear speakers
surround41
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50
    5.0 Surround output to Front, Center and Rear speakers
surround51
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
null
    Discard all samples (playback) or generate zero samples (capture)
samplerate
    Rate Converter Plugin Using Samplerate Library
speexrate
    Rate Converter Plugin Using Speex Resampler
jack
    JACK Audio Connection Kit
oss
    Open Sound System
pulse
    PulseAudio Sound Server
upmix
    Plugin for channel upmix (4,6,8)
vdownmix
    Plugin for channel downmix (stereo) with a simple spacialization
usbstream:CARD=PCH
    HDA Intel PCH
    USB Stream Output
$ /sbin/lsmod | grep snd
snd_sof_pci            20480  0
snd_sof_intel_hda_common    73728  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      20480  1 snd_sof_pci
snd_sof_intel_ipc      20480  1 snd_sof_intel_byt
snd_sof               106496  4 snd_sof_pci,snd_sof_intel_hda_common,snd_sof_intel_byt,snd_sof_intel_ipc
snd_sof_xtensa_dsp     16384  1 snd_sof_pci
snd_hda_ext_core       32768  3 snd_sof_intel_hda_common,snd_soc_hdac_hda,snd_sof_intel_hda
snd_soc_acpi_intel_match    32768  2 snd_sof_pci,snd_sof_intel_hda_common
snd_soc_acpi           16384  2 snd_sof_pci,snd_soc_acpi_intel_match
ledtrig_audio          16384  1 snd_sof
snd_soc_core          249856  3 snd_sof,snd_sof_intel_hda_common,snd_soc_hdac_hda
snd_compress           24576  1 snd_soc_core
ac97_bus               16384  1 snd_soc_core
snd_pcm_dmaengine      16384  1 snd_soc_core
snd_hda_codec_hdmi     61440  1
snd_hda_intel          53248  1
snd_intel_dspcfg       28672  3 snd_hda_intel,snd_sof_pci,snd_sof_intel_hda_common
snd_hda_codec         139264  3 snd_hda_codec_hdmi,snd_hda_intel,snd_soc_hdac_hda
snd_hda_core           90112  7 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_hwdep              20480  1 snd_hda_codec
snd_pcm               106496  8 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_sof,snd_sof_intel_hda_common,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                69632  2 snd_seq_midi,snd_seq_midi_event
snd_seq_device         16384  3 snd_seq,snd_seq_midi,snd_rawmidi
snd_timer              36864  2 snd_seq,snd_pcm
snd                    90112  13 snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_timer,snd_compress,snd_soc_core,snd_pcm,snd_rawmidi
soundcore              16384  1 snd

答案1

您认为为扬声器和耳机插头供电的声卡可能不是:您会注意到所有这些都[HDMI]在其名称中。这是因为它们是不同的接口,您可以使用它们通过 HDMI 将音频传输到带有扬声器的外部屏幕!

因此,由于我猜没有插入这样的屏幕,因此您无法从会话中选择其中之一。

您的模拟声卡未在那里列出。如果它确实是由英特尔 PCH 处理的(不知道这是否是一个问题,我的笔记本电脑上不是这种情况),那么这意味着它在某种程度上被禁用了。

更有可能的是,您有另一个设备充当模拟声卡,但由于某种原因无法工作。检查lspcilsusb类似声卡的东西,并尝试弄清楚他们的供应商(或志愿者?)是否像编写 Windows 驱动程序一样投入精力编写 Linux 驱动程序。您还可以使用Windows下的设备管理器来找出您实际的声音硬件是什么!

相关内容