I had a quick look at the API (it’s really nice!), and I have built a prototype of the GUI I have in mind:
3057
Note: this only the interface, it doesn’t do anything useful at the moment.
Basically you would select a track and a cursor position in the pattern editor, and then click one of the shapes in the tool window to insert one slice of data in the automation envelope. You can customize the length of the slice, and the min and max value. There would be also a tool to modify the current slice, similar to the “modify vol/pan/delay” option of the pattern editor. Finally, instead of working with the cursor, an alternative mode would use the current selection.
gui looks good! Good luck with the coding part, might find some inspiration in Dblue’s ‘automation from notes script’? ( New Tool (2.7): Automation From Notes )
I just realized I completely forgot to announce Automasher in this thread, where the idea originated… I feel bad about that.
Harold, the first version of my tool was working in a way very similar to your own implementation. It evolved in something more general, with many feature requests leaning toward longer curves, very different from the concept used in Massive. I had the intention to add another tool with a step sequencer interface to fulfill the initial goal, unfortunately at the moment I don’t have much time to implement it.
This is another awesome automation tool, whys it not in the XRNX Tool Announcements & Discussion Forum?
FR:
Would be nice to see a few more shapes mainly ramp and inverted versions.
A Base (lower point) slider next to attenuation.
Maybe X2 & %2 buttons to multiply the current step length.
Many Thanks!!
Got this bug but I don’t know why:
‘C:\Documents and Settings\Ian\Application Data\Renoise\V2.8.0\Scripts\Tools\com.harold.Automatron.xrnx\main.lua’ failed in one of its notifiers.
std::logic_error: ‘invalid line_index index ‘0’. valid values are (1 to 96).’
stack traceback:
[C]: ?
[C]: in function ‘__newindex’
[string “do…”]:22: in function <[string “do…”]:11>
main.lua:86: in function ‘insert’
main.lua:145: in function main.lua:145
If the tool gets a bit more developed I’ll consider making a tool page and starting a thread in the other forum.
What do you mean by ‘ramps and inverted version’ shapes? I’d be happy to add more shapes. What kinds would be the most useful?
Replacing attenuation by floor/ceiling sounds good. I’ll do this eventually.
The step length can easily be set with the normal Renoise shortcut of ctrl-(1…8). Also, What do you mean by “%2”?
Djeroek:
Thanks for this legit bug report, future versions won’t have this problem.
The pattern editor lists the line numbers as 0…127, but in Lua they’re 1…128. Crazyness! 1-based indexes are all the rage in Lua though, so I’m not too surprised.
Just such a handy little tool as it is, you may also get more feedback there.
Like the curves in Automasher, a upside down version of the arch and sine maybe.
by X2 & %2 I meant half or double the step length with buttons, with ctrl-(1…8) you cant change from lets say 8-> 16-> 32 ->64 steps very quickly, just an idea.
One more request:
buttons to jump to the start and skip through the automation by the step lenght [|<] [<<] [>>]. I know you could use F9 to jump to the start ect… but losing keyboard focus when clicking a shape is making my hair fall out.
Think I’ve read somewhere on this forum about lua code shissles that pass through Renoise keyboard shortcuts while a tool is on the foreground. Think I’ve found it, not sure though this fixes the focus thing as it is about undo:
Not sure if this is a bug but I can’t get the /4 and /2 time divisions to work, the edit step, *2 and *4 all work fine.
Also is there any way of getting this tool to draw the automation into the LFO devices and Instrument envelopes/Lfo’s? At the moment I am copying and pasting.
All the time divisions are working fine for me. I have to admit I was skeptical that this would be as useful as the Massive performer, but it’s proven to be even more powerful, especially since you’re not limited to the single 16 step pattern that massive has.
edit: Okay you may be right, I’m not sure if this is a bug or it’s just the fact that I’m working at 4LPB on this track, but when I try and /2 with a step setting of 3 to get 1.5 it’s not working. It appears to give me a length of 2 instead. I still need to check if this works at a higher LPB setting though.
I love you all. Your encouragement feels really good!
A few thoughts as I sit down to kick out version 4…
Dunks:
The keyboard thing is killing me too. The current Lua API is somewhat limited in this respect, but I’m going to try and build in some keyboard handling. We’ll see how it goes.
Djeroek:
Thanks for that code snippet, it’s a partial (but not full) solution to the problem.
fathand:
Regarding LFOs, agreed that something similar would be useful for drawing custom LFO shapes… I think the hardest part would be for the script to know exactly where to shove the data. How would you imagine choosing (gui-wise) the destination for the shapes?
The edit step divisors depend on your edit step being bigger than one line. Moreover, read next comment…
esp81:
Currently, the start and length of drawing a shape is quantized to whole lines. I’d like to eventually address this, specifically for doing triplets, quintuplets, and other odd timey things.