Layered Sounds/multiple Midi Inputs

This is going to be a bit wordy, but I’m going to propose my feature request and a potential way to implement it cleanly. :)

PROBLEM:

I really need more flexiblity in the way that sounds are controlled by external MIDI controllers. As an example, if I have two controllers hooked up (MIDI drumpad and MIDI keyboard), I’d like the drums to play samples in a Renoise .xrni, and the keyboard to play a VSTi or AU. Or two drumpad controllers could each go into their own .xrnis and the output of each would be processed with their independent effects chain. During realtime recording the performances would be assigned into the tracks you select… ie: the .xrni would be recorded into track 2 and the AU would be recorded into track 7.

Related to this (meaning that I think it could be implemented as an extension of the previous feature request) I’d really like the ability to have, for example, one keyboard controller triggering notes on multiple .xrni/VSTi/AUs simultaneously.

PROPOSAL:

I believe that these things could be accomplished by:

  1. Adding a dropdown selectbox in the “Instrument Setting” area at the bottom, from which you could specify a MIDI Input. The MIDI Input selection would determine which MIDI device controls the .xrni/sample/VST/AU assigned. With this ability, you could tie specific MIDI Input devices to specific instruments. You could also specify that one controller would control three different instruments at the same time.

  2. In the same “Instrument Settings” section, adding a “Record To” dropdown/box, where you could (optionally) assign a recording destination for that particular .xrni/sample/VST/AU… for example, Track 3. This could even be an extension of the “Assigned to track” option that currently exists only for VSTs and I believe only deals with effects routing.

  3. Allow shift-click highlighting of multiple instruments in the top-right portion of the GUI. If you wanted to deal with five specific instruments in real-time, you’d shift-click those five instruments, and features 1 and 2 above should take care of the rest of the functionality.

CONCLUSION:

These three things, I believe, would solve the problem fairly cleanly. In addition, these changes wouldn’t alter the default working method of Renoise or any tracking principles, as far as I can tell. Basically, users could optionally specify a specific MIDI Input to control each instrument (it would default to the way it works currently). They would optionally specify a recording destination for each instrument (again, it would default to the current method). Finally, users could shift-click multiple .xrni/sample/VST/AU instrument in the top-right to specify which are being used at the same time. The default single-click to choose an instrument would work the same as it does now.

And finally, that’s it! Ended up writing a lot more than I expected, but I enjoy thinking about this sorta stuff :) If I missed anything obvious, please let me know. There’s a strong possibility that I have… hehe.