Modular Routing Capabilities

I would like to have a discussion about routing audio/MIDI/etc. data in Renoise, and the most efficient way to implement this in Renoise, especially on a GUI level.

My definition of what modular routing capabilities is / could be:

  • Support of VSTi with multiple audio outputs
  • Forward MIDI to DSP/VST effects
  • Meta devices that control several parameters at the same time

A lot of threads on this forum deal with each of these subjects. but instead of discussing individual feature requests, this thread could perhaps introduce a more general and long-term perspective on things (we’re talking Renoise version 2, or even 3)

Edit: I forgot that it would have to be backwards compatible, of course…

  1. New meta-device: Receive Device
    Any channel can recieve audio, not just send channels.

  2. DSP flowchart-view much like Jeskola Buzz, where links can be made to and from individual effects and track audio (be it from a VSTi or renoise instrument).
    When these links are made (shift click and drag maybe), send and receive devices are automatically added to the traditional DSP chains where necessary.
    In this view, send and receive meta devices are represented with lines + arrows, the send amount 0-100% is controlled with a popup slider (like in Buzz).

Would this work? Haven’t thought it through fully, might be a bit messy?

I’m with you on the Send/Recieve device. In fact, the idea for this thread came up when reading Taktik and Looza’s discussion of Sendarella. To keep that kind of routing organized, a flowchart is ideal.

I also like how you suggest that routing sends simply create new devices on the DSP chain - building upon existing functionality. And keeping this in mind, wouldn’t it be even simpler than a popup slider, simply to use the mixer view’s way of representing devices. They already have sliders and a context menu built-in, and you are able to add and remove sliders for specific parameters?

I know how some audio programs handle routing, and especially AudioMulch has a nice way of connecting devices - you can connect a device (in AM they are called “contraptions”), and, when rightclicking it, bypass or even replace it with another device! That is a wicked cool way to work.

Keep the creative juices flowing…

the problem is that audiomulch grew to be that software and renoise comes from a completely different corner. it’s actually quite a feature to have sendtracks in a tracker.

Buzz also was made specifically with modularity in mind and thus turned out the way it was, but renoise would have to go a long way to achieve something similar, not to speak of the fact that this would mean huge changes in the whole concept.

I am really in favour of all those suggestions, I just want to point out that this will take some time and renoise will probably never be the new buzz, the whole idea is simply different.

Well in fact Renoise is quite modular, its more how the interface is for managing the connections.

The start is the instrument, this can be connected to any channel. The cannel can be a chain, but it could also connect to one or several send channels, the sendchannels can be connected to severl other sendchannels and eachother.

Now you can even turn connections on and off during play, which is something I belive you cannot do in Buzz and many other similar modular views.

Its more how you view it.

I don’t think the volume should be managed on a modular interface because its makes it hard to automate it.

But I think a interface for viewing the modular connections should be possible and it would be very modular if it inserted a send/recieve device.

I’ve always thought of Renoise (and Trackers in general) as an interface with crystal-like properties :
Here’s Wikipedia’s executive summary on what crystals are:

Take that thought (although limited to a 2-dimensional interface) and replace atoms, molecules, or ions with sound and you are getting there

So, in essence, a flowchart view is radically different, and represents a great departure from what Renoise normally looks like. But Renoise will always be a tracker at heart. The dev’s and this community will make sure of that!

The more I think about a flowchart, the more complex it becomes. But on a basic level, I think a flowchart implementation could be taken into two directions. It could:

  • Represent the entire structure of Renoise (as decribed by splajn).
  • Take a limited subset of “devices” and present their connections

The problem with the first method is complexity. Too many object crowding the workspace, the need for scrollbars etc. But everything would be present and accounted for

The second method has the opposite problem. You would need to construct the flowchart manually, and possible introduce a “multiple flowchart” tabbing mechanism.

If each concept could somehow be merged into one, it would be optimal solution. The keyword for achieving this is “filtering by attributes”, but I have no idea as how to implement with visually

Maybe something for Renoise 5.0

Given the release intervals for Renoise:

Version 1.0 : Mid 2002
Version 1.9 : Mid 2007

…extrapolate this information, and we can expect version 5.0 to be released approx. 20 years from now. Shit! We would have to rethink the strategy and come up with a brand new interface. Minority Report, anyone?

But seriously, jonas, I know you’re kidding, but I would like to point out that this thread is not about a particular feature request. I think some kind of routing will happen with Renoise 2.0, and we might as well be ready for it.

This is an example of a flowchart. And actually a simple one :wink:

It is divided into following sections: Inputs / Outputs / Midi / Instruments / Meta devices / Tracks
Audio wires are horisontal, while values travel in a vertical fashion.
The instrument with a bold outline is the one currently having focus, and secondary objects and wires are semi-bold, to make it easy to spot connections.