如何让 Realtek ALC887-VD 在 Debian 11(全新安装)中播放任何声音或被识别?

如何让 Realtek ALC887-VD 在 Debian 11(全新安装)中播放任何声音或被识别?

标题是不言自明的:全新安装 Debian 11 后,根本没有声音。

电脑送修时电源烧坏了,结果发现主板也被烧坏了,当它返回时,主板的芯片似乎不被 Debian 识别,也不被 Ubuntu 识别(我也尝试安装)。

当我全新安装 Debian 11 时,结果是根本没有声音。没有嘟嘟声,没有噪音,没有嗡嗡声,什么都没有,绝对没有。在“设置”中,我可以看到“虚拟输出”,除此之外什么也没有。播放 .mp3 文件时,均衡器中的音量指示器会移动,但没有声音。

该芯片是Realtek ALC887-VD。我看到互联网上有几种解决此特定硬件的解决方案,但没有一个有效。

由于字符限制,我将把我运行的命令及其结果放在注释中。

我该怎么做才能让 Debian 中的声音再次正常工作?

$ lspci -nnk | grep -A2 音频

00:1b.0 Audio device [0403]: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller [8086:1c20] (rev 05)
    Subsystem: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller [8086:1c20]
    Kernel driver in use: snd_hda_intel
    Kernel modules: snd_hda_intel

$ aplay -l

**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC887-VD Analog [ALC887-VD Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: ALC887-VD Digital [ALC887-VD Digital]
  Subdevices: 0/1
  Subdevice #0: subdevice #0
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

$ lshw -c 声音

*-multimedia              
       description: Audio device
       product: 6 Series/C200 Series Chipset Family High Definition Audio Controller
       vendor: Intel Corporation
       physical id: 1b
       bus info: pci@0000:00:1b.0
       version: 05
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list
       configuration: driver=snd_hda_intel latency=0
       resources: irq:27 memory:f7c00000-f7c03fff

$ lsmod | grep 's(ou)?nd'

Module                  Size  Used by
snd_seq                86016  0
snd_seq_device         16384  1 snd_seq
snd_hda_codec_hdmi     73728  1
snd_hda_codec_realtek   159744  1
snd_hda_codec_generic    98304  1 snd_hda_codec_realtek
ledtrig_audio          16384  1 snd_hda_codec_generic
snd_hda_intel          57344  4
snd_intel_dspcfg       28672  1 snd_hda_intel
soundwire_intel        45056  1 snd_intel_dspcfg
soundwire_generic_allocation    16384  1 soundwire_intel
snd_soc_core          315392  1 soundwire_intel
snd_compress           32768  1 snd_soc_core
soundwire_cadence      36864  1 soundwire_intel
snd_hda_codec         172032  4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek
snd_hda_core          110592  5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek
snd_hwdep              16384  1 snd_hda_codec
soundwire_bus          90112  3 soundwire_intel,soundwire_generic_allocation,soundwire_cadence
snd_pcm               135168  8 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,soundwire_intel,snd_compress,snd_soc_core,snd_hda_core
snd_timer              49152  2 snd_seq,snd_pcm
snd                   110592  19 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_compress,snd_soc_core,snd_pcm
soundcore              16384  1 snd

$ 扬声器测试 -c2 -t 波 -D hw:1,0

speaker-test 1.2.4

Playback device is hw:1,0
Stream parameters are 48000Hz, S16_LE, 2 channels
WAV file(s)
ALSA lib pcm_hw.c:1829:(_snd_pcm_hw_open) Invalid value for card
Playback open error: -2,Arquivo ou diretório inexistente

$ pactl 统计

Currently in use: 12 blocks containing 111,0 KiB bytes total.
Allocated during whole lifetime: 675722 blocks containing 1,0 GiB bytes total.
Tamanho do cache para amostragem: 24,0 KiB

$ 脉冲音频-vvvv

I: [pulseaudio] main.c: setrlimit(RLIMIT_NICE, (31, 31)) failed: Operação não permitida
I: [pulseaudio] main.c: setrlimit(RLIMIT_RTPRIO, (9, 9)) failed: Operação não permitida
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 14.2
D: [pulseaudio] main.c: Compilation CFLAGS: -g -O2 -ffile-prefix-map=/build/pulseaudio-eJtUKc/pulseaudio-14.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -W -Wextra -pipe -Wno-long-long -Wno-overlength-strings -Wunsafe-loop-optimizations -Wundef -Wformat=2 -Wlogical-op -Wsign-compare -Wformat-security -Wmissing-include-dirs -Wformat-nonliteral -Wpointer-arith -Winit-self -Wdeclaration-after-statement -Wfloat-equal -Wmissing-prototypes -Wredundant-decls -Wmissing-declarations -Wmissing-noreturn -Wshadow -Wendif-labels -Wcast-align -Wstrict-aliasing -Wwrite-strings -Wno-unused-parameter -fno-common -fdiagnostics-show-option -fdiagnostics-color=auto
D: [pulseaudio] main.c: Running on host: Linux x86_64 5.10.0-11-amd64 #1 SMP Debian 5.10.92-1 (2022-01-18)
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: FASTPATH defined, only fast path asserts disabled.
I: [pulseaudio] main.c: Machine ID is c2b85c79587e4109a5887f6571d1d2b1.
I: [pulseaudio] main.c: Using runtime directory /run/user/1000/pulse.
I: [pulseaudio] main.c: Using state directory /home/fernanda/.config/pulse.
I: [pulseaudio] main.c: Using modules directory /usr/lib/pulse-14.2/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() falhou.

$ 热熔器-v -u /dev/snd/*

                     USUÁRIO     PID ACESSO COMANDO
/dev/snd/controlC0:  fernanda  10038 F.... (fernanda)pulseaudio
/dev/snd/pcmC0D1p:   fernanda  10038 F...m (fernanda)pulseaudio

$ alsa-信息

http://alsa-project.org/db/?f=0fcdb88ddbb6177a4ba074c5d38628a493bf0de6

$ 脉冲音频

E: [pulseaudio] pid.c: Daemon already running.
E: [pulseaudio] main.c: pa_pid_file_create() falhou.

$ rm ~/.config/pulse/* && 重新启动

No results

$ echo "选项 snd-hda-intel dmic_detect=0" | sudo tee -a /etc/modprobe.d/alsa-base.conf

No results

$ echo "黑名单 snd_soc_skl" | sudo tee -a /etc/modprobe.d/blacklist.conf

No results

$ sudo usermod -a -G 音频用户名

No results (yes, I've changed USERNAME for my real username before running the command)

我可以通过运行来获得声音:

$ pulseaudio --kill
$ pulseaudio --start

我用这两个命令制作了一个启动脚本,这样我就不必在每次重新启动时记住它们。

但这并没有说明问题的原因。 Debian 11 安装是全新的。至少在理论上,pulseaudio 没有理由不工作。

问题的原因是什么?有人可以给予指导吗?

答案1

我简直不敢相信偶然发现一个临时解决方案是多么简单:

$ pulseaudio --kill
$ pulseaudio --start

瞧!声音再次工作。

我之前已经尝试过pulseaudio --kill,但我不知道如何重新启动它。

我用这两个命令制作了一个启动脚本,这样我就不必在每次重新启动时记住它们。

但这并没有说明问题的原因。 Debian 11 安装是全新的。至少在理论上,pulseaudio 没有理由不工作。

问题的原因是什么?有人可以给予指导吗?

相关内容