surge-synthesizer / surge

Synthesizer plug-in (previously released as Vember Audio Surge)
https://surge-synthesizer.github.io/
GNU General Public License v3.0
3.17k stars 400 forks source link

More send FX routing options #1010

Open baconpaul opened 5 years ago

baconpaul commented 5 years ago

As @mortfell said in #757

baconpaul how doable would it be to allow an option for Surge to send the output of Send FX1 into the input of Send FX2. That would allow us to make some "fx chains" like the idea i described above where a fully wet effect passes into another fully wet effect, but where we still have access to an unaffected "dry" sound.

An idea for how that could possibly function in the interface: The slider "FX1 Return" could have a right click menu option"Send FX1 to FX2" This would re-route FX1 into FX2 and change the function of the "FX1 Return" slider into a trim volume for the send level from FX1 -> FX2 , (instead of being a return volume to the main mix).

baconpaul commented 5 years ago

https://github.com/surge-synthesizer/surge/blob/b29fd128e8399704ba33eaf28b39e4ae2cf1b0a1/src/common/SurgeSynthesizer.cpp#L2510

That’s the current send routing code. Looks like chain vs parallel is doable pretty easily and more than enough time there for another if - If I can figure out where to put the parameter in the patch.

baconpaul commented 5 years ago

OK to do this the right way I need to add a parameter to the patch and the au; and I am not 100% sure how to do that and retain stable parameter IDs. So I'm going to bounce this one out of 1.6.2 since it is a 'nice to have' and once 1.6.2 ships struggle with the idea of how to add parameters (as opposed to how to add saved information in a patch which is not parameter exposed, which we have in 1.6.2)