私の出力がミュートされているかどうかによって異なる出力または1
コマンドを見つけようとします。0
私はこれを試しています:
amixer sget Master
これは私が得た結果です。
Simple mixer control 'Master',0
Capabilities: pvolume pvolume-joined pswitch pswitch-joined
Playback channels: Mono
Limits: Playback 0 - 64
Mono: Playback 64 [100%] [0.00dB] [on]
これで、ここの値がそれに応じて変わります(ボリュームを減らすと、パーセンテージとdB値が変わります)。ただし、出力デバイスタブに移動してPavucontrol
出力をミュートすると、上記のコマンドの出力は同じままです。文字通り何も変わらなかった。しかし、私の声は実際にミュートされています。
どのコマンドを使用する必要がありますか?なぜ[on]
代わりに[off]
?そうではありませんか?
よろしくお願いします。
答え1
長い検索の最後に答えを見つけました。同様のコンテンツを探している他の人に役立ちます!
何が必要です:
pacmd list-sinks
コマンドには次の行があります。
muted: no
デバイスをミュートするとno
に変わります。yes
完璧。誰かが必要な場合は、このコマンドを使用して出力を削除しました。
pacmd list-sinks | awk '/muted/ { print $2 }'
早すぎて投稿してすみません。どこでも解決策が見つからないようです。
答え2
または私のようにPulseAudioがない場合、またはPulseAudioのみを使用したい人の場合、amixer
解決策は次のとおりです。
amixer get Master | sed 5q | grep -q '\[on\]'
0
ミュート解除とミュートされた場合に返されます1
。
答え3
pactl get-sink-mute @DEFAULT_SINK@
Mute: no
ミュート解除時に出力し、Mute: yes
ミュート時に出力します。
複数の出力があっても動作します。@DEFAULT_SINK@
デフォルト出力のシンボル名です。からman pactl
:
get-sink-mute SINK
指定された受信機(記号名または数値インデックスで識別)のミュート状態を取得します。