Hey. Here some more thoughts on the tracker paradigm. again, as a newbie, maybe I’ll gain the title of “master of the obvious”, but please indulge and share your thoughts if you feel like it
Last week, I started a discussion about the multi-track organization of the tracker. To sum it up, I was saying that assigning a separate DSP chain to each track initially make the software easy to use, but creates limitations on how tracks can interact. Then, when we want to do more advanced stuff such as sidechaining, it gets very complicated because we have to dodge those limitations to make tracks communicate, through Meta-devices and stuff.
Let’s push it further and talk about the tracks themselves - the sequencing stuff.
The way the tracker works, tracks are grouped in a pattern. They share a few global values such as tempo, lines per beat, ticks per line. When the pattern is rolling, they are played synchronously.
When I see the pattern matrix, I can’t help but think “hell, it would be great to be able to play track 1 from pattern 1 and track 2 from pattern 3 at the same time”. I guess it would behave a bit like scenes and loops or whatever they are called in Live, and it would dramatically increase the live capacities of renoise. But the way tracks are organized, you have to play them all from the same pattern.
Now, let’s take a track one track alone, without paremeter automations. A track is a musical phrase, basically some MIDI note events saying how to control instruments 00 and 01 for example. But as a MIDI keyboard has no fucking clue of what it is controlling by sending note events on channel 1, instruments doesn’t mean much here.
If you add the information “00 is the instrument X and 01 is the instrument Y”, you get some sort of minimalistic mono-tracker - adding this information could be done by wiring output 00 and 01 of the track to instrument X and Y, for example.
For parameter automation, again it’s an arbitrary destination and a numerical value (MIDI CC events). Again, you can write a parameter automation sending numerical value to something called “00”, and then wire it to a parameter somewhere.
then, you can have several of these autonomous tracks sharing the same central clock. they can be in phase (ie starting at the same tick) or have different lengths, you can load/unload them on the fly, make them control other things …
see what I mean ? But maybe when you get to this point, it’s simply not a tracker anymore ?