New Tool (2.6 - 3.5): Split Into Separate Tracks

Right click on Track --> Track --> Split into separate Tracks

Right click on Track → Track → Split into separate Tracks

Oh I see - somewhere in the track - not on the track title! Thanks…

Can it work on a whole song, or just on an individual section? (It’s great BTW)

Hi fladd! Thank you very much for this tool, it is magnificent!

I miss the option of separating notes by “note columns”.For example, to represent the 120 notes, which are 10 octaves, you only need 10 tracks with 12 note columns, the 10 tracks put into 1 main group.The track name could be Octave 0, Octave 1 … Octave 9. And only the necessary octaves would appear.Could this be implemented?

What about renaming the columns acording to notes when you split it by notes?

great tool, thx

I’m getting this error every time. The tool works, but the error shows up nevertheless.

image

Renoise 3.3.2

Strange, I don’t have this. Maybe it interferes with some other tool or so?

Could it be to do with a demo plugin? some don’t allow you to save active presets as a limitation, so don’t report any parameters.

Maybe even a non-demo plugin that doesn’t report/ have active parameters (I have seen one before but can’t remember what it was)

An example of a demo plug that does this is Sonimus Tuco. The small arrow is missing here that you would press to access its parameters in renoise:

Screenshot 2021-10-08 012034

If so you would just have to filter out something like

if #parameters <1 then skip

Nope. It also happens when splitting simple chopped breaks without any fx or processing.

But, like I said, the tool still works. The bug is just annoying. I mean, it could be interfering with something else, but I haven’t noticed anything strange yet. :sweat_smile:

That is strange if no fx present on the track as the tool filters out that code that’s throwing the error with:

if #current_song.tracks[orig_track].devices > 1 then

the ‘orig_track’ index variable seems to take its value from ‘renoise.song().selected_track_index’ but I don’t think another tool can interfere with that until the running tool completes (or uses :yield() which is not present here/ used in heavier processing tools)

Even then with no fx in the song, all tracks would fail that if statement.

I defer back to fladd :slight_smile:

1 Like

This is very useful, quite intuitive and non-intrusive when not in use. Happy to have in my toolbox!

One request or question: How about adding the opposite option as well? As in, getting several tracks into different lines in the same track? To me for one, that would be equally nice to have.

Hi @fladd ,

I’ve added some little fix for devices which have no active_preset index (== 0, e.g. a lot of VST3), and also added sequence slot copying, so the sequence slot state also will be kept.

Also it’s containing a check for devices not fitting on a group track (e.g. velocity tracker). In this case, the device will be copied onto the first sub track. Menu entry now is placed on root level, also now in the mixer view.

de.fladd.SplitIntoSeparateTracks.xrnx (5.5 KB)

2 Likes

For some reason, it’s crashing now in the recent 3.5.2, so I again disabled setting the active_preset (index), and it works again:
de.fladd.SplitIntoSeparateTracks.xrnx (5.5 KB)

Thanks ffx! I uploaded it as version 1.4 to the tools page.

1 Like

Just thinking about this: Shouldn’t such a device be copied to every track in the group then?

Well, it’s all messed up anayway, as soon as you let it move meta devices (except the signal follower), because Renoise will reset all destination connections. So it doesn’t really matter, you will have to keep original track and recover the connection then, or drag’n’drop from source track afterwards. Then the connections are kept, for unknown reason.

Maybe you are right, though as far as I understand it, usually multiple source meta devices (like it would be if those were defacto duplicated), with the same target, will mess up the setup. But maybe you have a different scenario in mind…

One could add manual restoration of destinations, via scripting. IMHO Renoise API should already provide that. I don’t even know if you can set the targets via API…

Line #469 can now be enabled again, using Renoise 3.5.3.

new_device.active_preset = device.active_preset