Can anyone tells me how I get Beatrix to work? Raboof?
edit: found some info about jackification
Jackification
http://rg42.org/wiki/beatrix
It would not to complicated to wrap beatrix into a jack-audio and alsa-sequencer application without changing any of beatrix' original source!
You would need to add jack-audio client code and wrap the midi-I/O into alsa much like beatrix-v041-jack7g.diff - I also suggest to compile beatrix with the -O3 option (in Makefile) and replace the usage documentation to include the [-R <sample-rate>] optional command line argument (in main.c).
After this small exercise, one would find that some internal buffer-sizes and hardcoded optimizations in beatrix yield to unwanted audio-effects when running at samplerates other than 22050. There are two proposed workarounds: re-sample or change pitch!
With jack at 22050Hz and multiples thereof (eg. 44.1kHz) there are no problems. Running at 48k SPS would need either of those fixes:
Code: Select all
./beatrix osc.tuning=404.249986 # internal seq at 22050, tune corrected.
# 404.25 = 440 Hz / 24000 * 22050
# internal pitch corrected from 22050 to 24k (*2 to JACK - 48kHz)Code: Select all
./beatrix -R 24001 osc.tuning=440.018333 # internal seq upsampled x2
#(-R 24000 would be correct, but collides with beatrix internals)Code: Select all
./beatrix -R 48001 osc.tuning=440.009179 # natively synth at 48k
# Beware: Beatrix ties the effects to sample-buffer size.
# Using large sample-rates, it is possible to configure
# long reverb and whirl-effect, which may cause internal buffer
# overflows. jack midi patch
Code: Select all
diff --git a/main.c b/main.c
index 9232a62..3263c2d 100644
--- a/main.c
+++ b/main.c
@@ -604,0 +605,2 @@
+ chdir(dirname(strdup(argv[0])));
+
diff --git a/midi.c b/midi.c
index a9393cb..6645d38 100644
--- a/midi.c
+++ b/midi.c
@@ -1096,0 +1097,2 @@
+ snprintf(seq_name,32,"beatrix");
+