I’m working with a remote machine (a gorgeous Bela Pepper) and use it to route CV into my modular system from MIDI controllers that are plugged in to it. I am forever reconfiguring how this happens, and which controllers I’m plugging in that day.
To speed up workflow I set up MIDIdefs on the Bela’s language client to respond to CC and note messages etc and stick the values directly onto buses on the server.
I’m taking note of the bus numbers allocated on the Bela and creating Bus objects on my laptop client manually so that I can easily refer to them in SynthDefs and code entirely from there.
Every change in set-up requires that I change code on Bela client and carefully ensure the Bus numbers are synced on my laptop client. (I’m working on automating the remote creation of MIDI responders and bus setters but this is less than ideal).
I’m dreaming of UGens (perhaps pseudo-ugens) that let me say something akin to this inside a SynthDef:
freq = MIDINoteNumber(CHANNEL, MIDI_ID).midicps;
gate = MIDIGate(NOTE, CHANNEL, MIDI_ID);
cutoff = MIDICC(MIDI_CC, CHANNEL, MIDI_ID).midicps;
What are the reasons we have no MIDI support on the Server? As I understand it we have data come in at all sorts of different rates on the server these days with AnalogIn, DigitalIO etc for the Bela. What are the technical reasons we don’t have such nice UGens focussed on MIDI?
Has anyone else looked at smoothing this sort of workflow out? What have you done?