VST with scripts?

DSP, Plugin and Host development discussion.
RELATED
PRODUCTS

Post

I was trying to use scripteffect and VST Plugin Analyser as way of quickly prototyping quick modifications to filter code. Unfortunately it is not stable enough to work with, at least on my system. Are there any other VSTs that I could use to process audio with scripts on the fly?

Post

You can try this Python dsp module:
http://code.google.com/p/pyo/

Looks kinda neat, and Python is a pretty cool scripting language. I haven't gotten a chance to try it yet though.

Post

Yeah. I haven't much experience with python, but it looks like something I could get in to. As a last resort I had actually been thinking about trying to put together a python based VST.

Anyway thanks, I'll check out your link.

Post

Reaper's JS is a scripting language to create JS format plugins. I think you can make use of this in other hosts by using ReaJS

Sensomusic Usine has some scripting and is a host as well as a VST.

VSTLua was a thing but AFAIK has been mostly abandoned.

edit: I accidentally a word
Regards, Mike
Image

Post

[quote="mn"Sensomusic Usine has some scripting and is a host as well as a VST.[/quote]

FWIW, the current version, Hollyhock, is a rewrite and isnt currently available as a plugin.
An idiot on Set Theory:
"In some cases there is an object called red that contains everything that is red. In much the same way a pot is a plate."

Post


Post

mn wrote: VSTLua was a thing but AFAIK has been mostly abandoned.
Also VstLua seems to be limited to MIDI only, probably because running a scripting language directly for real-time audio is a bit problematic. I actually wonder how pyo (the python project mentioned) manages this.

Jesusonic (is. ReaJS) seems to take a similar approach to SynthMaker in the sense that the language is designed for this stuff directly.. except this one looks a bit more flexible than SynthMaker's code, which I tried at some point and found pretty limiting.

For for simple filter's and such, SynthMaker's code-blocks are another possibility, where you can edit stuff on the fly.

Post

That's the one that OP mentioned in the original post. :)

Post

mystran wrote:
That's the one that OP mentioned in the original post. :)
:dog: :bang: :nutter:

Post

whyterabbyt wrote:
mn wrote:Sensomusic Usine has some scripting and is a host as well as a VST.
FWIW, the current version, Hollyhock, is a rewrite and isnt currently available as a plugin.
I have it and am aware of that, just didn't want to muddy the waters. Thanks for the clarification, though. I am assuming it will catch up and VST versions will come.
Regards, Mike
Image

Post

It's not scripting per se but Tobybear's Filter Explorer might also be useful. I own the Pro version but don't really use it so I had forgotten about it.

edit: posted that I thought I was wrong about having a license, but have located it now, so no longer relevant.
Regards, Mike
Image

Post

There is also Cabbage, which let's you use CSound scripts within a VST

https://code.google.com/p/cabbage/

Post

Thanks, I will look into all the suggestions in more detail when I get the chance. At first glance it doesn't seem like there's anything that would allow on the fly scripting in a VST, but I've not checked in detail yet.

Post

matt42 wrote:Thanks, I will look into all the suggestions in more detail when I get the chance. At first glance it doesn't seem like there's anything that would allow on the fly scripting in a VST, but I've not checked in detail yet.
Well, yeah.. I've actually tried to find something like that too, and then come to the conclusion that having a full production compiler (whether it's C++ or C# or whatever) has some nice advantages.

So I've been thinking how it'd be cool to have a plugin that does nothing except load another plugin.. but in such a way, that it automatically makes a temporary copy of the original DLL file (on Windows you can't otherwise overwrite it) and with a special button in the GUI that will instantly save the settings, unload the plugin, load a new version, and restore settings without even telling the real host.

I generally find that if recompile takes about a second, saving and restoring everything, even with the fastest possible keyboard short-cuts ends up taking about 10 or 20 times that long.. so the idea with the above is that you could test things.. edit code.. hit compile.. alt-tab to DAW and hit "reload plugin" and it'd pick up with the same settings you were just testing, without having to save any patches, close DAW (or at least unload plugin), copy files.. you get the idea.

It wouldn't be technically that complicated really, but a bit of work since (1) you probably need to provide a GUI (including default GUI for the hosted plugin) so you can add your own button and maybe allow adding parameters on the fly and (2) there needs to be some state-tracking in the VST wrapper, such that you can restore it's operation more or less transparently... it might not be something you can throw together in an afternoon, unless you already have all the wrapper code.

If someone decides to do it, here's a bonus feature to consider: allow loading multiple (at least 2, so you can load last release as "reference") versions of the same plugin (say in tabs), and then changing between them on the fly, synchronizing parameters automatically (ie mirror setParameterAutomated to the other plugin) and ideally run both plugins at the same time, and provide selectable output (version A, version B, or the difference between the two, or just all of them at once, so you can route them to analyzers).

Yeah.. sorry for the long "off-topic" but for me that'd solve the same problem, and might be easier to implement.

Post

matt42 wrote:I was trying to use scripteffect and VST Plugin Analyser as way of quickly prototyping quick modifications to filter code. Unfortunately it is not stable enough to work with, at least on my system. Are there any other VSTs that I could use to process audio with scripts on the fly?
I think that ChucK might be a good choice for this. Have you looked into it?
http://chuck.cs.princeton.edu/

It's a scripting language that I'd imagine would be easy to rapidly modify filter code on-the-fly without having to recompile a bunch of stuff to test different algorithms. Then once you have the algorithm you were going for it should be fairly trivial to port it to your main app, saving you the time and hassle of recompiling a VST and then loading it up in a VST host, just to test some filter logic.

I don't know enough about writing filters to where I can say with assurance if this would helpful for you or not, but I know that's what I'm going to focus on when I start messing with this stuff more.

Post Reply

Return to “DSP and Plugin Development”