web-dev-qa-db-ja.com

ArchLinuxでオーディオが機能しない

alsa-utilsパッケージをインストールしました。 amixer sset Master unmuteを実行すると、エラーamixer: Unable to find simple control 'Master',0が返されます。

alsamixerを実行すると、端末エミュレーターでalsamixerアプリケーションが得られますが、<-->は何もしません。 S/PDIFとしてリストされているアイテムでのみmを使用できます。

beepはコンソールで機能しますが、他のオーディオは機能しません。

どんな助けでも大歓迎です。

@jasonwryanのリクエストに応じて、サウンドカードに関する情報を以下に示します。

$cat /proc/asound/cards

 0 [Generic        ]: HDA-Intel - HD-Audio Generic
                      HD-Audio Generic at 0xe0244000 irq 27
 1 [SB             ]: HDA-Intel - HDA ATI SB
                      HDA ATI SB at 0xe0240000 irq 16

$aplay -l

**** List of PLAYBACK Hardware Devices ****
card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: SB [HDA ATI SB], device 0: CX20590 Analog [CX20590 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

私の~/.asoundrcに会いましょう

pcm.!default {
    type hw
    card SB
}

ctl.!default {
    type hw
    card Generic
}

正しいサウンドモジュールがロードされていることを確認します。

$lsmod | grep '^snd' | column -t

snd_hda_codec_conexant  21937   1
snd_hda_codec_generic   63087   1  snd_hda_codec_conexant
snd_hda_codec_hdmi      49263   1
snd_hda_intel           26387   0
snd_hda_controller      26938   1  snd_hda_intel
snd_hda_codec           112621  5  snd_hda_codec_hdmi,snd_hda_codec_conexant,snd_hda_codec_generic,snd_hda_intel,snd_hda_controller
snd_hwdep               17244   1  snd_hda_codec
snd_pcm                 88785   4  snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel,snd_hda_controller
snd_timer               26614   1  snd_pcm
snd                     73436   8  snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_hda_codec_conexant,snd_pcm,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel

$ls -l /dev/snd

total 0
drwxr-xr-x  2 root root       80 Jan 28 08:15 by-path
crw-rw----+ 1 root audio 116,  2 Jan 28 08:15 controlC0
crw-rw----+ 1 root audio 116,  5 Jan 28 08:15 controlC1
crw-rw----+ 1 root audio 116,  4 Jan 28 08:15 hwC0D0
crw-rw----+ 1 root audio 116,  8 Jan 28 08:15 hwC1D0
crw-rw----+ 1 root audio 116,  3 Jan 28 08:15 pcmC0D3p
crw-rw----+ 1 root audio 116,  7 Jan 28 08:15 pcmC1D0c
crw-rw----+ 1 root audio 116,  6 Jan 28 08:15 pcmC1D0p
crw-rw----+ 1 root audio 116,  1 Jan 28 08:15 seq
crw-rw----+ 1 root audio 116, 33 Jan 28 08:15 timer

$amixer scontrols

Simple mixer control 'IEC958',0

前述のようにasoundrc.txtをざっと見てください ここ はそれが私のシステムでDNEであることを示しています

$pacman -Ql alsa-lib | grep asound

alsa-lib /usr/include/alsa/asoundef.h
alsa-lib /usr/include/alsa/asoundlib.h
alsa-lib /usr/include/alsa/sound/asound_fm.h
alsa-lib /usr/include/sys/asoundlib.h
alsa-lib /usr/lib/libasound.so
alsa-lib /usr/lib/libasound.so.2
alsa-lib /usr/lib/libasound.so.2.0.0

デスクトップ環境としてXfce4を実行していて、最近Gnomeに切り替えました。 Allオーディオが機能するようになりました。

誰かがwhyを理解できる場合に備えて、スレッドを開いたままにしておきます。これで問題が解決するはずです。本当に知りたいです。

2
OhNo_Segfault

hDMIに接続されたディスプレイを使用していたときに同様の問題が発生しました。 .asoundrcを作成した後、サウンドの問題を修正することができました

pcm.!default {
      type hw
      card 1
      device 0
}
ctl.!default {
      type hw
      card 1
}

上記の値をaplay -lから取得し、次に:alsactl kill rescanalsactl restoreを実行します。そして最後に$ reboot

1
Mihai B.

これは私にとっての解決策です:

追加 ~/.asoundrc

pcm.!default {
 type Pulse
}
ctl.!default {
 type Pulse
}
0