기기가 잠겨 있으면 모든 소리를 무음으로 설정합니다.

기기가 잠겨 있으면 모든 소리를 무음으로 설정합니다.

저는 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에서도 작동하는 것으로 확인되었습니다.

관련 정보