私のデスクトップ(Archラン)に(非常に、非常に)古いSB Liveがあります!サウンドカードが正常に動作しなくなりました。代わりに、マザーボードのオンボードオーディオコントローラを使用したいと思います。残念ながら、pavucontrol
私のCinnamon(DE)設定にはSB Liveカードのみが表示されます(大きな画像を見るにはクリックしてください)。
ただし、inxi
オンボードカードが認識され、ドライバが割り当てられたことを示します。
$ inxi -A
Audio: Card-1 Intel NM10/ICH7 Family High Definition Audio Controller driver: snd_hda_intel
Card-2 Creative Labs SB Live! EMU10k1 driver: snd_emu10k1
Card-3 Logitech Webcam C210 driver: USB Audio
Sound: Advanced Linux Sound Architecture v: k4.2.5-1-ARCH
ドライバモジュールが実際にロードされました。
$ lsmod | grep snd_hda_intel
snd_hda_intel 32768 9
snd_hda_codec 106496 3 snd_hda_codec_via,snd_hda_codec_generic,snd_hda_intel
snd_hda_core 49152 4 snd_hda_codec_via,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel
snd_pcm 86016 11 snd_usb_audio,snd_ac97_codec,snd_hda_codec,snd_hda_intel,snd_emu10k1,snd_hda_core
snd 65536 41 snd_usb_audio,snd_ac97_codec,snd_hwdep,snd_timer,snd_hda_codec_via,snd_pcm,snd_rawmidi,snd_hda_codec_generic,snd_usbmidi_lib,snd_hda_codec,snd_hda_intel,snd_emu10k1,snd_seq_device
オンボードカードがSB Live!によってブロックされると、SBのドライバがブラックリストに追加されました。
$ echo 'blacklist snd_emu10k1' | sudo tee /etc/modprobe.d/snd_emu10k1.conf
再起動すると、inxi
以下が表示されます。
$ inxi -A
Audio: Card-1 Intel NM10/ICH7 Family High Definition Audio Controller driver: snd_hda_intel
Card-3 Logitech Webcam C210 driver: USB Audio
Sound: Advanced Linux Sound Architecture v: k4.2.5-1-ARCH
そしてSBライブ!シナモン設定には表示されなくなりますが、pavucontrol
オンボードカードも表示されません。上記のスクリーンショットにはHDMIポートのみが表示されています。
では、システムでオンボードサウンドカードを使用するにはどうすればよいですか?
答え1
udevを使用して自動的にカードをロードする
ALSA対応サウンドカードを自動的にロードする役割を果たすpulseaudioモジュールは、module-udev-detect
udevをサポートするシステムにあります。このモジュールはpulseaudioを起動したときにロードする必要があり、default.pa
通常は/etc/pulse/
。
モジュールがロードされたことを確認するには、次の手順を実行します。
pactl list short modules
そうでない場合は、module-udev-detect
以下を実行してロードしてテストできます。
pactl load-module module-udev-detect
システム内のすべてのALSAカードは、サウンド設定から選択するか、以下を使用して出力レシーバーにロードする必要があります。
pactl list short cards
成功したら、次の行を次の行に追加できますdefault.pa
。
.ifexists module-udev-detect.so
load-module module-udev-detect
.else
load-module module-detect
.endif
module-detect
udev をサポートしていないシステムのカードが検出されることがあります。
ALSAカードを手動でロードする
失敗した場合は、次のコマンドを使用してALSAカードを手動でロードすることもできます。
pactl load-module module-alsa-card <options>
この<options>
領域はハードウェアによって異なります。次の例では
device_id="0" name="pci-0000_00_05.0" card_name="alsa_card.pci-0000_00_05.0" namereg_fail=false tsched=yes fixed_latency_range=no ignore_dB=no deferred_volume=yes use_ucm=yes
device_id
与えられたカード番号ですaplay -l
name
私たちが自由に選択できる名前です。card_name
上記のようにALSAによって定義された名前。ls /dev/snd/by-path
他のオプションは標準カードのデフォルトです。
/etc/pulse/default.pa
もう一度成功すると、サウンドサーバーが起動するたびにロードされるように追加できます。
load-module module-alsa-card <options>