a better search for max devices
Real-time MIDI Quantize screenshot

Real-time MIDI Quantize

by nonagon

A simple device that quantizes incoming MIDI notes to the se...

View on maxforlive.com

Type
MIDI Effect
Author
nonagon
Version
2.2
License
AttributionNonCommercialShareAlike
Live version
9.5
Max version
7.1.0
Downloads
27,472
Updated
2016-01-05

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 ( http://sadfactory.com ):

- 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.

Comments (41)

  • lek · January 22 2010
    awesome!
    gonna test it right now,
    i have been expecting something like that since a while!
  • lek · January 22 2010
    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.
    bEST
  • Parametex · January 24 2010
    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 ..
  • lek · January 24 2010
    Nonagon, no reply?
  • nonagon · January 24 2010
    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.
    Cheers!
  • lek · January 26 2010
    @ nonagon
    sounds good
    I'm glad you re up for updating it.
    anyway, It takes part of my set now.
    :)
  • Rmut · February 13 2010
    you make my dream come true ^^
    please continue to work on this device ( amount of quantize groove ect)
    thank you
  • Rmut · March 12 2010
    could be dope tohave time division not only by 2, also by 3, 5 and 7.
    please ! i cant do that im a nob!
  • Rmut · June 07 2010
    is anybody can help me to ad other time division than 2?
    like 3,5,7 ??
    merci!
  • thesandersman · September 09 2010
    Love it. great little device. I would love to be able to dial in a bit of swing tho.
    Good work
  • lek · March 28 2011
    any chance to get a new update? :)
  • sneaksta303 · May 22 2011
    this works really great with izotope stutter edit
  • dric · October 03 2012
    coollll!!! :) thx!
  • emf · December 02 2012
    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.
  • greaterthanzero · December 12 2012
    @emf,
    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?
  • jenz · January 16 2013
    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...
    Thanx!!!
  • Redoom · March 15 2013
    Any chance this will be updated for version 9? Thanks for your awesome patch btw.
  • xygotcha · June 15 2013
    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?
  • mubali · September 11 2013
    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.
  • mubali · September 11 2013
    I use this in my live sets as well as in production. It's an awesome thing if you ask me. Thanks nonagon!!!
  • Soarer · April 21 2015
    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.
    Thanks!
  • Soarer · November 08 2015
    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.
  • Soarer · December 09 2015
    Live toggle and Livetext(1) are filling up the undo history.
    Would be grea
  • Soarer · December 09 2015
    Would be great to have it fixed.
  • nonagon · December 09 2015
    @Soarer Busy days, but I'll do my best to have a look and post an update soon.
  • getafix66 · January 01 2016
    Undo history gets flooded with note quantize info. any fix?
  • mubali · January 03 2016
    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.
    http://www.maxforlive.com/library/device/3412/real-time-midi-quantize-mubali-edit
  • nonagon · January 05 2016
    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.
  • ArtsTheBeatdoctor · March 26 2016
    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.
  • pacifist · October 07 2017
    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.
  • jonahmo · January 06 2018
    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.
  • jonahmo · January 06 2018
    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?
  • olniourk · May 18 2018
    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?
    thanks
  • Cush · November 24 2018
    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 :)
  • twobob · May 17 2019
    "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.
  • yawo · October 19 2019
    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?
  • rusu · April 01 2021
    hello
    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
  • schlam · June 21 2021
    Hello
    I just made a little edit of this WONDERFUL device.
    It's now possible to use a quantize setting superior to 1 bar..
    https://maxforlive.com/library/device/7393/midi-quantize-2-3
    THANK YOU A LOT NONAGON !
  • PluxMusic · June 27 2023
    I am absolutely stunned at how well this works with basically 0 configuration.
  • salvattore001 · July 03 2023
    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
  • greaterthanzero · July 03 2023
    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.)

← Back to search