From ad7e323d025b1fea191436a91ea9e88a2e9a3e14 Mon Sep 17 00:00:00 2001 From: "Matheus A." Date: Mon, 22 Dec 2025 19:22:54 -0300 Subject: [PATCH] scripts/shell -- Adds sunshine-tweaks.sh script --- scripts/shell/sunshine-tweaks.sh | 49 ++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100755 scripts/shell/sunshine-tweaks.sh diff --git a/scripts/shell/sunshine-tweaks.sh b/scripts/shell/sunshine-tweaks.sh new file mode 100755 index 0000000..0a3f4fe --- /dev/null +++ b/scripts/shell/sunshine-tweaks.sh @@ -0,0 +1,49 @@ +#!/usr/bin/env bash +# Author: iago + +state=waiting_for_sunshine +sleep_time=1 + +default_device="alsa_output.usb-C-Media_Electronics_Inc._USB_Audio_Device-00.analog-stereo" +default_device_fl=":monitor_FL" +default_device_fr=":monitor_FR" +obs_device="OBS: audioOutput_Discordless" +obs_device_fl=":monitor_FL" +obs_device_fr=":monitor_FR" +sunshine_device="sunshine" +sunshine_device_fl=":input_FL" +sunshine_device_fr=":input_FR" + +is_sunshine_transmitting() { + pw-link -l | grep sunshine >/dev/null +} + +do_device_setup() { + # trocar dispositivo padrão + pactl set-default-sink "$default_device" + # conectar dispositivo virtual do OBS + pw-link "$obs_device$obs_device_fl" "$sunshine_device$sunshine_device_fl" + pw-link "$obs_device$obs_device_fr" "$sunshine_device$sunshine_device_fr" + # talvez desconectar a saída do seu fone do sunshine?? + sleep 5 + pw-link -d "$default_device$default_device_fl" "$sunshine_device$sunshine_device_fl" + pw-link -d "$default_device$default_device_fr" "$sunshine_device$sunshine_device_fr" +} + +while true; do + if [ "$state" = "waiting_for_sunshine" ]; then + if is_sunshine_transmitting; then + state=do_sunshine_setup + fi + elif [ "$state" = "do_sunshine_setup" ]; then + do_device_setup + state=sunshine_running + elif [ "$state" = "sunshine_running" ]; then + if ! is_sunshine_transmitting; then + state=sunshine_not_transmitting + fi + elif [ "$state" = "sunshine_not_transmitting" ]; then + state=waiting_for_sunshine + fi + sleep "$sleep_time" +done