.dotfiles/.bin/start-audio

61 lines
1.7 KiB
Bash
Executable file

#!/usr/bin/env sh
start_audio_jack () {
wait-for-service --user "puseaudio.socket"
systemctl --user stop pulseaudio.service
systemctl --user stop pulseaudio.socket
sleep 1
jack_control ds alsa
jack_control dps device hw:U192k
jack_control dps rate 48000
jack_control dps nperiods 4
jack_control dps period 256
jack_control start
sleep 1
systemctl --user start pulseaudio
sleep 1
alsa_out -d hw:PCH -j "Speaker" -c 2 &
#alsa_out -d "hdmi:CARD=HDMI,DEV=5" -j "Speaker" -c 2 &
sleep 1
jack_connect "PulseAudio JACK Sink":front-left Speaker:playback_1
jack_connect "PulseAudio JACK Sink":front-right Speaker:playback_2
if [ -x "$(command -v jack-matchmaker)" ]
then
jack-matchmaker -e \
Mopidy:out_jackaudiosink0_1 Speaker:playback_1 \
Mopidy:out_jackaudiosink0_2 Speaker:playback_2 &
fi
sleep 3
}
start_audio_pipewire () {
wait-for-service --user "pipewire.service"
wait-for-service --user "wireplumber.service"
sleep 5
pw-link 'default-sink:monitor_FL' 'alsa_output.usb-BEHRINGER_UMC202HD_192k-00.HiFi__hw_U192k__sink:playback_FL'
pw-link 'default-sink:monitor_FR' 'alsa_output.usb-BEHRINGER_UMC202HD_192k-00.HiFi__hw_U192k__sink:playback_FR'
pw-link 'default-sink:monitor_FL' 'alsa_output.pci-0000_00_1f.3.analog-stereo:playback_FL'
pw-link 'default-sink:monitor_FR' 'alsa_output.pci-0000_00_1f.3.analog-stereo:playback_FR'
#pw-link 'output.UMC_Amp:capture_MONO' 'default-sink:playback_FL'
#pw-link 'output.UMC_Amp:capture_MONO' 'default-sink:playback_FR'
}
case $1 in
jack) start_audio_jack ;;
pipewire) start_audio_pipewire ;;
*) echo "'$1' is not valid" ;;
esac