コマンドラインからミュート/ミュート解除する必要があります。私はそれを行うことができることがわかりました:
amixer sset Master mute
amixer sset Master unmute
問題は、ミュート解除のコマンドが機能していないことです(このバグレポートでも説明されています: https://bugs.launchpad.net/ubuntu/+source/alsa-utils/+bug/878986 )
私の質問は、同じ結果を得る別の方法がありますか?
さらに、手動で音量を最小に設定してから呼び出した場合
amixer sset Master 100%
ボリュームは増加しますが、stdoutが次のように言っても最大に切り替わりません:
Simple mixer control 'Master',0
Capabilities: pvolume pswitch pswitch-joined penum
Playback channels: Front Left - Front Right
Limits: Playback 0 - 31
Mono:
Front Left: Playback 31 [100%] [0.00dB] [on]
Front Right: Playback 31 [100%] [0.00dB] [on]
誰もこれで私を助けることができますか?
ターミナルで次のコマンドを試してください
amixer -c 0 set Master playback 0% mute
amixer -c 0 set Master playback 100% unmute
これにより、すべての出力が確実に制御されます。投稿されたコマンドでは、音量が100%ではない理由として、ミキサーやヘッドフォンなどのサウンド出力が同時にリリースされないことが考えられます。
さらに良いのは、すべてのオーディオデバイスのミュートを解除することです。音量を70%に設定します
for x in `amixer controls | grep layback` ; do amixer cset "${x}" on ; done
for x in `amixer controls | grep layback` ; do amixer cset "${x}" 70% ; done
上記の例では、HDMIとオプティカルはミュートされていません。
すべての音源を取得し、名前を取得し、ミキサーでコマンドラインを作成して実行します
amixer scontrols | grep -oE "'.*'" | awk -F\' \
'{print "amixer -c 0 set \""$2"\" unmute 100"}' | sh
すべてのオーディオデバイスのミュートを解除し、音量を最大に設定します。
素晴らしいものを持っている、マイク
Mark Rooneyのソリューションはうまくいきませんでしたが、すべてのチャンネルを明示的にミュート解除することでこれを回避することができました。
#!/bin/bash
for i in Master Headphone PCM Front Surround Center LFE Side; do
amixer -c 0 set "$i" playback unmute
done &>/dev/null
チャンネル名を取得しましたが、alsamixer
を実行しています。
OK、最初にあなたの異なるカード番号を知る必要があります
alsamixer
f6からカードを選択し、マスターオプションがあるカード番号を書き留めます
ヘッドフォンを使用する場合は、マスターとヘッドフォンの両方を変更します
amixer -c 1 set Master toggle && amixer -c 1 set Headphone toggle
-cはカード番号を指定します。このコマンドでは1です。
あなたが使用しているコマンドは私にとっても機能しませんが、これらを試してみてください。彼らは私のために働いています。
amixer set Master 0
amixer set Master 100
Mark Rooneyから受け入れられた答えは、そのコマンドがエラーを出したので助けにはなりませんでした(私のサウンドカードの番号は1です):
amixer: Mixer attach hw:1 error: Invalid argument
だから私は試した
amixer set Master 100 unmute
また、現在選択されているサウンドカードで完全に機能しました。を使用してミュートすることもできます
amixer set Master 0 mute