Running multiple VST-effects on the same unit


I have a question – is it possible to configure the built in DAW to support different pre-existing VSTs? For example if I would like to make a guitar stompbox which could run different kinds of audio effects depending on the situation. Furthermore – could this be implemented in a drag-and-drop architecture with presets so that I could have for example my favourite VST delay on channel one, and a VST chorus on channel two, and so forth? Would this require implementing a separate codebase for each software plug-in or merely mapping parameters (say knob 1 controls division time for the delay plug-in while controlling modulation depth for the chorus?)

Any tips on how this could be accomplished?



You can definitely run several VST’s simultaneously, either in a chain, or in parallel, or for that matter, many chains in parallel, as you would in any other DAW.

The difference is that Sushi does not implement dynamic loading, i.e. you cannot load/unload plugins while keeping other plugins in memory.

Instead, you need to terminate the Sushi process and start it anew whenever you want to use a different configuration.

Our multi_fx_with_glue_app example demonstrates a configuration with several effects.

Another such example is the adc_sequencer, which we used as a demonstration at ADC '19.

What you refer to, with drag and drop, is not something we directly provide code for. But it is straightforward to implement a system using Elk, which generates Sushi configuration .json files following such user edits, and simply restarts the Sushi process in the background when the change needs to take place, loading the newly generated .json.

Audio then does need to stop, but that is the case also when dynamically loading a plugin on a desktop DAW.

Ilias of Elk

Ok, thank you very much! I will check it out :slight_smile:


I just want to add on top of Ilias’ answer that dynamic plugin loading is under development.

Actually, there is something like that available through the OSC API (check SUSHI’s README) but we wouldn’t recommend using it in production as it is not stable. But might be good enough for you to start prototyping and experimenting.


1 Like

This is super interesting to me. I’ve been looking through the repo and was wondering why it seemed that you could get but not set tracks via the API. Dynamic plugin loading would really open up a ton of possibilities!


Due to COVID the dynamic track creation API was given lower priority over developing Sushi features that support our Aloha functionality.

But, we are now back on track with implementing these features, and plan a release soon.

Ilias of Elk

1 Like

Thanks for the update - that makes total sense; if there was ever a time to prioritise that, this was it! I look forward to the coming updates :slight_smile: