<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style style="display: none;" id="owaParaStyle" type="text/css">P {margin-top:0;margin-bottom:0;}</style>
</head>
<body tabindex="0" aria-label="Message body" fpstyle="1" dir="ltr">
<div name="divtagdefaultwrapper" id="divtagdefaultwrapper" style="font-family: Calibri,Arial,Helvetica,sans-serif; font-size: 12pt; color: #000000; margin: 0">
I gave it a royal tryout just now.  Below is sound-patch startup code, it's actually a mashup of most of my START-INITIAL script which runs at boot, and the first patch script which it calls.  When I keep the schedtool prefixes, MIDI keyhits all make it in
 and synths all get their signal out through the sound card output.  When I don't, about one in 20-30 keyhits (and also occasionally key-ups) get lost, and there are cutouts both at high load and very low loads.  Some may notice I have let the latency rise
 to 4; this too seems to be indicated for the loads I'm using, though if I were using just one light load (say, a
<u>simple</u> Yoshimi patch), it could be ratcheted down a lot.  Oddly, it does appear that a different patch which calls just Fluidsynth, functions as a heavier load than three Yoshimis; it is true that Fluidsynth is itself using a rather big four-voiced soundfont. 
 I have another which right now is two Yoshimis plus the same Fluidsynth an octave lower (octave handled by mididings), that one is higher yet, but the setup and weights below are handling it well.<br>
<br>
The relative weights are definitely guesses based on behavior. I just increase the weight of anything which misbehaves, until it makes it worse, then reverse :-)  I did find earlier tonight that I had neglected my limits.conf, so this is what I have set now,
 which allows those numbers below to actually work:<br>
<br>
@audio          -       rtprio          95<br>
@audio          -       nice           -19<br>
@audio          -       memlock         512000<br>
<br>
I'm not sure the nice is at all needed, but it doesn't seem to be harming anything.<br>
<br>
J.E.B.<br>
<br>
------<br>
<br>
jack_control start<br>
<br>
jack_control ds dummy<br>
jack_control dps capture 0<br>
jack_control dps playback 0<br>
jack_control dps rate 48000<br>
jack_control dps period 64<br>
jack_control eps realtime true<br>
jack_control eps realtime-priority 50<br>
jack_control eps clock-source 1<br>
<br>
# Stop any running audio elements<br>
echo "Stop any running audio elements..."<br>
killall -9 -w yoshimi fluidsynth zita-j2a aj-snapshot calfjackhost non-mixer rakarrack mididings lashd<br>
killall -9 -w yoshimi fluidsynth zita-j2a aj-snapshot calfjackhost non-mixer rakarrack mididings lashd<br>
<br>
# Remove all connections <br>
echo "Stopping a2j..."<br>
a2j_control stop<br>
echo "Stopping Jackd to remove all connections..."<br>
killall -9 -w jackdbus<br>
killall -9 -w jackdbus<br>
jack_control stop<br>
echo "Starting Jackd..."<br>
jack_control start<br>
sleep 2<br>
<br>
# Running a2j -- needful to use ALSA MIDI devices with<br>
# zita-a2j, which uses the 'dummy' driver in Jack<br>
echo "Starting a2jmidid..."<br>
a2j_control ehw<br>
a2j_control start<br>
<br>
# Start zita-j2a for audio out<br>
echo "Starting Zita..."<br>
nohup schedtool -R -p 80 -e zita-j2a -d hw:SB -r 48000 -p 64  &<br>
<br>
# Start all relevant audio elements<br>
echo "Start all relevant audio elements..."<br>
nohup schedtool -R -p 75 -e mididings -f /home/jeb/Combine.py     \<br>
    > /home/jeb/LOGS/Combine.log &<br>
nohup schedtool -R -p 50 -e calfjackhost --client CalfSRO     \<br>
    eq12:SRO ! reverb:SRO ! Compressor:SRO             \<br>
    > /home/jeb/LOGS/calfjackhost-SRO.log &<br>
nohup schedtool -R -p 50 -e yoshimi -N YoshSRO1 -j \<br>
    -l /home/jeb/YOSHIMI/SROpart1.xmz  > /home/jeb/LOGS/Yoshimi-SRO1.log &<br>
nohup schedtool -R -p 50 -e yoshimi -N YoshSRO2 -j \<br>
    -l /home/jeb/YOSHIMI/SROpart2.xmz  > /home/jeb/LOGS/Yoshimi-SRO2.log &<br>
nohup schedtool -R -p 50 -e yoshimi -N YoshSRO3 -j \<br>
    -l /home/jeb/YOSHIMI/SROpart3.xmz  > /home/jeb/LOGS/Yoshimi-SRO3.log &<br>
sleep 2<br>
<br>
# And lastly, create jackd connections using aj-snapshot<br>
echo "And lastly, create jackd connections using aj-snapshot..."<br>
cp /home/jeb/AJSRO.xml /home/jeb/AJRunning.xml<br>
nohup schedtool -R -p 75 -e aj-snapshot -d AJRunning.xml &<br>
<br>
</div>
</body>
</html>