ALSAでできる限り簡単なことをしたいのですが、タブレットの内蔵スピーカーの代わりにUSBヘッドフォンで音を出すようにします。 asound.rc
やalsa.conf
やasound.conf
などの構成ファイルを変更したくないので、デバイスの順序を変更してヘッドフォンをデフォルトの出力デバイスとして永続的に設定します。一時的な効果をしたいだけです。ヘッドフォンを抜くまで。不思議なことに、私は答えをグーグルできません。 alsamixer
はそれを実行できますか?
Gnomeでは、GUIまたはCLIインターフェイスでPulseAudio
を使用して現在の出力デバイスを簡単に選択できますが、PulseAudio
自体はALSAの上で動作します!では、ALSAに出力デバイスの変更を強制する方法についても疑問に思います。
USBデバイスがシステムでサウンドカードとして表示されている場合は、man amixer
およびunmute
パラメータを使用します。
amixer -c 1 set Master playback 100% unmute
他のチャンネル(PCMなど)も確認してください。マニュアルの例は次のとおりです。
amixer -c 1 sset Line,0 80%,40% unmute cap
will set the second soundcard's left line input volume to 80% and right line
input to 40%, unmute it, and select it as a source for capture (recording).
amixer -c 1 -- sset Master playback -20dB
will set the master volume of the second card to -20dB. If the master has
multiple channels, all channels are set to the same value.
amixer -c 1 set PCM 2dB+
will increase the PCM volume of the second card with 2dB. When both play‐
back and capture volumes exist, this is applied to both volumes.
amixer -c 2 cset iface=MIXER,name='Line Playback Volume",index=1 40%
will set the third soundcard's second line playback volume(s) to 40%
amixer -c 2 cset numid=34 40%
will set the 34th soundcard element to 40%
IIUCでは、.asoundrc
または/etc/asound.conf
を動的に更新できます。したがって、2つのファイルheadphones.conf
とfront.conf
を使用して、デフォルトのデバイスを適切なhw:channel,device
番号に設定し、「ACPIジャック/ヘッドフォンヘッドホンプラグ」イベントでそれらを切り替えることができるはずです。 「ln」を使用して/etc/asound.conf
を/etc/sounds/{headphones,front}.conf
のいずれかにリンクし、これを試します