사운드 출력이 음소거되어 있는지 확인하세요(Pulseaudio가 포함된 ALSA).

사운드 출력이 음소거되어 있는지 확인하세요(Pulseaudio가 포함된 ALSA).

내 출력이 음소거되었는지 여부에 따라 달라지는 출력 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

지정된 수신기(기호 이름 또는 숫자 인덱스로 식별)의 음소거 상태를 가져옵니다.

관련 정보