将 archlinux32 迁移到新硬件后声音不起作用

将 archlinux32 迁移到新硬件后声音不起作用

更改硬件并启动相同的操作系统后(archlinux32),声音根本不起作用。在旧硬件上它运行良好。

迁移时:

  1. 启动实时 ISO
  2. mkinitcpio -p linux
  3. 更新了/etc/fstab
  4. 重新安装 grub

启动后一切正常,除了声音。还安装了pulseaudio 和alsa-utils。


speaker-test -c 2 -D default:

speaker-test 1.1.8

Playback device is default
Stream parameters are 48000Hz, S16_LE, 2 channels
Using 16 octaves of pink noise
Playback open error: -2,No such file or directory

lspci -nn | grep Audio:

00:1b.0 Audio device [0403]: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller [8086:2668] (rev 03)

pactl list sinks:

Sink #0
        State: IDLE
        Name: auto_null
        Description: Dummy Output
        Driver: module-null-sink.c
        Sample Specification: s16le 2ch 44100Hz
        Channel Map: front-left,front-right
        Owner Module: 15
        Mute: no
        Volume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dB
                balance 0.00
        Base Volume: 65536 / 100% / 0.00 dB
        Monitor Source: auto_null.monitor
        Latency: 658477 usec, configured 2000000 usec
        Flags: DECIBEL_VOLUME LATENCY
        Properties:
                device.description = "Dummy Output"
                device.class = "abstract"
                device.icon_name = "audio-card"
        Formats:
                pcm

aplay -l:

**** List of PLAYBACK Hardware Devices ****

lsmod | grep snd:

snd_hda_codec_realtek   102400  1
snd_hda_codec_generic    73728  1 snd_hda_codec_realtek
snd_hda_intel          40960  0
snd_hda_codec         118784  3 snd_hda_intel,snd_hda_codec_generic,snd_hda_codec_realtek
snd_hda_core           73728  4 snd_hda_intel,snd_hda_codec,snd_hda_codec_generic,snd_hda_codec_realtek
snd_hwdep              16384  1 snd_hda_codec
snd_pcm               102400  3 snd_hda_intel,snd_hda_codec,snd_hda_core
snd_timer              32768  1 snd_pcm
snd                    73728  7 snd_hda_intel,snd_hwdep,snd_hda_codec,snd_timer,snd_hda_codec_generic,snd_hda_codec_realtek,snd_pcm
soundcore              16384  1 snd

systemctl --user status pulseaudio.socket:

* pulseaudio.socket - Sound System
   Loaded: loaded (/usr/lib/systemd/user/pulseaudio.socket; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2019-03-17 21:09:12 EET; 14min ago
   Listen: /run/user/1000/pulse/native (Stream)
   CGroup: /user.slice/user-1000.slice/[email protected]/pulseaudio.socket

Mar 17 21:09:12 ninmach systemd[381]: Listening on Sound System.
Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.

alsamixer:

图像2


alsamixer与选择的英特尔HDA卡片:

图像3


alsamixer与按下F5:

图像4


pavucontrol:

图像1


pavucontrol配置标签:

图像5

总而言之,为什么在 alsamixer 中不显示 Master 等内容,并且根本不起作用。

Foxconn 915A03-G-8KS这是一个带有单核 CPU 的旧主板Intel(R) Celeron(R) CPU 2.66GHz

答案1

一些好人IRC渠道#archlinux32帮助告诉我们解决方案可能是选项对于snd-hda-intel内核模块:model=6stackmodel=6stack-digout.

因此,在使用选项重新加载此模块后,一切正常:

modprobe -r snd-hda-intel
modprobe snd-hda-intel model=6stack

这可能是内核中的一个错误,因此它加载这个模块时没有正确的选项,而且,修补不适用于该主板。

不过,手动添加此选项/etc/modprobe.d/将告诉系统在每次下次启动时使用此选项加载此模块:

echo "options snd-hda-intel model=6stack" >> /etc/modprobe.d/sound_fix.conf

相关内容