New Tool (2.7): Render Slices To New Instrument

The Tools page version is up now.
It has some last refinements.

It copies all slices to a new instrument (excluding the original slice, due to the copy bug).
Or you can pick it to copy each slice to a separate instrument.

To abort the process, simply “try” to close the progress dialog (it might not immediately respond, but when idle time kicks in it will close and abort the proces)

It does work fine, when you attempt to slice a sliced insturment it automatically seeks a clear instrument and will autoselect that instrument after slicing (so you don’t need to search where it copied the data to).

Any suggestions or tips are welcome.
Ofcourse also the bug-reports.

14-05-2011 Version [latest]: http://tools.renoise…-new-instrument

Fixes:
V1.1 various under te hood fixes with tips from Taktik.
V0.7 Errors with shortcuts when having a slice selected
V0.7 Garbage collection removes object contents where alias was still pointing to.

V0.6 when rendering separate slices to individual instruments, only the first instrument has a proper sample mapping, the rest is double layered.
V0.6 It is not easy but for those trying real hard:You can corrupt the process by either removing a sampleslot or removing the target instrument during the proces.
V0.6 When tool is loaded it attempts to access sample-data of the current selected instrument, this causes errors when no sample data is present. Same as well when attempting to start with the shortcuts.

V0.5 Circumvented illegal frame reference when main sample has a selected area (bug Renoise)
V0.2 Error when no available instrumentslots present
V0.2 Adding a sampleslot after adding mapping caused double mapping of D-4

Additions:
V1.1 More shortcut links (also in instrument list)
V0.5 Progress meter (closing it cancels the proces)
V0.5 Render each slice to a separate instrument.

very nice, thanks for this great script :)

i just tested it as well, works without problems. now it would be also cool to have “Copy each slice to own instrument” and i would be good forever :)

EDIT: i just noticed that after the new instrument with the new samples is created, the D-4 key is being overlapped with 2 samples in the Sample Keyzones. tried slicing different samples, happens every time.

vV on a roll!!

Got a bug notice trying to run the script on a sliced beat synced amen (also pressed the ‘t’ button in the instrument settings before running it):

edit and:

Got this one fixed.

Got this one fixed as well.

I can’t reproduce this one, do you have a specific instrument with which you can achieve this error everytime?
And if i’m able to reproduce, i perhaps can only circumvent the problem but not really fix it as i ask Renoise friendly to supply the amount of frames of the sample and if Renoise tells me it has 7682 frames, then so will the routine also attempt to move as much.

New version in the first post btw.

Am still getting bugs on some samples, like this:

before running the script, I added loop points in the original sample, beat synced it and pressed the ‘T’ button plus enabled autoseek (had the complete sample ‘selected’ in the sample as well → ctrl+a → I think this is the culprit).

Wow thanks for this, you can’t imagine how much you just improved Renoise for me!
Here’s a quick patch I made from my modular, it took less than 5 minutes.
http://dl.dropbox.com/u/9603384/Filter%20bass%201.xrni

Still some work to do…

That is indeed the cuplrit. I understand what somehow happens:
I ask the frame amount of each slice, but when you do a selection in the main sample, suddenly the returned sample_buffer.selection_end for the last slices are based upon the actual selected range in the main sample.
You get also problems when you do narrow selections somewhere in the main sample (at least when i circumvented the issue, i got empty sampleslots in the target instrument).
What i do for now to solve it is simply take care the whole first sample is selected and neglect the returned frames higher than the highest available frame in the slice. (I cut off the copy process)
I think this has to be fixed somehow in the Lua engine or wherever Renoise fetches its selected sample buffer from, or i should use a different method to copy the slice contents, though i have tried basing it on the amount of frames but that doesn’t go swell in some cases either.

The fixed version is again updated in the first post, as well as a progress meter has been added and an idle routine so Renoise won’t bug you with unresponsiveness messages every ten seconds.

Happy bughunting.

This is magnificent.

The new autoslicing plus this is so fricking amazing I’m like, hyperventilating.

i am getting an error when i want to intall the V0.5:

2029 tool_error.png

[quote=“ripley, post:10, topic:32474”]
i am getting an error when i want to intall the V0.5:

2029 tool_error.png

Can you try V0.6?

vV:

People are talking about this in the comments here, as well.

perfect :wub:

no it’s not perfect :( and i don’t understand what’s wrong with my Renoise. when i dragged the V0.6 to Renoise it worked well, but when i close and start up again i receive this error message all the time (see picture). the same is happening with Joels “Play Song From Marker” tool.

i also noticed that the coloured bars at the top of each track are missing in my renoise, i don’t know if this is intentional in 2.7.0.

i completely deinstalled and reinstalled renoise, still the same errors…

The track colours can be enabled in the context menu of the pattern editor (Rightclick → “Show track colors” on bottom), you might perhaps have toggled it off unawarely.
Try 0.7. The object error is a dumb mistake on our side.
If it happens again:“Reload all tools” in the tools menu should temporary fix it but we simply have to take care that we reinitialize an object alias when the script is again executed for processing.

If that works out then we’re slowly getting to the tools page release.

Uploaded the wrong V0.7 (had only the shortcut problems fixed) reuploaded the 0.7 which doesn’t wine about about unfetchable objects.

edit / works now, re-installed the new 0.7 :)

now i can say it really works perfect :)