Device Details


Name | Version: Real-time MIDI Quantize 2.2
Author: nonagon
Device Type: MIDI Effect
Description: A simple device that quantizes incoming MIDI notes to the selected beat interval. Both note-on and note-off messages are quantized.

Version 2.2 prevents the device from adding to Live's global undo history.

Version 2.0 includes additions by GreaterThanZero ( ):

- Automatic pass-through when transport is stopped
- Triplet mode
- Shuffle
If a note-off falls into the same quantization period as its corresponding note-on, the note-off will be pushed back to the next quantization period. Practically speaking, this means that every note will sound for at least one quantization period, even if the note-on and note-off happen in quick succession.


Live Version Used: 9.5
Max Version Used: 7.1.0
Date Added: Jan 22 2010 04:10:27
Date Last Updated: Jan 05 2016 02:09:36
Downloads: 25521
License: AttributionNonCommercialShareAlike
Average Rating (14)

Log in to rate this device



Device File: MIDI Quantize 2.2.amxd


gonna test it right now,
i have been expecting something like that since a while!
ok i tested it.
Works great :)
the function is basic but does the job.
Hope you are going to work on update :)

Do you now the quantization script "input quantize within Kontakt3?
that what i would love to see in your patch.
-choice between quantize note on or note off, or both.
-amount of quantize effect
- % of swing (groove in live)

with your patch, the time of the note follows the rate of quantize. for example if i put 1/4, play a short key on my instrument, with no release set, i will have the note sounding related to the quantize setting :1/4

Is equal to have note on and note off swith on in kontak script.

Wold be great to have the choice as mentionned above.

Good ideas above ... One needs to feed in noters (with groove) and trigger the events with those if quantization with groove is needed I thinks ..
Nonagon, no reply?
Sorry for the radio silence, been cranking on other work and haven't had a chance to revisit this.

I agree that an option for enabling / disabling note-off quantization would be nice, and that'll be coming soon. I'll need to do some more research to figure out if / how tapping into the groove quantization system can be accomplished, but I agree that it'd be a good feature.

Likely not going to have a chance to get to this for another week or so, but I promise not to let it slip through the cracks.

@ nonagon

sounds good

I'm glad you re up for updating it.

anyway, It takes part of my set now.

you make my dream come true ^^
please continue to work on this device ( amount of quantize groove ect)

thank you
could be dope tohave time division not only by 2, also by 3, 5 and 7.

please ! i cant do that im a nob!
is anybody can help me to ad other time division than 2?
like 3,5,7 ??

Love it. great little device. I would love to be able to dial in a bit of swing tho.

Good work

any chance to get a new update? :)
this works really great with izotope stutter edit
coollll!!! :) thx!
Great Device! But... it also effects the timing of any clips playing on the track unless turned off. changing the note timing of clips i have written in my sets. it would be nice if the device only effected incoming midi from controllers not midi playing from clips. also better control mapping options for changing timing on the fly would be nice. serious considerations for later update.

Max For Live can't tell the difference between incoming notes from your controller vs from your clips. It's all just incoming notes from earlier in the chain. This is a blessing and a curse.

It sounds like you've put the device on your instrument track, affecting every note that reaches the instrument. That's clearly not what you want. Instead, bring your controller in on its own track and put the device there. Use the "MIDI TO" drop-down to send notes from that track to your instrument. Use that same drop-down to send your clips to the instrument from their own track. The effects you place on each source will only affect that source.


I've hacked a few versions w/ mappable timing control. Haven't liked any of them yet -- what's your vision for how you would use it?
Youre device is super cool but in my big Live set (drum triggers with a lot of sounds), the "Midi quantize" quantizes one value after the beat... What am I doing wrong? In my other smaller sets youre device works well...


Any chance this will be updated for version 9? Thanks for your awesome patch btw.
Super device! Thank you!

But the only problem if for example i want to Undo something in Live project by going to Edit->Undo
then i have to undo MIDI Quantize ''live toggles'' first
by pressing Ctrl+Z million times)))

Is possible to switch off Undo option for this plugin do we really need it?

xygotcha, you can remove the purple box from the device architecture. just reconnect the wires after you remove the box and you're all good. I made my own edit for it doing just that and including a live number box that will display the swing amount in % in less than 5 minutes working time.
I use this in my live sets as well as in production. It's an awesome thing if you ask me. Thanks nonagon!!!
This is such a handy tool! I have been looking for this for a while since the function was abandoned in Battery 4 and of course its much better to be able to use it with anything in Live.

Hi Nonagon
I've been thinking that it would be convenient to have a time threshold setting for notes that are either right on the beat/clock or a little too late.
If a note is slightly too late it will be passed on at the next beat right?
But it may not be of any harm if it was actually played. So if there was a time threshold setting in milliseconds one could set that to 0-100 for example and the note would pass through if it arrives before the setting.
Live toggle and Livetext(1) are filling up the undo history.
Would be grea
Would be great to have it fixed.
@Soarer Busy days, but I'll do my best to have a look and post an update soon.
Undo history gets flooded with note quantize info. any fix?
I uploaded the version I made that fixes the undo buffer issue. I did mention earlier in this thread how to change it yourself, but to save people time and trouble, I have uploaded it . I did nothing else to the code (mainly because I'm not super skilled and have no idea what it's doing.
Thanks @mubali for the edit! I've just uploaded a small update that fixes the undo history problem without removing the activity indicators. Apologies that it took so long.

If anyone is interested, I also write a custom edit that maintains note length instead of quantizing note-off as well as note-on. I'd be willing to add that as an option in the next version if there's interest.
Amazing device! It's been said before I think, but being able to apply an Ableton groove (.agr) to the device would be amazing. Especially if the user can load multiple instances of this device on separate midi tracks, all with their own groove.
I am trying to use this with an arpeggiator and it seems that since the quantization is delayed slightly after the beat it is quantized to, the arpeggiator is not triggered until the next beat. It would be nice to have a +/- timing offset (or "nudge") function in milliseconds to address this if possible. This would also be a useful groove effect, since notes would fall before or after the beat.

I am looking into trying to address this although I am a max novice and may not figure it out. If anyone else knows how please let me know, or if the developer can implement this that would be great!

Thanks for this handy device.
Am I using this wrong? I'm using this with Simpler. But compared to triggering samples on an audio track I'm missing a lot of beats, especially when I hit the button quickly. I tried putting the patch on the same track as Simpler, and then I tried putting the controller and patch on their own track which is routed to the Simpler track but that made no difference. Also adjusting the interval on the patch doesn't solve the issue. Granted, I'm using a video game controller as my MIDI controller but it works fine when triggering samples in an audio track so it seems like I should be able to make this work.
Continuing the post above, if I click my controller button as fast as I can, if it’s triggering an audio track sample the sample will play constantly at a regular interval, but if I do this through the patch and simpler then it doesn’t trigger the sample at all. It triggers only if I lower the speed of my button-pressing. How can I make it act the same as an audio track sample?
oups for me it doesn't work properly :)
i'm not really used to instal new max4live device is there a particular way or i just need to double clic on the device file when downloaded?
now when i try it signal midi is going to the device but do not get out....

can you help?

Nice plugin thank you @nonagon.
Seems though that upon stop start the groove is sometimes set to the onbeat instead of the offbeat and I can't for the life of me work out what causes it as there's no clear pattern. Can happen with global stop start, scene launch or clip launch. Am I doing something wrong? Can it be fixed to the sequencer metronome to avoid this? MY midi notes are def quantised to grid.

Also a separate shuffle amount dial for on-beats would be beyond amazing :)
"I'd be willing to add that as an option in the next version if there's interest."

I have interest if you mean enforce a minimum note length but allow a longer note to pass unaffected. That would be ideal.
thank you @nonagon, this device helps me a lot!
just a problem, the shuffle amont is not saved with my session. I have to reactivate it every time when I load my project.... Any ideas?

been using this device for many years in live 9 but since I switched to Live 10 the output of the notes recorded to a different channel is different to the one i'm hearing on the track. Does anyone else encounter this issue? thank you

I just made a little edit of this WONDERFUL device.
It's now possible to use a quantize setting superior to 1 bar..

I am absolutely stunned at how well this works with basically 0 configuration.
hi! i noticed that the quantization interval setting is lost (reset to 1) whenever the audio engine is disabled. this happens often to me as i use two different audio interfaces
That's strange for two reasons:

First, the default quantization setting is 16 (the fourth item on the list). If it's resetting to anything, it should be that.

And second, there is nothing plugged into that drop-down, nor addressing it remotely.

If I had to guess, I'd say you've MIDI mapped that control, and Live is zeroing out your CC values (and/or sending note off messages) when the engine disables.

More testing required, obviously. I'm not able to replicate the problem.

If that's what's happening, there isn't much to be done about it from within max for live.

(I'd look into perhaps merging your interfaces into a composite audio device.)

Login to comment on this device.

Browse the full library