Vdrums + Midi + Renoise: Is Note-Off Behavior In Renoise A Limitation?

Simply put, is it possible to alter the behavior of a midi instrument so that when playing consecutive instances of the same note on the same pattern editor column, Renoise does not automatically infer a note-off when the next note triggers? It looks to me like NNA options only affect sample instruments, not midi instruments. So I don’t see any way to do this but I thought I’d ask because it’s a major problem for me.

I’m on OSX. Here’s my setup: I play a Roland Vdrum kit, the midi output coming from the Roland TD-4 module gets intercepted with a few different programs (midipipe, edrummapper) to alter the hi-hat behavior, then routed into a DAW so I can record the midi, then out to an external hardware sampler. The audio from the hardware sampler gets routed into my soundcard and back into the DAW.

All this works fine enough on another DAW I tried (Reaper), but for many unrelated reasons I like Renoise better. When I use Renoise for this purpose though, I get monophonic drums due to the way Renoise seems to generate note-offs (or at least I’m pretty sure this is what it’s doing). This sounds really bad on ride cymbals for example, because the cymbal sustain is cut off everytime you play a new note. Chord mode is on, it makes no difference whether I’m recording or not, and clicking the button to filter note offs in the preferences makes no difference either. Nothing that I’ve tried makes any difference.

So is it possible to adjust this behavior or work around it somehow? Or am I stuck using another DAW just for my Vdrums and Renoise for everything else?

Also, is this just a problem with using a midi instrument to trigger an external sampler - i.e., if I used a software sampler as a VST for my drums, would Renoise stop generating the note-offs?

Thanks in advance for any help!

What happens if you use two columns for the notes so that they’re overlapping?

You say it works in another DAW, so definitely isn’t a limitation of the hardware, yeah?

Thanks for your reply. It’s definitely not the hardware - if I close Renoise and open Reaper (each doing nothing but routing the midi from/to the same places), this problem goes away.

I tried adding a bunch of columns (with chord mode enabled of course), as you suggest, but it doesn’t seem to make any difference. When I’m hitting the same drum trigger consecutively, it’s the same midi note and Renoise doesn’t want to overlap them across 2 columns. It only seems to overlap if I hit a different pad, i.e. a different midi note. So if I’m playing a normal pattern on the ride cymbal, e.g., each note gets sequentially recorded within a single column - so every hit cuts off the earlier one and it sounds unnatural.

Of course if I manually typed in the midi notes so as to overlap columns, it would certainly work - but that would defeat the whole purpose of having drum triggers!

It seems to me that, for this situation, Renoise needs an option to control midi instrument NNA’s the way it already has for sample instruments. However I’m guessing this isn’t a particularly common request (though surely many people use drum pads of some type to play in beats?), and maybe it wouldn’t be as easy to implement as one might imagine? It just seems cumbersome to me to have to append a second DAW to my setup because of this.

This is what I mean. Chord Mode isn’t going to help much as you’re not playing notes at the same time (chords.) Although it may work if you stuck down the Shift key while playing…

What about a solution of a Script that would read the Notes in a single column track and space them out alternately into a two (or more) column track? But of a workaround but may help alleviate your problem.

I am also intending to use my V-drums with Renoise, but it never came to my mind that there might be problems, since this is a very common and straight forward midi setup.
But now that you mention it, it is true, a note always functions as a note off for the note before. We should be able to change this somewhere. This is not hard to implement, but was probably just overlooked (a pretty big oversight, though).

On the other hand, I am still unsure, I cannot imagine that this is not possible, it just sounds too common. Maybe someone with a deeper Renoise knowledge could clarify that?

fladd

have you tried disabling:
Edit => Preferences => MIDI => Record & Play filter => Note Off’s

i use drum triggers w/ superior 2.0 and cut up breaks(samples) in renoise and have no issues of note offs cutting my sounds. if you are triggering samples(as opposed to using a vst like superior or easy drummer) then be sure to turn the instrument volume envelope “on” and set your envelope accordingly. if your volume envelope is in the default mode when you trigger samples they will get a note off message, which will make your hits sound very staccato. also…be sure and set the sample (instrument settings->sample settings->NNA…drop down menu…set to “continue”). thats all i got.

what i need is for someone to implement or script me out the ability to “auto capture” multiple instruments within one track of one block. PLEASE!!! i will pay someone, or get them a nice bottle of scotch.

Read the thread Anti, he is talking specifically about MIDI and can work it with samples fine.

I think the problem here is the following:
When you play a C-4 followed by a second C-4 then the second C-4 will do two thing, first it will play another C-4, but it also functions as a note off for the first C-4, which it should not in the case of drums.

Actually, now that I come to think of it: This is something the VSTi or external sampler should handle, not Renoise! When I used Reaper and Shortcircuit, it was a setting of SC and not Reaper (if I remember correctly).
So can you check if your sampler can ignore note length information?

fladd

Yes, that’s exactly right. This is what I think we need an option to control for midi instruments, in the same way we can already control the NNA behavior of sample instruments.

Thanks for the suggestion - yes I did try this, but it doesn’t seem to change the problem - my guess is that it doesn’t affect the generation of note-offs in this particular situation. If someone could clarify what exactly this button does, that would be great. I checked the manual but didn’t find it very clear.

Even if this functionality did cause Renoise to filter all note-offs, that actually would create a different problem: the vdrums have a hi-hat pedal that functions by sending out midi CC corresponding to its position. When the pedal is closed, note-offs need to be sent to all the various open midi notes corresponding to the different variable states of openness. That’s part of what the edrummapper software does when it intercepts and translates the midi. So if Renoise filtered out those note-offs, the hi-hat wouldn’t work properly. The same thing for cymbal chokes (i.e. grabbing the edge of the cymbal to silence it), which also depend on note offs to work.

So really what I think is needed here is for Renoise to maintain the note-offs actually played, but not to insert additional note-offs that weren’t played, unless the user opts to tell Renoise to do that.

I agree with this in the above respect that I’d personally prefer Renoise to leave the incoming midi alone (i.e. just record it and pass it through) and not generate note-offs that weren’t there before. Then everything would be preserved for the user to manipulate in the sampler according to its particular settings. I think this is what other DAW’s are doing - not altering the midi data unless the user specifies that it be modified.

The sampler I’m using has adjustable volume envelopes for each voice. It’s certainly true that one could set the release envelope wide open, so the sampler would effectively ignore note-offs. BUT, as above, this wouldn’t actually be a good solution because the hi-hat pedal closure and cymbal chokes wouldn’t work. And although I’ve been using the ride cymbal as my example, playing a partially-open hi-hat creates the same unnaturalness. So while living without cymbal chokes might not be so bad, a hi-hat that either can’t be properly played with consecutive partially open notes or can’t be closed would be a dealbreaker for me.

Just to clarify, you’re successfully using SD2.0 as a VST in Renoise? So you can play notes on a cymbal without each note cutting off the prior one? If so that seems to mean Renoise doesn’t generate these note-offs when sending midi to a VST, as opposed to a midi instrument - can someone confirm this in general? I suppose this reduces the scope of the problem, if it only applies to hardware samplers / drum modules rather than software samplers and VSTs. Although it again raises the question of why midi instruments seem to be treated differently from both sample and software instruments, and why it can’t be controlled by the user. I guess people who use drum triggers and hardware are in the minority of Renoise users, but it would really be good if the program would accommodate it, especially if it’s a relatively trivial thing to implement (?).

That sounds like a good idea assuming that an NNA control for midi instruments can’t or won’t be implemented. I confess that I have no idea how to create scripts / tools.

Try this: In the Instrument Settings tab under MIDI Setting, try to set the duration from Inf to 1 ms or whatever, thus avoiding the overlapping of the notes. Then make your sampler ignore note length.

What are your settings in Reaper? You mentioned it works there? The only difference I can think of is that in Reaper you are actually creating very short notes (thus I suggested the 1 ms above) while in Renoise, the default for MIDI is infinitive note length and so the notes are overlapping. This might be the problem, so try the above and see if it works. I did not test it.

fladd

EDIT: Just read your post again and my suggestion would not work because of the hi-hat.
So it seems that Renoise is just not implementing the MIDI specification here properly. This for exapmple does not seem to be possible in Renoise: Play 15 C-4 notes, with n+1 starting 10ms later then n, each lasting 2 seconds.

Thanks again for your suggestion. I just tried again varying the duration in instrument settings, but it didn’t change the consecutive note-off behavior, it just reduced the maximum sustain of a single note. So for example, it controls how long the ride cymbal or open hat will ring for if I just hit it once. But the notes still cut each other off when played consecutively, it doesn’t seem to change the way Renoise injects note-offs.

I think you’re absolutely right about what the problem is. I wonder if this was programmed into Renoise for some reason intentionally, or if it’s just an oversight.

I think it’s more that Renoise has MIDI NNA set to Note Off with no available option to change it. Therefore any Note event will be preceded by a Note Off in the same column. What is needed is NNA options for ALL Instrument types.

As to Scripting, sorry I’ve not even had a chance to look into it myself. Spreading notes out should be very simple and if you were to make a request in the relevant forum I wouldn’t be surprised if it wasn’t fulfilled within a couple of days.

It surely boils down to adding NNA for MIDI, I agree. Sounds pretty straight forward, though. @Taktik: Could this be a possible Renoise 2.6.2?

fladd

You can try to adapt note-router, currently noterouter writes notes to dedicated tracks (not note-columns) but it at least splits your dedicated notes across different tracks. It has been around for some time.

https://code.google…NoteRouter.xrnx

So, does this work by now. Has this been implemented? Is the MIDI implementation correct now?

This should be possible by using the keyboard replacement in Duplex: a special option (Key-release) exists, which determine how to respond when the same key is triggered multiple times

Download the most recent beta to try it out (and don’t forget to enable the OSC server in Renoise first).