I decided to try 96 kHz audio with the S.R.O. (Supermega Rumblic Organ), my slightly Aslan-like synth (it is not a tame device really), and found items which may be of interest: 1. At 96 kHz, schedtool definitely matters. Taking it out increased xruns a lot. I tried to figure out what was interfering via htop, but it was very unclear. So I'm keeping the schedtool for now. I could believe that if I reengineer for a zero-X default setup (likely to happen in the future) this problem might go away, X and the desktop certainly do have lots of demands. I *think* the only big piece missing for me in this is keymapping, I use F-keys to switch patches, quite easy in both LXDE and MATE. 2. At 48 kHz, I could run stereo, i.e., all three Yoshimis' dual outputs combined by Jack separately, so each output of my FCA202 had a separate signal, with different separations as Yoshimi is prepared to do. But at 96 kHz I started to get rare xruns doing this. Tried a number of things, didn't figure out why. So I tried using just one output of each Yoshimi and then having Jack copy them all to both outputs; xruns gone. Some of my patches -- especially strings-related -- are quite a lot improved by the shift to 96 kHz, the audio detail at the high third of my 88 is much better. Not very surprising from a mathematical point of view of course. I don't use stereo output anyway, I play in ensemble and I need to leave some of the ambient audio thought-room for others, so I'm leaving things as they are unless a solution arises for possible use in recording. 3. The Jack-internal MIDI ports are enormously more handy for portability, because since they retain the same Jack port names for any ALSA MIDI hardware, I can plug in any USB MIDI adapter or USB keyboard and expect things to work without getting into GUI at all. So based on the input from excellent LAU folks, I decided to try an alsarawmidi slave driver via jack_control, thinking that perhaps I mightn't have to worry about the jitter at 4GHz; and lo and behold, all working well so far. For any who may be interested, here is START-INITIAL (run at boot) and patch script START-SRO: ---- begin START-INITIAL, run at boot ---- #!/bin/bash echo '' echo 'Initiating environment...' echo '' nohup /home/jeb/startx11vnc.sh & echo '' echo 'Cleaning up old logs...' echo '' rm ~/.log/jack/jackdbus.log rm ~/.log/a2j/a2j.log rm ~/.log/lash/lash.log echo '' echo 'Starting jackd via dBus and configuring...' echo '' jack_control ds firewire jack_control dps capture 0 jack_control dps playback 0 jack_control dps rate 96000 jack_control dps period 64 jack_control asd alsarawmidi jack_control start jack_control eps realtime true jack_control eps realtime-priority 75 jack_control eps clock-source 1 /home/jeb/START-SRO & ---- begin START-SRO, run to start patch SRO ---- #!/bin/bash # Stop any running audio elements echo "Stop any running audio elements..." killall -9 -w yoshimi fluidsynth zita-j2a aj-snapshot guitarix calfjackhost non-mixer rakarrack mididings lashd killall -9 -w yoshimi fluidsynth zita-j2a aj-snapshot guitarix calfjackhost non-mixer rakarrack mididings lashd # Remove all connections # echo "Stopping a2j..." # a2j_control stop echo "Stopping Jackd to remove all connections..." killall -9 -w jackdbus killall -9 -w jackdbus jack_control stop echo "Starting Jackd..." jack_control start sleep 2 # Running a2j -- needful to use ALSA MIDI devices with # zita-a2j, which uses the 'dummy' driver in Jack # echo "Starting a2jmidid..." # a2j_control ehw # a2j_control start # Start all relevant audio elements echo "Start all relevant audio elements..." nohup schedtool -R -p 90 -e mididings -f /home/jeb/Combine.py \ > /home/jeb/LOGS/Combine.log & nohup schedtool -R -p 90 -e calfjackhost --client CalfSRO \ eq12:SRO ! reverb:SRO ! Compressor:SRO \ > /home/jeb/LOGS/calfjackhost-SRO.log & nohup schedtool -R -p 90 -e yoshimi -N YoshSRO1 -j -l /home/jeb/YOSHIMI/SROpart1.xmz \ > /home/jeb/LOGS/Yoshimi-SRO1.log & nohup schedtool -R -p 90 -e yoshimi -N YoshSRO2 -j -l /home/jeb/YOSHIMI/SROpart2.xmz \ > /home/jeb/LOGS/Yoshimi-SRO2.log & nohup schedtool -R -p 90 -e yoshimi -N YoshSRO3 -j -l /home/jeb/YOSHIMI/SROpart3.xmz \ > /home/jeb/LOGS/Yoshimi-SRO3.log & sleep 2 # And lastly, create jackd connections using aj-snapshot echo "And lastly, create jackd connections using aj-snapshot..." cp /home/jeb/AJSRO.xml /home/jeb/AJRunning.xml nohup schedtool -R -p 90 -e aj-snapshot -d AJRunning.xml & --
Jonathan E. Brickman
Ponderworthy Music | jeb@xxxxxxxxxxxxxxxx | (785)233-9977 | http://ponderworthy.com |
_______________________________________________ Linux-audio-user mailing list Linux-audio-user@xxxxxxxxxxxxxxxxxxxx http://lists.linuxaudio.org/listinfo/linux-audio-user