私のシステムのデフォルトのサウンド出力がカード2デバイス3、7、または1以外のカード2とデバイス0かどうかはどうすればわかりますか?
このようにしましたが、音が出ませんでした。
$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Device [C-Media USB Audio Device], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: PCH [HDA Intel PCH], device 1: ALC892 Digital [ALC892 Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
Subdevices: 0/1
Subdevice #0: subdevice #0
$ cat /etc/asound.conf
#pcm.!default {
# type plug;
# slave { pcm "hw:2" }
#}
pcm.!default {
type hw
card 2
device 0
}
答え1
defaults.pcm.card 2
サウンドカードがインデックスを引き続き切り替えると、これはできません/etc/asound.conf
。機能できる1つの(複雑な)アプローチは、希望の優先順位でサウンドカーネルモジュールを設定することです。
この方法については後述する。Debian のバグ #614113:
- ランニング
alsamixer
- F6を使用して利用可能なサウンドデバイスを調べます。
- デバイスで再生するための正しいレベルを設定してください。
- サウンドデバイスを選択できるサウンドプレーヤーを起動します(
audacious
例:)。- サウンドデバイスを使用し(ステップ2、3)、デフォルト値を決定します。
- 出口
alsamixer
とプレーヤー。- ルートとしてログインします。
- 実際のサウンドデバイスに対応するモジュールを実行し
lsmod | grep snd
て理解しようとします。- 手順2でモジュールが正しく識別されたかどうかわからない場合:移動して、
/sys/module
名前が「snd」で始まるすべてのディレクトリを確認します。このディレクトリの名前はモジュールとまったく同じです。 checkディレクトリに "drivers"ディレクトリが表示されている場合、checkディレクトリの名前は実際のサウンドデバイスに対応するモジュールの名前です。そのようなモジュールをすべて覚えてください(メモ帳に書いてください)。- 手順2と3で見つけた各モジュールに対して実行します
modinfo <module name> | grep desc
。説明を読み、優先順位を決めるモジュールを決定します。これは対応するサウンドデバイスの優先順位になります。- 行く
/etc/modprobe.d
。- 作る
snd_cards_priorities.conf
;snd_cards_priorities.confに次の内容を作成します。
alias snd-card-0 <module for highest priority card> options <module for highest priority card> index=0 alias snd-card-1 <module for lower priority card> options <module for lower priority card> index=1
- アーカイブ保存;
- 次のコマンドを使用してalsaを再起動します
/usr/sbin/alsa force-reload
。- コマンドを実行
cat /proc/asound/cards
し、サウンドデバイスが正しい順序であることを確認してください(デバイス#0が最も高い優先順位を持っています)。- 手順9と10を数回繰り返して、サウンドデバイスの順序が変更されていないことを確認します。
ルート終了;
alsamixer
基本サウンドデバイスを起動、設定、終了しますalsamixer
。- お気に入りのサウンドプレーヤーを使って新しい設定をテストしてください。
答え2
デフォルトのデバイスを設定するには、デバイスをオーバーライドせずにdefault
次のように入力します/etc/asound.conf
。
defaults.pcm.card 2 # or better "PCH"
defaults.pcm.device 0
これは、明示的に指定せず、実際に基本デバイスを使用するプログラムにのみ適用されます。一部のプログラム(PulseAudioやVLCなど)が特定の出力デバイス用に設定されている場合は、その設定を変更する必要があります。