New tool (3.1): VoiceRunner

Lol nice Logo :guitar:

Pimped it some more. Drop shadow and a cool background can do wonders

splash-big2.png

Hi Danoise!

I have not had much time to thoroughly test this tool. But I greatly appreciate the dedicated effort.Programming these things costs a lot of time and patience, and sometimes is undervalued.We are very lucky to have you in the community.

Thank you very much!

Congratulations for the icon of VoiceRunner. Is simillary to Doctor Strange, superhero and magician! :slight_smile:

I have not had much time to thoroughly test this tool. But I greatly appreciate the dedicated effort.

Thanks! It does a lot of the things that you’ve requested - would be interesting to see if you can break it :slight_smile:

The biggest limitation is that it doesn’t care about open voices that cross over from pattern to pattern. This would not be insanely hard to support, but I want the foundation to be solid before adding such a “luxury feature”. Also, it only sorts within the context of a single track, so you can’t currently use it to split notes into separate tracks.

This is great! Thanks daNoise :smiley:

Drop shadow and a cool background can do wonders

We sure can.

I just found a very obvious bug:

Pressing a key while the dialog is open causes an error. So just use the mouse for now…

HI Bjorn

I get this error when using the context menu shortcuts:

8017 voicerunner error.png

cheers

edit: on selecting the Adjust Settings item which opens the dialog, then closing it, the context menu items seem to function without error. Could it be that instantiating the dialog kicks it into memory or finishes the connection?

Thanks. Will check :slight_smile:

I get this error when using the context menu shortcuts:

Wow, I totally forgot about this bug - it’s still there. Will release a fix ASAP.

Still I have encountered another bug when the dialog presents you with inablity to reate more then 12 tracks .

I have only used 12 notes , this doesn’ always happen

ANother bug , see above but then 2 collumns are created for the same note …could be related to first bug .

Still I have encountered another bug when the dialog presents you with inablity to reate more then 12 tracks .

Yes, that would be this one, right?

https://github.com/renoise/xrnx/issues/144

then 2 collumns are created for the same note

OK, I need more help here.

Would be great if you could provide a snippet of pattern data. Just copy paste, and put in [spoiler] tags.

Then I can add this to my VoiceRunner test song as well (yep, I’ve created such a thing…)

[details=“Click to view contents”]<?xml version="1.0" encoding="UTF-8"?>
<patternclipboard.blockbuffer doc_version=“0”>











D#4
02
50







OFF











D#4
02
60







OFF







D#4
02
6E







OFF







D#4
02
7F







OFF











D#4
02
68







OFF











D#4
02
58







OFF















D#4
02
47







OFF







D#4
02
50







OFF







D#4
02
61






OFF








D#4
02
6F






OFF






OFF















D#4
02
41







OFF







D#4
02
48







OFF











D#4
02
5B







OFF











D#4
02
63









OFF









D#4
02
7C







OFF











D#4
02
67







OFF











D#4
02
53







OFF











D#4
02
49







OFF





NoteColumn
true true true false false false false false






C-3
02
56









OFF







D-3
02
56







OFF









C-3
02
56







OFF









C-3
02
56







D-3
02
56







OFF







C#3
02
56









D-3
02
56







OFF







C-3
02
56









OFF







D-3
02
56







OFF









C-3
02
56







OFF











C-3
02
56







OFF











D-3
02
56






OFF








C-3
02
56







OFF









D-3
02
56







OFF









C#3
02
56






OFF








C#3
02
56






OFF






C#3
02
56







D-3
02
56







OFF







C#3
02
56







OFF







C-3
02
56







OFF







C-3
02
56







OFF











D-3
02
56






OFF








C-3
02
56







OFF









C#3
02
56







D-3
02
56







OFF







E-3
02
56









OFF







NoteColumn
true true true false false false false false


































































































































C-3
02
56






OFF






NoteColumn
true true true false false false false false






F#3
02
56







G#3
02
56







OFF









F#3
02
56






OFF






G#3
02
56







A#3
02
56









OFF







G#3
02
56







OFF







G#3
02
56







OFF







G#3
02
56









OFF







G#3
02
56







F#3
02
56






OFF






G#3
02
56







OFF







G#3
02
56







OFF







F#3
02
56






OFF






G#3
02
56







F#3
02
56






OFF






G#3
02
56









OFF











G#3
02
56






OFF






F#3
02
56







OFF









F#3
02
56







OFF







G#3
02
56









F#3
02
56







G#3
02
56







F#3
02
56







G#3
02
56







F#3
02
56






OFF






A#3
02
56









OFF











F#3
02
56






OFF






G#3
02
56






OFF








A#3
02
56















G#3
02
56







F#3
02
56







OFF









A#3
02
56









G#3
02
56







NoteColumn
true true true false false false false false










A#3
02
56









OFF













F#3
02
56







OFF







F#3
02
56






OFF




































F#3
02
56






OFF






A#3
02
56









OFF





































G#3
02
56







OFF





























G#3
02
56







OFF













NoteColumn
true true true false false false false false




































































OFF





































































OFF





NoteColumn
true true true false false false false false



</patternclipboard.blockbuffer>
[/details]

If it sounds a bit random , that’s because it’s a rhytm :wink:

There are only 8 different notes used , but some are a octave higher ( drumset ride ) .
Maybe that’s the reason why voicerunner thinks there are more then 12 notes

even happens with only 2 notes

[details=“Click to view contents”]<?xml version="1.0" encoding="UTF-8"?>
<patternclipboard.blockbuffer doc_version=“0”>







C-3
02
4A







OFF









D-3
02
4A







OFF









C-3
02
4A







OFF











C-3
02
4A












OFF






D-3
02
4A







OFF







C-3
02
4A









OFF







D-3
02
4A







OFF









C-3
02
4A







OFF







C-3
02
4A







OFF







E-3
02
4A






OFF






D-3
02
4A






OFF






D-3
02
4A







OFF







C-3
02
4A







E-3
02
4A







D-3
02
4A







OFF









C-3
02
4A







OFF









D-3
02
4A







OFF









E-3
02
4A







C-3
02
4A









E-3
02
4A







OFF







D-3
02
4A







OFF







C-3
02
4A







OFF









D-3
02
4A







OFF









C-3
02
4A







OFF







E-3
02
4A







D-3
02
4A







E-3
02
4A









OFF









D-3
02
4A







E-3
02
4A





NoteColumn
true true true false false false false false






























































































































C-3
02
4A









OFF







NoteColumn
true true true false false false false false



</patternclipboard.blockbuffer>[/details]
Can’t find the spoiler allert button … :frowning:

Aha …think I found what the problem is .

ONe track was already processed by voice runner (9 note columns ) , then when applying voice runner for the second track ( with only 2 notes ) it refused to do so because ‘WHOLE pattern’ was selected .

Seems like a bug .

THe not enough notes dialog appears after sorting

Thanks!

Yes, so it seems that it all comes down to the broken “too many notes” dialog.
If this was working, processing should continue after you’ve picked which notes to keep. But it just stops there.

VoiceRunner v1.03 can be fetched from the tools page:

https://www.renoise.com/tools/voicerunner

Changelog:

- Fixed #144: "too many columns" dialog does not sort notes bug
- Fixed #143: error when instantiating tool via context menu bug

Sweeeeet thanks @danoise

Hey

I can’t seem to get the Create note offs or close open notes working.

To that end I did some digging around to find the methods for handling that but couldn’t seem to find them - my environment for Lua is not really setup properly with debugging, but lots of call stack tracing didn’t reveal anything (at least in my first attempts!).

Has this been implemented yet? If so, what do I need to do to make it work?

Cheers

I get an error running this tool Selecting a load of notes in a pattern and clicking “SORT NOTES - SELECTION IN PATTERN”

Users/*******/Library/Preferences/Renoise/V3.1.1/Scripts/Tools/com.renoise.VoiceRunner.xrnx/’ failed to execute in one of its menu entry functions.

Please contact the author (danoise [bjorn.nesby@gmail.com]) for assistance…

./source/xLib/classes/xVoiceSorter.lua:445: attempt to compare number with nil

stack traceback:

./source/xLib/classes/xVoiceSorter.lua:445: in function ‘do_mark_column’

./source/xLib/classes/xVoiceSorter.lua:505: in function ‘find_note_column’

./source/xLib/classes/xVoiceSorter.lua:379: in function ‘sort_by_note’

./source/xLib/classes/xVoiceSorter.lua:208: in function ‘sort’

./source/VR.lua:422: in function <./source/VR.lua:373>

(tail call): ?

./source/VR.lua:325: in function ‘do_sort’

main.lua:125: in function main.lua:124

Hi danoise,

first of all, midi import in Renoise still seems to be a bit messy. I am trying to import drum sequences from Avenger midi export. Some notes then have a “C1” in the panning column, no idea what it is for (fast notecut?), but this is not in the original sequence AFAIK (these are drums, so no noteoff/cut at all). Then I find note-offs in the import, too. Those note-offs also seem to be not related to the note. And the notes are totally mixed up.

Ok, now regarding your great tool, it seems like voicerunner detects a C-4 and a C-4 C1 (with anC1 in the panning column) as two different notes (if I am trying to split). I am doing something wrong here? Because this makes no sense at all, if I simply want to sort by note.