New Tool (3.3): Loop Marker Automation - v1.01

IMPORTANT

  • Requires Renoise 3.3.0 or above
  • There is a device in the FX Chain named, ‘DON’T CHANGE/AUTOMATE’. So don’t… or you’ll get errors and the tool could break.
  • If you delete things in an instrument that are used by this tool and the warning tells you to undo this immediately, it’s not kidding. If you don’t then you may get errors and the tool might stop working.


> Download Loop Marker Automation


This tool allows you to change how a sample is being looped by controlling the movement of two slice markers. Loop playback responds to both start and end marker movement.

Press the ‘Set Markers’ button and the tool will install the following things into an instrument: a set of repeating phrases, a new fx chain with four devices, and two slice markers at the Origin points (you can change these before hitting the button). Either the tool GUI or the FX Chain can be used to alter the various parameters and they will update each other to any changes made.

Note that the markers will stay at least one sample apart and cannot pass each other.


lma-gui

  • Pad Reset - The same as on a regular XY Pad, this will cause the values to move back to the center when the mouse button is released.
  • Interaction - Changes how the markers can interact when moved. These effects do not apply when changing Origin, Range1 or Slice Size.
    • Normal: No special marker interactions.
    • Push: At Min Slice Size, moving a marker toward the other will push it.
    • Follow: Moving a marker will cause the other to follow.
    • Follow & Shrink: As Follow, but with a marker at Range limit or sample edge, moving the other toward it will shrink Slice Size.
  • Snap - Snaps marker movement to selected points on the waveform. Does not apply when changing Origin or Range.1 Disables ‘Interaction’.
    • Similar Value: Volume level matching other marker, within Tolerance. Applies to both stereo channels.
    • 0 Crossing: Volume level of 0, within Tolerance. Applies to both stereo channels.
    • Hex Point: Nearest 256th fraction of the waveform (same as ruler’s ‘0S Effect’).
    • Beat: Selected beat fraction, according to current BPM.

  • Origin - The point on the waveform that the marker will move out from. Activating ‘Set Markers’ again will set the current marker positions as the new Origin points.
  • Range - How far the slice marker can move to either side of its Origin point. This affects the resolution of the sliders/XY Pad used to move the marker.
  • Sliders, Offset & Position - The slider controls the Offset (how far the marker is from its Origin). The Position value can be changed to move a marker to an exact sample position on the waveform.

  • Set Markers - Initially sets up the instrument for use by the tool and places markers on the Origin points. Pressing again will set the current marker positions as new the Origin points.
  • Slice Size - The amount of samples between the two markers.
  • Min Slice Size - The minimum distance from each other that markers will move to.
  • Slice Anchor - The anchor point used when changing the Slice Size value.

  • Instr. Link - Links the tool GUI with the Instrument Selector so that changing one will change the other. Disabling this will allow you to work on one instrument in Renoise while controlling another with the tool GUI.

1 - If the Origin is changed and this would mean that the marker position is now outside of the available Range then the marker is moved. The same thing happens if the Range is reduced and the marker would be outside of the new Range value.


lma-othercontrols

  • Set Markers
    • Activated by raising to 100%. Since it’s not a toggle you’ll need to lower and raise it again to reactivate.
  • Interaction
    • 00 - <25 = Normal
    • 25 - <50 = Push
    • 50 - <75 = Follow
    • 75 - 100 = Follow + Shrink
  • Slice Anchor
    • 00 - <33 = Left
    • 33 - <66 = Center
    • 66 - 100 = Right
  • Snap
    • 0 = Off
    • 1 = Similar Value
    • 2 = 0 Crossing
    • 3 = Hex Point
    • 4 - 12 = Beat Fractions
18 Likes

Error with selecting “Auto Reset” after getting all the LFOs hooked up to each parameter

unknown property or function ‘__sub’ for an object of type ‘ValueField’
stack traceback:
[C]: in function ‘_error’
[string “do…”]:48: in function <[string “do…”]:35>
[C]: ?
main.lua:592: in function ‘move_markers’
main.lua:745: in function main.lua:741
[C]: ?
[C]: in function ‘__newindex’
[string “do…”]:22: in function <[string “do…”]:9>
main.lua:977: in function main.lua:975


Tried to add a slice marker while running Rx Markers, was warned that Rx Markers can only have it’s 2 slice markers, then received this error:

std::logic_error: ‘ViewBuilder: invalid value for valuebox: ‘0’. value must be [1 - 264600].’
stack traceback:
[C]: ?
[C]: in function ‘__newindex’
[string “do…”]:22: in function <[string “do…”]:9>
main.lua:604: in function ‘move_markers’
main.lua:339: in function main.lua:330


Quit Renoise and re-opened file, received this error message:

std::logic_error: ‘ViewBuilder: invalid value for valuebox: ‘-31046’. value must be [1 - 264600].’
stack traceback:
[C]: ?
[C]: in function ‘__newindex’
[string “do…”]:22: in function <[string “do…”]:9>
main.lua:604: in function ‘move_markers’
main.lua:339: in function main.lua:330


Added 2 LFOs to 2 Hydra to control Start/End Origins and Start/End Range using the ‘Random’ LFO shape - an attempt to emulate some of the Max/MSP examples I’ve shown throughout the forum. Was sooooooo close, then the error popped up.

std::logic_error: ‘ViewBuilder: invalid value for valuebox: ‘1.30658e+06’. value must be [1 - 1.30658e+06].’
stack traceback:
[C]: ?
[C]: in function ‘__newindex’
[string “do…”]:22: in function <[string “do…”]:9>
main.lua:647: in function ‘update_s’
main.lua:602: in function ‘move_markers’
main.lua:354: in function main.lua:354

Hello? :slight_smile: Nothin’? I am so loving the possibility of this tool - hope it gets updated again!

I got a similar error to what Neuro reported above, except it was triggered for me when I had both “Auto Reset” and “Follow Mode” enabled and tried to move the cursor on the X/Y pad.

‘/home/me/.renoise/V3.2.2/Scripts/Tools/com.duncanhemingway.RxMarkers.xrnx/main.lua’ failed in one of its notifiers.
Please contact the author (Achenar) for assistance…
unknown property or function ‘__sub’ for an object of type ‘ValueField’
stack traceback:
[C]: in function ‘_error’
[string “do…”]:48: in function <[string “do…”]:35>
[C]: ?
main.lua:592: in function ‘move_markers’
main.lua:745: in function main.lua:741

1 Like

v0.11

  • Fixed: Error with Auto Reset & Follow Mode enabled.
  • Fixed: User could place a new marker on top of an existing one.
  • Known Issue: Automating this tool’s XY Pad or Doofer device with an LFO or Formula can generate an error when loading a song or instrument.

The bottom two errors reported by Neuro are most likely due to this final issue. The LFO/Formula runs automatically when loading and overrides the values that were saved. This happens before the tool can execute and so the startup calculations can generate errors when the values are out of bounds.

Fixing this ties into other planned improvements for the tool and it’s a big task. Since I’m focusing more on other projects atm this won’t happen soon.

3 Likes

Thank you!

1 Like

Always wanted a tool like this ! I was using Reaktor for this kind of thing.
Thank you !

1 Like

See? @Achenar! You made a tool that a lot of people love/need :smiley: even though many don’t know it yet - the ability to manipulate samples like this is so important.

Please understand that I am being complimentary. @Raul and you are “in tune” with folks who want to do more in Renoise, and we LOVE IT!

2 Likes

I am having sooooooo much fun with this!

My workflow:

  • Load up a lengthy, complex sample

  • Start it playing in the pattern editor

  • Pop on a few standard effects like chorus, delay, and reverb

  • Fire up Rx Markers

  • Map its various knobs and sliders in the instrument’s effects chain to my external midi interface

  • Go to town randomly spinning knobs to make instant glitchy, drony goodness.

Achenar, you’ve done an outstanding job.

I just can’t stop playing with this… it’s so much fun!

Thank you!

3 Likes

hello,
I inadvertently used time-stretch on a sample that contained rx-marks.
Seems like error before.

‘/home/martin/.renoise/V3.2.2/Scripts/Tools/com.duncanhemingway.RxMarkers.xrnx/main.lua’ failed in one of its notifiers.
The notifier will be disabled to prevent further errors.
Please contact the author (Achenar) for assistance…
std::logic_error: ‘ViewBuilder: invalid value for valuefield: ‘198450’. value must be [0 - 105664].’
stack traceback:
[C]: ?
[C]: in function ‘__newindex’
[string “do…”]:22: in function <[string “do…”]:9>
main.lua:701: in function ‘update_e’
main.lua:607: in function ‘move_markers’
main.lua:405: in function main.lua:399

Time-stretch won’t have any effect here. Not sure how you’re getting a value out of bounds; need more details.

Truly some really amazing stuff. This makes Renoise feel a lot more like Ableton’s sampler. This is exactly what I was looking for, for a while. Thanks for your hard work, and cool idea :). I’ll post some songs I make with this!

Reminds me a lot of like this tool, something I always wanted. :slight_smile:

1 Like

@Achenar any news on this bad-boy of a plugin? With this and @Raul’s revision of SMC (when that happens), we’ll have some amazing tools. Another set of Max/MSP tools I used waaaaaaaaaay back were all made by Twerk (Shawn Hatfield). Look at these! The Rx Markers/SMC Tools work in very similar to these. So excited!

img-1
img

I’m imagining very small samples being granulated, basically. All the fun things that can be done. Microsound heaven. Wheeeeee!

4 Likes

Strange timing indeed… I can no longer get this to crash anymore, let me know if you still can.

v0.2

  • ‘Set Markers’ will apply to the selected sample instead of defaulting to the first.
  • Tool will no longer be confused if the user names other fx chains ‘Rx Markers’.
  • Fixed: LFO/Formula automation of XY Pad/Doofer can cause error on instrument selection change and song/instrument load.
2 Likes

Nope, no errors to report as of yet - ground the living hell out of a noise sample - no errors at all

1 Like

@Achenar - Now, here’s a something I was hoping the tool does, and it is capable.

I watched the video and noticed that throughout the entire clip that there is a short buzzing sound going on. I was so worried that that is the only sound this device makes. Taking a look at the Phrases section, I noticed that the ‘Rx’ commands were set in the first column next to the note.

That buzzing sound really limited the usage of the tool, and this is where my worry was from. Being the curious tool explorer, I found that the end-user can ALSO use the 0RXX column.

WHEW!!!

This is the tool function I was looking for.

  1. Adjustable loop size
  2. Ability to start the playback from wherever the loop window begins (not just at zero/sample start)
  3. Ability to adjust the start/end/playhead positions via LFO

Here’s a video!

2 Likes

Aha! @Achenar, I crashed it again -

Screen Shot 2020-09-03 at 8.22.30 AM

Using LFO Automation on both the Start and End Origins, then moving the 2nd slice marker by hand.

And another crash by LFO:

Random LFOs on

Start Origin
Start Range
End Range

Screen Shot 2020-09-03 at 8.29.31 AM

0.21

  • Code improvements.
  • Removed ability to ‘Set Markers’ on a sample other than the first.*
  • Fixed: Potential 100% Start Origin value when automating it and Start Range/Position simultaneously.

* This didn't work quite right and would require ridiculous management of notifiers to properly do what is a very minor thing for this tool. With access to an instrument's 'selected sample' this could be implemented quickly and easily.


I’ve a good idea why this happens but it’s not something that can be fixed right away.

3 Likes

Doing some heavy beta-testing and a remix today, but will try to fiddle around with it soon!

2 Likes

@Achenar curious to know if there’s a way to get the playhead to do this to the samples using Rx Markers?

You’ll see the playheads moving forwards or backwards or randomly, but they are also accompanied by start/end points that move forward and backwards. I think this might be possible, but my brain just isn’t cutting the mustard today.