Last active 3 hours ago

Revision 8d0e7ad4900d9bb9cb83a150d37ffa900f94869f

KDE_monitor_audio-swap.md Raw

#!/usr/bin/env bash

Enable/Activate both monitors and get info from kscreen-doctor -o | grep -A3 Output

Get audio sinks from pactl list sinks short

monitorMain="DP-2" audioMain="alsa_output.pci-0000_0a_00.3.analog-stereo" monitorTV="HDMI-0" audioTV="alsa_output.pci-0000_08_00.1.hdmi-stereo" fullSwap="false" # when set to false we'll only swap primary - not disable the secondary

currentPrimary=$(kscreen-doctor -o | grep -B 4 "priority 1" | awk '/Output/{ print $3 }')

if [[ "$currentPrimary" == "$monitorMain" ]]; then if [[ "$fullSwap" == "true" ]]; then kscreen-doctor output.${monitorTV}.enable output.${monitorTV}.primary output.${monitorMain}.disable else kscreen-doctor output.${monitorTV}.primary fi sleep 1 pactl set-default-sink "${audioTV}"

else if [[ "$fullSwap" == "true" ]]; then kscreen-doctor output.${monitorMain}.enable output.${monitorMain}.primary output.${monitorTV}.disable else kscreen-doctor output.${monitorMain}.primary fi sleep 1 pactl set-default-sink "${audioMain}" fi