Long term project, it’s probably not feasible for me to ever get this done before it gets implemented in Renoise since I can’t code compiled languages or audio applications worth shit, but how hard would it be to make:
- A plugin which hosts/wraps another plugin (say, side chain).
- This meta-plugin can be instantiated on several Renoise tracks
- Each instance is not an instance, but an alias pointing to the same plug-in
- You control inputs and outputs based on how many instances there are.
Let’s call the plugin “VST Cocoon” and postulate the following example:
- Track 1 is a kick drum, has an instance of VST Cocoon
- Track 2 is a synth, has an instance of VST Cocoon
- We open VST Cocoon, and load up slim slow slider - Side Chain Compressor in VST Cocoon
- VST Cocoon detects that the Sidechain plug-in has Inputs: 2 (max:1) Outputs: 2 (max:2)
- In VST Cocoon, we connect Track 1 to the input of Sidechain
- And here’s where I’m lost…
Problems, based on absolutely no knowledge of plug-ins.
- Each instance of a plug-in is an object, I doubt I can make those objects into references to each other?
- I’m not clear on what the difference is between regular plug-in input and the other kind? That is to say, when I put a plug-in on a Renoise track, audio is obviously being routed through it. So what’s the difference between that and the “special input” of a side chain? More to the point how do I establish the difference in VST Cocoon?
Solution, based on absolutely no knowledge of plug-ins.
- VST Cocoon is a stand alone application / daemon. You launch it and run it in parallel with Renoise. The plug-in instances in Renoise are actually bridges between VST Cocoon and Renoise. Kind of like how soundflower works but instead of passing Audio, you are passing plug-in stuff.
Just throwing it out there, looking for feedback, starting points, help, can’t someone else do it? Etc.
So, let’s recap with VST Cocoon as a stand alone application with bridges, here’s what I’m thinking:
- Track 1 is a kick drum, has an instance of VST Cocoon (bridge)
- Track 2 is a synth, has an instance of VST Cocoon (bridge)
- Send Track 1 is empty, has an instance of VST Cocoon (bridge)
- We open VST Cocoon (daemon) and load up slim slow slider - Side Chain Compressor
- VST Cocoon (daemon) detects that the Sidechain plug-in has Inputs: 2 (max:1) Outputs: 2 (max:2)
- In VST Cocoon (daemon), we connect Track 1 (bridge) to the “special input” of Sidechain
- In VST Cocoon (daemon), we connect Track 2 (bridge) to the “regular” input of Sidechain
- In VST Cocoon (daemon), we set the output of Sidechain to Send Track 1 (bridge)
Is this even possible?