BPM Nudge Buttons

BPM Nudge Buttons to temporarily speed Renoise up and down (while the buttons are pressed) like in Ableton, next to the BPM field, would be handy to manually sync up two copies of Renoise or to another audio signal.

1 Like

wow, i can see two renoise instances as two turntables with this topic you’ve started. Interesting!

1 Like

yeah, that’s the idea, would allow you do sync up two tracks at the same bpm without having to hit start and stop like on a turntable.

1 Like

seems that this should solve your question? or not?
but seems like it only can be mapped to midi (since i cannot find those options in the key bindings in preferences)? please correct me if otherwise

PoC: Simple tool code to nudge BPM up.


TOOL_NAME = "BPMnudge"

-- Reload the script whendever this file is saved. 

local function clamp_value(value, min_value, max_value)
  return math.min(max_value, math.max(value, min_value))

 function nudge_bpm_up()
   local s = renoise.song()
local bpm = s.transport.bpm 
s.transport.bpm = clamp_value(bpm+1, 32, 999)

renoise.tool():add_menu_entry {
  name = "--- Main Menu:Tools:Neurogami " .. TOOL_NAME .. ": Foo " .. TOOL_NAME .. "  ..",
  invoke = nudge_bpm_up

renoise.tool():add_keybinding {
  name = "Global:Tools:Neurogami " .. TOOL_NAME .. " Nudge BPM up ..",
  invoke = nudge_bpm_up

com.neurogami.BPMnudge.xrnx (912 Bytes)

Actual tool. Has keyboard handlers for nudging BPM up or down by 1.

Disclaimer: Works for James ™ : )


wow thanks for that James! It’s not exactly what I meant, BPM Nudge Buttons would work by speeding or slowing down the BPM a bit while the key is down, but would return to the BPM Value to the original tempo when the key/button is released. A bit like putting your hand on a vinyl platter to temporarily slow a vinyl down to line it’s beat grid up to another record that’s playing at the same speed. Still useful though! So Thanks

if you have midi, you can map your midi to bpm value, so you can use that instead of keyboard, i think it would feel more slick than pressing button? or you strictly want keyboard button for that?
buy some midi controller with only 1 knob for that and use it exclusively

I mainly wanted to show some basic code, especially how to allow for custom tools to be available for keyboard mapping. For anyone wanting to write a more elaborate tool.

I don’t know how to manage “key held” in a custom tool. But now I’m curious : )

1 Like

This is perfectly possible through a tool. It could even be customizable (more accelerated or less). It is even possible to do the same with LPB.

The button has the pressed and released. It is necessary to take advantage of both (it would even work with MIDI input, or an alphanumeric keyboard command).

It is only necessary to play a little with some timers to achieve it. While pressed, a certain timer will do something. When you release the key, the timer will stop and the initial value previously saved will be restored.

I have never tried this, but in theory, you should be able to have 2 instances of the tool, each invoked from each Renoise instance.

Just to be clear about the concept. Does anyone have a video of Ableton using those buttons?