Huge Midi Oversight? --> Nna For Midi Out And Plugins Missing

Each column has 6 voices only. So its max 12*6 voices per track for samples max, but also only 6 per column.

Obviously I’m familiar with what you’re talking about, but the physics of sound itself doesn’t really apply to what is being said here. I was just trying to make a simple point about the note triggering behaviour, and how NNAs don’t really exist in the real world. It’s not the piano key string or the cymbal itself that’s generating the reverb, is it? It’s just an interesting phenomena that occurs from sound bouncing off surfaces in the room/space you’re playing in, and in some cases within the body of the instrument iself. This is really beside the point, though.

But of course I understood what you were getting at…

I totally agree, but let me try to explain a bit more.

If we’re talking about playing sounds through an external sampler (or VSTi sampler, or drum module, or whatever the case may be), then it’s the responsibility of the sampler itself to handle any special characteristics correctly. AndyRx7’s original post mentions that he’s using a Roland VDrum kit and a hardware sampler, which is why I’m even bringing this up at all.

Renoise’s only job here should be to deliver note-ons and note-offs to the sampler, and then the sampler should decide how to interpet those events and generate sound accordingly. It’s mainly up to the user to structure the notes in a way that achieves the desired result. If you have a sound with a reverb tail that should be played polyphonically to avoid the reverb tails being cut off prematurely, then it’s the sampler’s job to implement NNA type behaviour and play the sound correctly.

It’s not Renoise’s job to handle NNA type behaviour for the MIDI notes themselves, or to attempt to deliver specially crafted sequences of note-ons without the corresponding note-offs. Doing so would probably only result in buggy behaviour and stuck notes. So… when dealing with MIDI notes sent to external samplers, NNA for MIDI notes is not the answer in my opinion.

Now… to the issue of actually playing samples directly in Renoise, which is where this gets a bit more interesting…

When playing samples directly in Renoise, then Renoise obviously is the sampler. In this scenario, then it’s entirely Renoise’s job to handle the playback of those samples correctly, and that’s why he have those NNA actions in the first place. This is where I start to agree with some of what has been said. It’s clear that 12 note columns and 6 notes polyphony per column (max 72 notes) is not going to be enough for everyone. There are limits to Renoise’s internal sampler, and I fully agree that some of those limits could be improved.

There could also be some improvements made to how Renoise handles MIDI notes that are being recorded. There could potentially be a ‘drum kit mode’ or ‘piano roll mode’, for example, which dynamically separates each note into its own dedicated note column as you play. When individual drum hits are separated into their own columns, then 12 sounds at once with 6 note polyphony for each sound is actually pretty decent (but of course, more would be better). It seems like a tool could be made to handle this note recording/sorting behaviour, just to test things out and see if it feels more satisfying this way, I dunno.

Edit: I personally only use one sound per track in Renoise anyway, so the 12x6 thing is not a huge problem for me, but in general I think it would be nice if we had access to more note columns. It would great be if stuff like this was effectively only limited by your CPU power, rather than some arbitrary value. At the same time, I understand the need for some limits, but a value higher than 12 certainly seems doable and desirable here.

The point is it does behave differently if you use one or more columns. This is clearly down to the fact Renoise must be sending a Note Off directly before an Note Event in the same column (I assume looking back to send it on the correct Note value.) With internal samples you can choose whether it does this or not.

Is there any reason somebody shouldn’t be able to record a live drum pattern, which will obviously all go in one column as long as only one hit is activated at a time, and not have each drum sample play to the end? Doesn’t matter if we’re talking a drum machine like a SR16, an MPC type machine or the V-Drums used by the original poster you are still talking about samples, many of which are less than half a second, longest probably no longer than 2-3 seconds. Why should Renoise not be able to handle all these in the same column like it does its internal samples. A Note On is only followed by a Note Off or a Change! There is not a This Note Is Still Active sent every polling opportunity! As we are talking short drum samples there is little need to send Note Offs a lot of the time and overlapping within the same column would make live recording from MIDI devices so much less of a pain!

Or maybe some kind of Drum Recording Mode, where you can create a Track of a certain amount of Columns and Renoise would advance on to the Right with each Note entered, thus reducing amount of Notes erroneously cut short?.. If people really don’t like the idea of the user being able to control Note Off generation being in the hands of the user.

Apparently Kazakore is the only one understanding what the actual issue is! It is not about not sending note offs, it is about the case when the note of will be later then a new note (which will force a premature note off)!

In my first post I linked to another post with a MIDI example which Renoise just cannot handle! Period! That is the problem which I think should be faced.

Yes, but the easiest way to visualize the problem is that this is not possible:

C-4(1)

C-4(2)

Off(1)

Off(2)

The C-4(2) will cut off C-4(1), although it shouldn’t. This is solvable by using another column, but only up to 12 and this will also not happen automatically when recording (if I correctly understood the post I linked to in the beginning).

The issue is simply that the 2nd note in a column will cut off the 1st note in that same column, while two notes played in separate columns works normally (assuming that they are actually different notes). The first 2 patterns in your example demonstrate things quite sufficiently in this regard.

The last 2 patterns are unnecessary I think. If anything, they only reveal how well that particular MIDI device handles its note input, which is not really a limitation that Renoise can control. Attempting to trigger 12 simultaneous C-4 notes in any synth is going to be weird.

Many will simply reject 11 of those notes, for example, while others will handle it differently. My own “Microsoft GS Wavetable SW Synth” (set to a nice classy GM piano sound!) simply triggers all 12 in rapid fire style, leaving only the final C-4 playing. Again, this is mostly a limitation of the synth itself (and MIDI in general) rather than how Renoise handles it.

In any case, I think it would be a bit more accurate if you change your example so that it attempts to play 12 different notes all at once. Here’s a slightly modified version:
http://illformed.org/temp/MIDIPolyphony2.xrns

Edit: With all the back and forth that’s occurred within this thread, I think the answer is simply more available note columns, and some smarter behaviour on Renoise’s part when recording notes into the pattern itself. Trying to hack in NNAs for MIDI notes doesn’t feel like the right approach to me.

Actually, rereading the post I linked to, even this does not seem to be possible:

Column1…Column2

C-4(1)…—
------…—
------…C-4(2)
------…—
Off(1)…—
------…—
------…—Off(2)

As reported in the other thread, again, C-4(2) will cut off C-4(1).

(edit: nevermind)

That is to be expected and a fundamental feature to how MIDI works. You only send as Note On for a value (0-127 being the notes) they do not have a unique ID associated with them. You are never going to be able to cut off the notes separately like that!

But I believe the way most sequencers get around the Note Off problem is by having MIDI/Music Tracks and Drum Track, where the Drum Tracks usually don’t sent Note Offs as they are assumed to be used with short samples/envelopes and thus not needed.

Okay, now I am officially confused :)
I thought that this would be possible in a piano role, but you seem to suggest that it is not.
Then what is the issue here? Why does the V-drum example work in Reaper (with the same hardware!), but not in Renoise?

The issue of notes cutting each other off when programmed in the same column isn’t a problem imo, it is a feature!

It probably is, at least one some sequencers. I know in the old days I’ve played around with layering the same vocal sample from the same key on a sampler but can’t remember if I could be done from a normal track or if I had to pretend it was a drum track to get it to work (changing MIDI Channel from 10 as that is always default for drums.)

But a MIDI Note Off relates to the Note number/value of the Note On, so all repeats of that same note (sample/whatever) will stop with a Note Off to it. All that is needed for what the original poster wants is an absence of Note Offs unless specifically requested.

As to V-Drums using Note Offs to do things like Open/Close a hi-hat I believe a Note On with Velocity of 0 (zero) is the same as a Note Off, or you could use the cut in one tick command and have very low velocity if this doesn’t work (if you need exact precision playing delayed on line before.)

yes it’s a feature called NNA which we have control over for internal samples.

…but whether you input your sounds into different columns of the same track with according note offs, or be able to define overlappable note-offs like you seem to want, it will result in almost the same amount of programming work, no? Only recording notes live automatically divides across columns based on the time notes are held, how would renoise know where to place note-off’s through programming without you specifying the lengths?

I probably just don’t get it :)

What Note Offs? The point is drum tracks don’t usually have them!

Well unless you purposely want to cut a hit short, such as the effect of grabbing the rim of a cymbol, or as has been posted out for special tasks where V-Drums uses them in that one particular case.

In your drum tracks from samples within Renoise how many times do you enter a Note Off compared to a Note On? Very few I would imagine!

I just tried microtonic demo, drumatic & drumular and all these drum vsti’s subsequent note events programmed in one track don’t cut each other off! A crash keeps on playing for example even though it is immediately followed by a snare or whatever. Maybe it is something that doesn’t work in your drum vsti or hardware unit?

It’s not me personally and the guy who started this is talking specifically about external hardware, so maybe it is to do with MIDI only, not VSTi.

I actually thought a little about this the other night, after posting that, but am having serious computer problems at home currently.

[s]In many ways the comment that NNA options for MIDI shouldn’t be available from Renoise is correct. It should be down to the MIDI Hardware how it behaves if it sees two consecutive Note Ons for the same Note.

But this does still mean that Renoise should not send Note Offs before a Note On in a …[/s]

Actually, as writing this I see that if Renoise did not send Note Offs to the preceding Note then it would break any normal playing and chords played on MIDI Instruments so is still actually required for the (probably majority) of situations.

I really do see the simplest way of solving this of basic NNA settings for a MIDI Instrument, Note Off or Continue, with Note Off obviously being the default (and as Renoise currently works) and likely to be all that is needed in the majority of situations,

There have been done a lot of improvements on the midi area in Renoise because of hanging notes and missing the first note in a pattern to play.
Midi gear just limits the host developer to go a certain way or you just get confronted with bad behavior complaints.
Midi has a lot of limitations which is why hardware controler manufacturers attempting to bring their own proprietary format to compensate for this, like Novation designed Automap, pure to get around a lot of limitations that Midi has.
I partially understand the decision but i also mainly disagree.
I would rather have the manufacturers upgrade the existing midi standard, but it hasn’t been cleverly designed in the past that it allowed room for future expansions.

OSC, and also arguably M-LAN, have both attempted to do this but unfortunately never got that far with being taken up by manufacturers and standardised.

ut you do see that fore normal (synth/piano/pad/lead) playing Renoise needs to work with MIDI as it currently does, Note Off going to preceding note in column? Yet also that this may not be desirable at times, especially with drums? Would it really be so bad to give the user control of this per Instrument?

This is really something the hardware and plugin has to take care off. With the plugin you still have the advantages that you can also automate it’s parameters using the VST device, because the plugin also exposes parameters to influence.
There is not much extra around here for midi and what exists still has to go through the same cable. For this reason you e.g. also cannot use the volume and pitch envelopes in the native instrument section, on plugins and midi instruments when we speak of polyphonic instruments.
I would personally love it if that would be possible, but as soon as polyphone comes into the game, you affect all notes and not just those you want independently.