![기기가 잠겨 있으면 모든 소리를 무음으로 설정합니다.](https://linux55.com/image/143052/%EA%B8%B0%EA%B8%B0%EA%B0%80%20%EC%9E%A0%EA%B2%A8%20%EC%9E%88%EC%9C%BC%EB%A9%B4%20%EB%AA%A8%EB%93%A0%20%EC%86%8C%EB%A6%AC%EB%A5%BC%20%EB%AC%B4%EC%9D%8C%EC%9C%BC%EB%A1%9C%20%EC%84%A4%EC%A0%95%ED%95%A9%EB%8B%88%EB%8B%A4..png)
저는 Ubuntu 18.04를 사용하고 있으며 장치가 잠겨 있을 때 완전히 조용해질 수 있는 방법이 있었으면 좋겠지만 이는 두 가지 다른 상황에서 작동합니다. 첫째, 누군가 내 헤드폰을 뽑고 내가 듣고 있는 것을 듣는 것을 방지하기 위한 것입니다.
둘째, 음악이 제대로 믹싱되지 않아서 동료들이 갑자기 소리를 지를 때 헤드폰에서 소리가 나올 수 있어 짜증을 내지 않기 위해서입니다. 내 목표는 침묵뿐 아니라 컴퓨터가 잠겼을 때 컴퓨터에서 소리가 나오지 않도록 확실하게 방지하는 것입니다.
답변1
pactl set-sink-mute @DEFAULT_SINK@ toggle
또는
pactl set-sink-mute 0 toggle
오디오 수신기가 하나만 있는 경우
수신기가 여러 개인 경우
pactl list short sinks
색인 번호로 정렬된 수신기 목록 의 경우
답변2
xscreensaver가 잠겨 있을 때 소리를 음소거하는 방법
음소거 및 음소거 해제, 잠금 및 잠금 해제에 적합합니다. amixer와 pactl 중 어느 것이 더 나은지 모르겠습니다.
#!/bin/bash
gdbus monitor -y -d org.freedesktop.login1 | grep LockedHint --line-buffered |
while read line
do
case "$line" in
*"<true>"*)
#amixer -q -D pulse sset Master off
pactl set-sink-mute @DEFAULT_SINK@ toggle
;;
*"<false>"*)
#amixer -q -D pulse sset Master on
pactl set-sink-mute @DEFAULT_SINK@ toggle
;;
esac
done
exit
모두에게 감사드립니다(Nick Gnomic 및 Cliff Stanley).
작동하기 위해 xscreensaver를 설치할 필요가 없으며 Wayland에서도 작동하는 것으로 확인되었습니다.