Record Midi Note-Off In Step-By-Step Mode

Hey there, new here, trying out Renoise.

One of the first things I wanted to try was step-by-step recording (aka just “step recording”).

To start with I’m using a MIDI keyboard. Was glad it was pretty easy to enable this … but to my dismay it didn’t record note-offs, which had to be entered manually with caps lock. To make it worse, you only can create one note-off at a time, which sucks if you are recording chords.

It’s amazing to me the devs didn’t think of this. Just have it write note-offs in the next row or, if you tap the down key, at whichever row the current row is at, and for ALL the keys you had pressed. Shouldn’t have to do this manually. It’s annoying because if you forget you have to go back and add them in or you get “stuck” notes. Bleh.

Apologies if there is some way of enabling this or some plugin of some kind - but I think it should be the default anyway.

Edit: Found “smart line note off”. Guess this is a little better but my suggestion would make things nicer.

Of course we’ve thought about this before.

When you’re recording in real-time, it’s completely trivial to determine that a note on event occurred at line X, while a note off event occurred at line Y, and so on.

But when you’re recording in step-by-step mode, there isn’t really a clear concept of time passing that we can work with. This makes it pretty much impossible to correctly predict where the note-offs should actually be inserted.

You argue that they should just go on the next line or something similar, but why should they go there? That’s not the behaviour I would personally expect all the time. I sure don’t want all my notes being recorded in a staccato fashion where they immediately get stopped one line later.

Maybe it could be based on your current edit step setting instead, so it’s a bit more flexible, but there are similar problems with that method also. You’d probably need to toggle this feature on and off during your workflow, while manually adjusting it to make sure it inserts note offs into kinda-sorta-maybe the right place, etc. In the end, we’d still get note offs being inserted into the wrong places, and there’d still be plenty of manual adjustment required. Wouldn’t it just be more annoying than useful if this were the case?

Which is better/worse: Having to manually add note offs where you do need them, or having to manually remove/tweak note offs where you don’t need them?

Yes, it sucks that this can’t be handled automatically at the moment, but there simply isn’t a completely correct answer here, and there will probably never be a perfect solution that works for everybody. For every time it works out quite ok, there will be other guys who are pissed off that it doesn’t work exactly the way they want.

We are of course open to suggestions here, but I just wanted to say this is not quite a simple problem to fix.

I had a PSR-510 keyboard ages ago that did it quite well. The way it worked was pretty intuitive. I’ll try to remember/work out exactly how it worked.

You enter step recording mode, and you have a “step” button that advances the step and creates ties or rests. When you press keys they are recorded (but the step is not advanced yet). If, when you press the step button, and notes are still held down, a note-off is not recorded at the next step, creating a 2-step tie, and so on. If you release ALL notes, that is the same as using the step button, however the current step will be a “note-off” until you either 1) press note keys (change to notes) or 2) press the step button (create a rest). If you press the step button again without keys down, it just advanced the step, creating a rest - at first 1 step, then longer if you repeatedly press it. If you release some note keys and press the step button, it will record note-offs for SOME of the notes.

In summary, the recording function waits until you either 1) lift all keys or 2) press the step record button to advance to the next step, recording note offs by default and “replacing” them with notes when you enter keys. It waits until you complete the chord you want to make for each step; each note played by you does NOT advance the step, but when you release all keys.

It could be an on-or-off proposition. No need for complex “when to insert note-offs?” options.

Ok, I see what you meant about the arrow keys now. I wouldn’t want this by default, but it could definitely be quite interesting as an alternate mode.

  • Press (and hold) some keys on the MIDI keyboard.
  • Manually move the pattern cursor to a new position with the arrow keys.
  • Release MIDI keys, and note offs will be inserted at this new point.

Feels slightly clunky as I practice what it might be like with my MIDI controller and arrow keys, and as I’ve said this definitely won’t be perfect for everyone, but I can still see how this could be useful :)

We’ll try to keep this in mind.

Yeah, you’ve mostly got it, but it won’t be as nice unless it also automatically steps forward when you release all the keys. Then doing normal arps can work exactly the same as it does now. Also, if the edit step is longer than one it should be aware of that, so you can quickly do quarter, half-note, whole-note etc pad chord progressions without having to press any navigation keys.

Believe me it will be very nice once you get used to it, as I recall it was a bit like simply playing a tune in slow motion, but you control the “metronome”. Would love to see this added in a point version soon.

Just bumping to second this suggestion - I think this form of step inputting would be really great. Actually, it’s something that I had hoped to find in Renoise! At the moment, I don’t think there’s any good way to step input with a midi keyboard, which is something I’d really like to be able to do. Thanks.

Best compromise would be: cursor skips editstep position after inserting notes on key-press, then insert noteoff on keyrelease at cursorposition and cursor jumps edit-step position again. This way, if you decide to move to another location with the cursor-key while holding the note(s) and release at the line where you navigated the cursor to, note-offs will be inserted there. (Including skipping to the next edit step position).

another solution would be a quantized fake real-time mode:

taking into consideration the current BPM and LPB values, Renoise could set the note-off basing on how long the key is pressed, as if the pattern was flowing (and of course also taking in consideration if the note has no new notes after it between the needed amount of lines)

…or a fixed time solution:

the longer you press the key, regardless of LPB and BPM, the longer the note will last, possibly with live preview (the note off and the delay value, if the related column is visible, will show the value at the right position while the user is keeping the key pressed)

You can rip out the transport play method that the Scalefinder is using to record note, because that behavior is pretty similar.