我最近在 Lenovo 3134A11 上安装了 Parabola OS(基本上是带有 OpenRC 的 Arch),从一开始我的系统中就没有音频。问题是,当我运行 时pavucontrol
,打开的窗口会冻结在“正在建立与 PulseAudio 的连接。请稍候。”,尝试任何pactl
变体都会显示“连接被拒绝”。
看到这种情况后,我去alsamixer
看看发生了什么。我把所有东西都调到最大,发现在启用环回的情况下增加或减少“后置麦克风”会导致扬声器发出噪音。所以我认为这意味着系统和 Alsa 识别了驱动程序;但我仍然没有声音。
以下是一些一般信息,希望能够帮助阐明问题:
内核版本:4.20.11-gnu-1
lspci -v
:
00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 05)
Subsystem: Lenovo 6 Series/C200 Series Chipset Family High Definition Audio Controller
Flags: bus master, fast devsel, latency 0, IRQ 31
Memory at fe600000 (64-bit, non-prefetchable) [size=16K]
Capabilities: <access denied>
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
aplay -l
:
aplay: device_list:272: no soundcards found...
amixer
:
amixer: Mixer attach default error: No such file or directory
sudo aplay /usr/share/sounds/alsa/Front_Center.wav
:
ALSA lib pcm_direct.c:1966:(snd1_pcm_direct_parse_open_conf) The field ipc_gid must be a valid group (create group audio)
aplay: main:828: audio open error: Invalid argument
(“root”用户有同样的问题)
find /lib/modules/`uname -r` | grep snd-hda-intel
:
/lib/modules/4.20.11-gnu-1/kernel/sound/pci/hda/snd-hda-intel.ko.xz
alsa force-reload
:
bash: alsa: command not found
cat /proc/asound/modules
:
0 snd_hda_intel
cat /proc/asound/version
:
Advanced Linux Sound Architecture Driver Version k4.20.11-gnu-1.
cat /proc/asound/cards
:
0 [PCH ]: HDA-Intel - HDA Intel PCH
HDA Intel PCH at 0xfe600000 irq 31
希望你们能够解决这个问题!
答案1
事实证明,出于某些天知道为什么的原因,PulseAudio 无法在启动时启动(这就是为什么在普通和 root 模式下运行 pavucontrol 会冻结窗口,pactl 不起作用等)。使用 初始化 PulseAudio 后,pulseaudio --start
出现了另一个问题:音频仅在 root 模式下有效。经过一番研究,我发现我可以手动添加音频组,而不会出现任何问题sudo groupadd audio
(我认为它必须“通过 fabric”实现) ,然后我只需重置并播放音频。sudo gpasswd -a user audio