falkTX / dssi-vst

DSSI plugin wrapper for VST plugins
Other
109 stars 26 forks source link

Lauching programmatically a VST plugin with a preset #7

Open TiBeN opened 10 years ago

TiBeN commented 10 years ago

HI, At first i would like to thanks you about your work on dssi-vst which works surprisingly well.

I'm trying to automate the launch of the IK Multimedia TRacKS 3 VST plugin with a particular preset (or "a particular configured state" in other words) in a deployment bash script. Using dssi-vst and the command-line tool "jack-dssi-host" or "vsthost" i successfully run it but i can't figure how to make it loading a preset programmatically.

I've banged my head around and learned a lot about the DSSI API and it's integrated OSC server. I tried to send some OSC "/configure", "/program" or "/command" using dssi_osc_send from the dssi-utils package without any success. Also, about "/configure" requests I have no idea which key/value pairs are available if there are.

Can i do it this way ?

At the same time i tried "carla" with a simple project which includes this VST Plugin. I discovered by inspecting the dot carxp project file a "chunk" xml tag with BASE64 encoded xml which seems to describe well the state of the plugin i would like it to be.

Is there a way to inject this "chunk" on the plugin by making an osc request ?

If not, is there any other way to do it programmatically ?

Thank's you in advance

TiBeN commented 10 years ago

So i managed to do it by making a custom build of vsthost adding a call to RemotePluginClient::setVSTChunk(std::vector chunk) with the chunk i fetched from the dot carxp file from carla.

However i'm still interrested to know if it is possible using OSC ( i noticed the "DSSI_CUSTOMDATA_EXTENSION_KEY" in your code but i don't know if it is related)