aboutsummaryrefslogtreecommitdiff
path: root/dotfiles/.local/bin/changeoutput
diff options
context:
space:
mode:
Diffstat (limited to 'dotfiles/.local/bin/changeoutput')
-rwxr-xr-xdotfiles/.local/bin/changeoutput18
1 files changed, 18 insertions, 0 deletions
diff --git a/dotfiles/.local/bin/changeoutput b/dotfiles/.local/bin/changeoutput
new file mode 100755
index 0000000..eab2cf9
--- /dev/null
+++ b/dotfiles/.local/bin/changeoutput
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+if [ -z "$1" ]; then
+ echo "Usage: $0 <sinkId/sinkName>" >&2
+ echo "Valid sinks:" >&2
+ pactl list short sinks >&2
+ exit 1
+fi
+
+newSink="$1"
+
+pactl list short sink-inputs|while read stream; do
+ streamId=$(echo $stream|cut '-d ' -f1)
+ echo "moving stream $streamId"
+ pactl move-sink-input "$streamId" "$newSink"
+done
+
+pactl set-default-sink $newSink