[linux-audio-user] timing in "performance loader"-script

Atte André Jensen atte.jensen at gmail.com
Sun Sep 4 14:52:27 EDT 2005


Hi

I've written a bunch of scripts to start synths, and connect them. But 
sometimes it get's screwed mostly because of timing issues. When 
counting on client numbers for connecting stuff which app comes up first 
is important... So:

1) Can I avoid the client numbers alltogether? This seems to require a 
way to rename ams, since all clients are calles AlsaModularSynth. Is 
that (starting ams with a specific clientname?) possible?

2) Alternately: is there a better way to handle timing? So app2 will not 
start before app1 is up and running?

Here's an example of the scripts:

#!/bin/bash
options='--sched -+rtaudio=jack -d -odac -M'
csound_path='.patches'
ams_path='.patches'
zyn_path='.patches'

key1=`usb_keyboards | head -n 1`
key2=`usb_keyboards | head -n 2 | tail -n 1`
key3=`usb_keyboards | head -n 3 | tail -n 1`

sine_balls=$csound_path/bouncing_sine_balls.csd
noisepad=$csound_path/filtered_noise_pad.csd
stringish_arpeggio=$csound_path/stringish_arpeggio.csd
mellotron=$csound_path/mellotron_strings.csd
warm_muted=$ams_path/muted_lead_big_mistake.ams
brass=$ams_path/res_sweep_big_mistake.ams

midisplit 60 &
midisplit1=$!
midisplit 45 60 &
midisplit2=$!
midisplit 48 60 &
midisplit3=$!

ams -j --preset $warm_muted &
sleep 1

ams -j --preset $brass &
sleep 1

csound -+jack_client=csound5_1 $options 4 $sine_balls &
csound -+jack_client=csound5_2 $options 3 $noisepad &
csound -+jack_client=csound5_4 $options 5 $stringish_arpeggio &
csound -+jack_client=csound5_3 $options 8 $mellotron &

sleep 2

aconnect $key1 129:0
aconnect 130:1 133:0
aconnect 130:2 132:0
#aconnect 129:5 133:0

aconnect $key2 130:0

csound_auto_connect_audio
ams_auto_connect_audio

echo press key to shut down...
read

aconnect -x

killall csound
killall ams.real
kill $midisplit1
kill $midisplit2
kill $midisplit3
killall python


-- 
peace, love & harmony
Atte

http://www.atte.dk



More information about the Linux-audio-user mailing list