#!/bin/bash


# Check if another instance of script is running
pidof -o %PPID -x $0 >/dev/null && echo "ERROR: Script $0 already running" && exit 1

while true
do
	# Parse default conf
	. /etc/io-studio.conf

	# Parse user conf
	[ -e ~/.config/io-studio.conf ] && . ~/.config/io-studio.conf

	killall jack-pulse-daemon jack-zbridge-daemon zita-a2j zita-j2a > /dev/null 2>&1
	pulseaudio -k > /dev/null 2>&1
	pulseaudio -k > /dev/null 2>&1
	killall start-pulseaudio-x11 > /dev/null 2>&1

	if jack_control status | grep -qs started && ladish_control sisloaded | grep -qs yes
	then
		if ! ps -A | grep "alsa_in" | grep -v grep > /dev/null 2>&1
		then
			alsa_in -j alsa2jack -d cloop -c 2 -q 1 2>&1 1> /dev/null &
			if [ "${AUTO_CONNECT}" = "TRUE" ]
			then
				sleep 0.5
				jack_connect "alsa2jack:capture_1" "system:playback_1" 2>&1 1> /dev/null &
				jack_connect "alsa2jack:capture_2" "system:playback_2" 2>&1 1> /dev/null &
				jack_connect "alsa2jack:capture_1" "system:playback_3" 2>&1 1> /dev/null &
				jack_connect "alsa2jack:capture_2" "system:playback_4" 2>&1 1> /dev/null &
			fi
		fi
		if ! ps -A | grep "alsa_out" | grep -v grep > /dev/null 2>&1
		then
			alsa_out -j jack2alsa -d ploop -c 2 -q 1 2>&1 1> /dev/null &
			if [ "${AUTO_CONNECT}" = "TRUE" ]
			then
				sleep 0.5
				jack_connect "system:capture_1" "jack2alsa:playback_1" 2>&1 1> /dev/null &
				jack_connect "system:capture_2" "jack2alsa:playback_2" 2>&1 1> /dev/null &
			fi
		fi
	fi

	sleep 120

done


exit 0
