Device Details


Overview

Name | Version: Timing Sensitive Midi Looper 1.4
Author: krito
Device Type: MIDI Effect
Description: Timing Sensitive Midi Looper is a lightweight zero latency midi looper, made for live midi looping with adjustable quantisation on the fly.

Looping Section:

- Playback: Plays the recorded sequence.
- Recording: Records incoming notes.
- Overdub: Preserves previously recorded notes when active.
- Clear: Deletes everything.
- Undo: Removes the last recorded layer.

Loop Length and Position:
The device syncs with Ableton Live's transport, following its time signature and song position.

Quantisation:

- Grid: Choose from 8th, 12th (16th triplets), and 16th notes.
- Amount: Set quantisation from 0% to 100%, preserving the original sequence at 0%.
- Swing: Add swing feeling (-100% to 100%) relative to the chosen grid.
- Delay: Move notes in time (-100% to 100%) relative to the grid size.
- Note End and Length: Quantise note ends and lengths (gate time 0% to 200%).

Note: Swing and delay settings depend on the quantisation amount.

More Features:

- CC Support: Record and play Pitchbend, Modwheel, Aftertouch, Polypressure, and CC messages.
- Through Button: Choose to let through or block incoming midi notes.
- Automation and Mapping: All parameters can be automated and mapped to MIDI remote control.
- Stable Midi Output: Ensures no hanging or overlapping notes.
- Non-Destructive Quantisation: Original notes remain unchanged.
- Realtime Quantisation: Adjust settings on the fly during playback.
- Performance: Minimal impact on CPU usage; no latency introduced.

Known Bugs and Limitations:

- Extreme swing settings may affect the order of pitchbend, modwheel, or cc messages.
- Swing parameter in the 12th grid may not transform it into a 16th grid.
- MPE not supported

Future Features:

- Save the recorded pattern with Abletons save
- Replace Mode: Deletes underlying notes when a new one is played.
- Transpose Mode: Transposes the playing sequence based on the last incoming note.

Feedback is welcome!
Have fun exploring the Timing Sensitive Midi Looper.

Details

Live Version Used: 11.3.313
Max Version Used: 8.5.5
Date Added: Sep 26 2021 15:17:56
Date Last Updated: Apr 12 2024 16:56:52
Downloads: 2722
License: AttributionNonCommercialShareAlike
Average Rating (7)

Log in to rate this device

5

Files

Device File: Krito's Timing Sensitive Midi Looper.amxd
 


Comments

H!,
good job!
I test this
thx
Hi Krito,
thanx for your good device!

I love Midi Loopers especially if they offer an option to disable the "through" output like yours :)

One thing: If "overdub" is not activated (just with "record" and "play" activated) the loop (e.g. after 2 bars) is not playing as recorded, just a few tones are audible ...
I´m on Live 10.1 / OSX Catalina.

Also it shouldn´t be possible to activate "record" and "overdub" in parallel. After recording something with "record" and pressing "overdub" afterwards should automatically change the state of the "record"-button.

:-)
I needed this, thank you Krito!

I am glad that I can automate the record/overdub/play/clear buttons via automation lanes in the sequencer view, however it would be much more useful if this automation showed up in the same way as the native looper device. Eg. as a single automation lane for state as opposed to individual automation lanes for triggering the buttons.
Hey everyone,

Thank you for all this feedback!

I have uploaded a new version to improve on those areas you commented:

1. As I get from the comment of @spacesoul, is that the meaning of the record, overdub and play buttons is ambiguous: Instead of a single state button as used by many loopers I followed the design of this device: https://maxforlive.com/library/device/1757/ck-midiloop
The downside is you can not use it with a single button, however it is a bit more clear what is happening when pressing a button. To make that more clear, buttons without a meaning are greyed out now: For example, "play" has no meaning when "record" is on and "overdub" is off. This is shown in the interface no more clearly.
2. There was a bug that some notes would be played in "record" mode without "overdub" but "play" turned on. I fixed this.
3. @dazeofresistance I clearly see the use of a single automation lane for "Sequencer Mode". I could not reasonably fit a "Sequencer Mode" button on the interface, but I added an automation parameter with that name. You can select it in the automation view as a device parameter. Here you can choose between "off", "Record", "Overdub" and "Play". These modes then change the values of the buttons, and also overwrite their automation if present.

I hope you all enjoy the update! Let me know :)
Krito
man...its amazing stuff...i really enjoy it.
i came from hardware sequencer ...good job.
anyway im kind a new here.
in addition to overdub mode...it will be also good that u can add midi replace mode (overwrite).
like on korg emx1 or arturia keystep...for example when have a simple sequence running and u r on the overwrite mode and record , only when u play keys it will replace the notes in the same position that already was in the sequence.
it gives u rythmic fill to play...think about that.
anyway do u think it possible to do ?
tnx a lot man , peace !
This is a gorgeous piece of code!

Just what I needed for my current rig, this is great!
It works great except that I am having an issue with the pitch and mod wheel... they are not being recorded in to the midi sequence.

I can see and hear the midi modulation changes going into Live when I move the wheels, but the sequence is recorded "flat", i.e., without the pitch or mod wheel changes. Is this normal or am I doing something wrong? Thanks for your help!

Mac mini M1, OS 12.2.1, Live 11.1.5b
Hey Krito,

Been using your looper with pleasure in my arrangement view live set. Love it! The only thing which doesn't seem to work properly a lot of times is the quantisation (so I put it off sometimes unfortunately..). It seems to make little hick-ups in timing, some 16th are delayed, one 16th note.. Also, it doesn't seem to work in odd meters, like 6/4, it starts shuffling then (kinda funny, but not what I need haha)..
Maybe something to check :)

The best,
Niek
@dawnofanewworldmusic
Hey,
After some troubleshooting I found that it messes up the quantisation grid, probably because of tempo-changes in my set. I deleted the device and put it back with just one track (it automates only in one tempo (4/4 114 BPM) and then it seems to have found the right grid again..
Before I used one looper throughout the whole set for one instrument-group (drums for example), I tried to map the 'clear' button every time a song or the BPM changes. But this didn't seem to work.. That's a pity, because tempi might change during songs. ;)

Niek
With automate during the whole set I mean automating the 'sequencer state' throughout the arrangement.
i love it! if there can be dedicated assignable buttons for loop length 2,4,8,16 that would be amazing. thank you!!!
Thank you for all your feedback!

I have uploaded a new version:
- Quantisation now works on any time measure, not only 4/4.
- You can decide between beats and bars as unit for the loop length. This enables you to do polyrhythms for example with a length of 7 beats on a standard 4/4 measure.
- Added assignable multi-buttons as an alternative way to change the loop length.

Enjoy
Krito
This is really great! Good job. And thanks so much for sharing it, very generous.

I have just one thing on my wish list:
I'd love to have the option to have the Through option enabled only when not Playing. So I would have the input coming through until I (record and then) Play. Then while playing the loop the Through is disabled so I hear only the loop.

Then it would be just perfect!
Hey Krito

Thank you for the updates! I totally forgot about this thread.. I'm gonna try the updated version in my live set soon and let you know about the odd-meter stuff. :)

Niek
Hey guys and Mr. Krito,
could anyone of you please be so kind to make a Youtube demonstration of this device? It looks really fascinating, but i m too dumb to use it...
Thanks in advance :)
Hey Krito,

Amazing plugin, I'm almost at the point where I would use it regularly. Although I have a bug that hinders me from it. If I play the song at a start point where the sequence would start from the beginning, it ignores the first note. The note is played however when it loops. I only can it bring to play if I crank up the delay knob on the micro delay section.

Tested under Ableton 11.2.10 under Mac OS (M1)
Thank you Very Useful Midi Looper! What else necessary is UNDO button for undo last layer (for undo live playing mistakes).
it has one issu looper recieve all midi information from all 16 midi channels no matter which midi channel is selected on the track
Hello ! Your M4L device is amazing ! Iy's the onlyI fnd to make my live performance work ! Big thank you :)

Do you think it's possible to integrate also midi CC (like modwheel or other midi commande) ?
amazing device!!!
Hi Everyone, thank you all for you feedback.

I released a minor update on this device, which mainly fixes the bug reported by mangomeat:
- The first note is not dropped anymore when starting to play a previously recorded sequence under normal circumstances. It may still being dropped when using lots of negative delay or the note is supposed to move into negative time for other reasons, e.g. recorded note is very late and lot of quantisation amount. (Thanks for reporting!)
- Playing with the grid settings is more stable and less likely to lose notes or play them twice
- Changed the default settings so that the device is ready to record and play

Enjoy!
Hi everyone,

I just uploaded a minor update on the device (v1.2.2):
- Undo Button: It let's you undo the current/latest recording layer of the loop. A new layer is created whenever you turn on record.

Enjoy!
Krito
Hi Everybody,

I have updated the device (v1.4):
- Support CC messages: It is now possible to record and playback Pitchbend, Modwheel, Aftertouch, PolyPressure and other CC messages.

I have tested the device as good as possible, if you find any issues, please let me know in the comments!

Cheers,
Krito
hey man !!
tnx for the amazing updates . im using this device always ...
simply one of the best devices out there for live jamming artists..
i really really cant wait for the REPLACE MODE update . when it will be release ?
by the way , Please make an "clip" button that send the existing sequence to new clip in ableton . :-)

tnx again :-)
Please if you can, add undo last redorded step or movement button.
Oh sorry sorry everythink is ok about undo! THANK YOU!
I noticed (an issue) that if you use two midiloopers in one project. with different midi ins (tracks), then it picks up a signal from a completely different midi channel (or track). Try to use two midiloopers.
undo works only for one step record, you cant undo 3,4 or more steps just one.
This device is perfect and a lot of fun! I don't use a lot of M4L devices but this one is going to be gigged for sure! I'd like to suggest to some future upgrades on top of the current roadmap:
- A reset clock button - reset the looper's clock back to the first step on quantization
- The ability to store and fire off more than 1 pattern!
Thank you for the feedback; it's much appreciated!

- Implementing the replace mode is not straightforward due to its interaction with undo. Adding this feature may take some time.
- @raverpavel: I've investigated the issue you mentioned with multiple midi loopers but couldn't reproduce it. I'd like to fix it, but I need your assistance. Please share an Ableton project, a video demonstrating the problem, or provide a detailed explanation of how to replicate it. You can send it to public@krito.de.
- Regarding the reset clock button, @d0gselfie, could you clarify its purpose and function? Is it for shifting looper content to different timings? While I'm considering this idea, I'm unsure about its usefulness and the interface design, as I don't want to replicate Ableton's existing MIDI editor.
- I won't be adding the ability to fire multiple patterns since this can be achieved easily with multiple loopers.
- Pattern save has been added to the roadmap as a high-priority feature. It will save the pattern whenever the Ableton file is saved and will be implemented next.
this device right here is a total banger. love it, currently working on a (mostly) MIDI live looping setup and was getting really frustrated with some of Live s awkwardness when using a clips only workflow. This device + touchOSC on an Ipad (+ the fact that it seems to be super bug free) came as a ray of light in my whole endeavour. Genuinely thanks a lot for this.

Now, for the inevitable feature request, haha - do you plan on adding MPE support at any point in the future / could you give me some pointers towards implementing this functionality ?
just encountered the first bug haha. I m trying to use two instances of the device at the same time (I have a hybrid drumming setup where I play both an Alesis Samplepad and a Roli Seaboard Block at the same time). The problem is that the device that s set on the drums stops transmitting MIDI notes after a few moments of playing both the bass and the drums. The device only works briefly again after restarting the set.

Do you by any chance have some troubleshoot idea ? :)
PS : it s something related to the ROLI seaboard - when playing the bass from another MIDI controller (the Oxygen 49, a non MPE controller), there doesn't seem to be any conflict between devices, I can play both the drums and bass at the same time. hmmmm - might drop the ROLI seaboard for the moment since your looper is such an asset
Hey @maboos,

Thank you so much for the feedback and the bug report on MPE.
I don't have an MPE controller, which makes the whole MPE suppport quite difficult to test for me.

But maybe you could help me here:
You could record an MPE sequence with the ROLI Seaboard to a midi channel in Live, that crashes the midi looper, and then send that live project to public@krito.de :) that way I can reproduce the issue and have a way to fix it, essentially adding MPE support. If you do that, please do it with an Ableton Live 11, I haven't upgraded to 12 yet, you know, money is short.

Depending on how difficult this is to fix, I might be able to roll out an update in the next few weeks.
Hi Krito,

thank you for this perfect looper!
Sometimes I use your looper with a Logidy UMI3 foot switch midi controller and I was wondering if it's possible to turn off quantization and record a loop without time limit.

Please keep up the good work!

warm regards,
Martin
great device, just started using it. Would it be possible to save the settings state of the device? Currently, on reloading a session, the device starts with record, play and overdub activated. When I start my session I want it to use record mode only. This way I can start playing until I find something I like, then toggle record button to go into play mode and -voila- the last 4 bars have been recorded already. Amazing work on this by the way...
Thanks for the feedback! That would definitely be useful if the device would save its state, as all other devices do by default. I will have a look into it and fix this as soon as possible.
Dear Krito, thanks again for your great device! I´m using it frequently in my live concerts.

I have some suggestions/problems:
- State saving would be most welcome! Every time I start my project all your Midi Loopers are running and recording per default which is not a good thing.

- I have Midi mapping problems with the five measure buttons at the top. The number field below is mappable with a knob (of iOS Midi app Lemur) but it is hard to recall exactly the desired beats/bars.

- It really would be great if you could implement several buttons (beside the five buttons: 1, 2, 4, 8, 16) for repeat length (e.g. from 1/16 to 16 where 1 is the original length). These buttons would shorten or expand the original length without changing the tempo. So you could get some micro looping stuff (1/16). Expanding would copy the notes.

- More variation in the Quantization Grid would be welcome (like 4th, 2th etc.) to get temporary chords while improvising.

- I have an Osmose keyboard. Unfortunately MPE is not really supported yet. Let me know if I can help you with testing etc.

Thanks again and many greetings from Hamburg! ;-0)

Login to comment on this device.

Browse the full library