Idea: Expand instrument routing

While the ability to have FX chains inside the instrument is great for distribution and for mapping it to a controller for some live tweaking, it is not very helpful when actually working on a song (e.g. mixing it).

I suggest the following feature:

Select a track, right click instrument, select “Expand instrument routing” will create X new tracks after the selected track, corresponding to the X FX chains defined in the instrument, route all FX chains to the newly created tracks and move the FX from the instrument to the tracks as well.

If the opposite (right click instrument, select"Collapse/Flatten instrument routing", will copy all FX from the tracks to the correspinding FX chain that outputs to that track, and set the output of each FX chain to “current track”) will be implemented as well, we have a great way of sharing and distributing instruments, while pertaining the option to use the instrument in a more natural way.

Let me know what you think!

Would also be cool to add a instrument to more than one routing option. Say A bass to two different and separate effects that could not only be processed separately, but can toggle which effect to play via a command like FX01 or FX02.

I’m trying to optimize my workflow and I can already use the send to move the effects to different slots serially, but parallel would also be rad as hell.

I really wonder how it would be conceptually possible to keep track of such an “expanded” instrument without limiting the creative freedom (once you start using those tracks with other sounds, you’re basically heading into trouble as you can no longer just strip away those tracks when “collapsing”).

I can only really see this working as a one-way street…or was the the idea anyway - to simply add the current track FX to the selected instrument?

Would also be cool to add a instrument to more than one routing option. Say A bass to two different and separate effects that could not only be processed separately, but can toggle which effect to play via a command like FX01 or FX02.

Well, you could control internal DSPs (send device) using a macro:

Macro → instr. send device in chain #1 → instr. DSP chain #2/#3/etc. → Renoise tracks

Then control the macro via pattern commands

I really wonder how it would be conceptually possible to keep track of such an “expanded” instrument without limiting the creative freedom (once you start using those tracks with other sounds, you’re basically heading into trouble as you can no longer just strip away those tracks when “collapsing”).

I can only really see this working as a one-way street…or was the the idea anyway - to simply add the current track FX to the selected instrument?

The idea is just what I described above. Not more, not less.

Concerning the problem you mentioned: If more tracks are added which are set as outputs in the instrument, then they will of course be part of the instrument after collapsing. If these tracks are not part of the instrument routing, then the FX will not be copied into the instrument.

Of course there will be situations in which a collapsing is not possible (e.g. when you use multiple instruments on the same track - I still need to understand at some point why anyone wants to do that anyway…), but luckily the solution for those situations is extremely simple: A pop up will be shown that says “Cannot collapse into instrument!”.