Massive-Style Performer For Automation Window.

It would be good if the automation window had a performer like on Native Instruments Massive.

Imagine the headache trying to manually input this in the automation window:

could be nice :yeah:

Massive is really specialized though and not very suitable for all needs. Imo it would be preferable if renoise is kept versitile and doesn’t over specialize. A tool to make massive style automation however is definitely a good idea; an auto automator.

I haven’t used massive, what’s special about this? You can select a block and generate an lfo waveform within it?

I haven’t used Massive either, but I’d be higlhy interested in a way to generate complex automation shapes.

After a quick look at the Lua API, it seems possible to write a tool for this, though the UI part may be challenging (e.g. I don’t see any way to access the current selection in the automation frame).

It occurs to me that this could be done as an external ‘tool’, possibly a web page.

The gui could be whatever (we could start with something like the massive performer window) and the page could generate XML clipboard data that could be pasted into the automation editor.

I mean look at this. It should be easy to generate stuff like this:

<?xml version="1.0" encoding="UTF-8"?>  
<envelopeselectioncontent doc_version="0"><br>
  <points><br>
    <point>0,0.621951222</point><br>
    <point>3474,0.621951222</point><br>
    <point>10607,0.48780489</point><br>
    <point>19282,0.707945764</point><br>
    <point>32767,0.707945764</point><br>
  </points><br>
  <rangelength>32768</rangelength><br>
</envelopeselectioncontent>  

XML clipboard data is so genius.

-Harold

Ok.

I did this.

What I’ve got is just a realllllly simple proof of concept. But it works.

You can try it out here:
http://danceliquid.com/RenoiseAutomation/

Click to select between the shapes at the top. Then click in the main editor to insert the shapes.

When you’re ready, select all and copy the text from the textarea, then in Renoise right click on the automation editor and paste.

It’s obvious that this can be improved, but the basics are there. If you’re the type of hero who likes to work on this kind of stuff, fork me on github, make it awesome, and then send a pull request:

That’s all for now.

Take care,
-Harold

Nice idea!

(I couldn’t make it work with Firefox/linux; worked great with Chrome)

I think that a lua tool would better fit my workflow, since I need to experiment a lot to find what sounds correctly.

It occured to me that I could use the cursor position in the pattern editor to select a “slice”, and just have some buttons/shortcuts to write the automation data and scale it. I’ll probably try it when more familiarized with Renoise and its API.

Whoa. Neato. Interested in turning this into a tool like drakmaniso said?

It’s not clear to me how the tool would work. I think an important part of the massive performer window is the way the gui works. A tool that made inserting shapes into the automation editor easy sounds neat, but I’m just not exactly sure how it would work.

Maybe someone more familiar with the massive performer could chime in and talk about which parts are most important, and what makes it cool, etc…

In the mean time, I have a few ideas on how the web tool could be improved. When I have time I will make updates to it.

-Harold

any app or tool that can manipulate or generate automation envelopes gets a +1 here, a way to separate the processing on even and uneven steps would be a great thing to have for example, or a way to gradually change an existing automation envelope through multiplying it with / addition or subtraction of another envelope.

This sounds cool. Can you elaborate?

Do you mean “zero-ing” an existing envelope in a periodic way?

-Harold

Lets say, I have this shape in the automation editor…

3052 envel 1.jpg

through control over even, uneven points, something like this could be achieved more easily:

Attachment 3053 not found.

What I have in mind is this:

  • use the cursor position in the pattern editor as a start point;
  • in the tool window, let the user select the length (in lines) of the slice (e.g. 2 lines, 1 beat, 2 beats);
  • in the tool window, there is a button for each shape (half sine, saw, pulse…); when clicked, they enter the corresponding shape in the current automation frame, starting at the cursor position, and with the length selected above
  • in the tool window, there is buttons to increase/decrease the top and the bottom of the shape, to flip it vertically and horizontally, and so on.

Obviously the UI is not as nice as your web tool, but the advantage is that you can quickly replace a slice with a different shape, until you find the one you want. Different workflows, and they probably complete each other.

I’ll try to implement it, but since I’m new to renoise this may take a while.

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 automasher-prototype.png
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.

Now start the hard part, the actual code… :)

I didn’t know you could do buttons with images. Very cool. Looking forward to trying it out when it lives.

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 )

omg epic! looking forward! B)

Ok, made a first cut at a Renoise tool version tonight. It’s real minimal.

Instructions:

  1. Install the attached.
  2. Add a hydra
  3. Bring the automation tab to the front
  4. Select the ‘input’ parameter on the hydra
  5. Set your edit step to something nice, like 4 (ctrl-4)
  6. Tools > automatron…
  7. Select a shape (square, ramp, tri, vee)
  8. Insert, insert, insert.

–> It respects the cursor position in the pattern editor, and scales the shape to fill your current edit step. Fun stuff.

Optional steps:

Peace,
-Harold

haha. Was working on this a bit more today. But the work’s already done:

I <3 Renoise being extensible by users. Mad props to all.

-Harold