Page 1 of 1

Carla scripting, OSC, something - programmatic control

Posted: Wed Mar 06, 2019 8:06 pm
by Chuckk
Hi!
KXStudio is the bomb. Cadence saved me from ditching Linux when PulseAudio was somehow installed on my system. I'll be forever grateful for that!

My question is, I think, about Carla. I am looking for a solution to open a plugin, automatically clone it several times, and have all of the clones' parameters linked, but to send them notes and pitch bend on different channels. Ideally, this could itself happen inside a plugin.
I've tried everything. Csound has dropped VST, thanks to Steinberg aggression, Pure Data's VST support is old and shaky, I can find nothing but coding a host-plugin from the ground up. I'm not above doing that, but if there's a way to make Carla do this, I'd get from A to B faster. Or DISTRHO?

The idea is that this will all be invisible to the user. The user opens this plugin, selects another plugin to load into it, and from there interacts with this plugin as though it were just one. Internally, every automation, CC and UI interaction is propagated to all clones, and pitch bends and notes are distributed among them, to allow for microtonality without having to load the same plugin many times and make all parameter changes manually. Also, the user's software (likely my microtonal sequencer) can send all of those pitch bend and note messages on one or two MIDI channels.

So I see that Carla can be a VST plugin that loads VST plugins, but is there somewhere an interface to programmatically read and control parameters, as well as create and destroy clones of a plugin?
I know, it's open source; but alas, I am not licensed to use the VST 2.4 SDK...

Thanks for any and all tips!
Chuckk

Re: Carla scripting, OSC, something - programmatic control

Posted: Fri Mar 08, 2019 5:52 am
by noedig
Sounds like you want to fake MPE (MIDI Polyphonic Expression), where each note can have its own pitchbend independent from other notes?

Carla's OSC is limited - see the available commands in Help -> About -> OSC.

Carla has a programming API, you could do some digging in it. There should be some info about it lying around on the forum, like viewtopic.php?f=44&t=12672.

Mididings or similar can be used to separate notes and pitchbends to different channels/ports to send to different plugins, if only to get a proof of concept going.
Chuckk wrote: Also, the user's software (likely my microtonal sequencer) can send all of those pitch bend and note messages on one or two MIDI channels
How will the pitchbend be differentiated per note if only two channels are used? How will the user specify different pitchbend for each note if all are on the same channel?

Re: Carla scripting, OSC, something - programmatic control

Posted: Sun Mar 10, 2019 1:31 pm
by milkii
from the chat in #lad, falkTX has been working on OSC control of Carla, so expect some changes at some point