FAQ & Terms of UseFAQ & Terms Of Use   Wiggler RadioMW Radio   Muff Wiggler TwitterTwitter   Support the site @ PatreonPatreon 
 SearchSearch   RegisterSign up   Log inLog in 

Ableton Live & sequencers, workaround for latency issues
MUFF WIGGLER Forum Index -> Music Software Goto page 1, 2  Next [all]
Author Ableton Live & sequencers, workaround for latency issues
If you use hardware sequencers that you try to record in Ableton Live and your workflow is often messed up because of the latency always changing in recording and/or monitoring, you should be interested in this.

In fact, there is no official way to record AND monitor externally sequenced sounds properly and reliably regarding latency in Ableton Live, that's why you may still be periodically struggling with latency issues.

Setting the Driver Error Compensation right

Driver Error Compensation FAQ wrote:
How do I calculate the correct DEC value?

Live has a built-in lesson including a specifically calibrated set which allows you to set DEC. For the lesson you will need a cable and an audio interface with at least one physical input and output. This can be found in the help view:

Help → Help View → Audio I/O → Page 8 of the Lesson, click the link for Driver Error Compensation.

In other languages, it may be on another page, for example in french it's on page 18 (last page) with Live 10.0.5. Please note that the first versions of Live 10 forgot to include the lessons, so you would need to update your version in order to get them.


The main thing that is not wrote in any manual but anyone using Live really needs to know is that depending if you're recording with Monitor set to In/Auto or Off, the resulting recorded waveforms will be put at different places on the grid.

Monitor set to In/Auto is meant to record your live played performance synced by hear to what Live makes you hear and so the resulting waveforms will be placed at the time the monitoring let you hear them when you were recording. This is meant that even if you had some effects generating latency on that track that would make you hear it too late, we think that you would have adapted your play to this and did your best to sync the heard result to the track you want to overdub with.

Monitor set to Off is basically what you want in order to record an externally sequenced sound. Even if at some point Live will be shifting all your monitors and playbacks because of latency compensation for matching, it will compensate the delay so the recording will be placed at the time it was meant to come regarding timing.

Live is stuck like this, so if you want to record sequenced sounds reliably and always the same timing wise, you have to record with Monitor set to Off.

"But now how do I monitor my tracks ?" -> You have to use another track.

If you didn't know that, then the following could seem even weirder for you: using a simple MIDI track to sequences an hardware synth then recording its sound in an audio track will suffer of exactly the same latency issues if you record with Monitor set to In/Auto, that's why the "External Instrument" device exists, and with it if you don't want to use a separate audio track (with Monitor set to Off) to record, you have to right-click the track, select "freeze", then right-click again and select "flatten" in order to record the sound correctly timing wise.


Now the next level that most likely none seems to ever reach is getting recordings playback matching monitoring timing wise whatever happens, like effects adding latency being used on the subject track or other ones.

That's pretty complicated but let's try to clear up the mess a bit.

Like for Audio or MIDI tracks, Live will shift the MIDI Clock output by the amount of latency generated by all the effects used on all tracks. But this seems to be meant that you use an hardware mixing desk and you only monitor through it (=without any latency). This way the recording will be played back at the same time as the sequencer will trig sounds and they will match.

But one want to use Live to monitor... And even while having an hardware mixing desk, one could want to use Live's effects. That's where the mess begins.

If you have the "Reduced Latency when Monitoring" option disabled, Live will also shift the monitored tracks... So it will shift the MIDI Clock output plus the monitored track, and then you will have your monitored sequenced sounds being delayed twice as the playback tracks. That won't be helpful in any way...

Now we can try many things, but we can already understand with this first experimentation that the way it works is false for what we want, so believe me or not: I'm sure there is no way to get monitoring of sequenced sounds matching recordings timing wise with how works the MIDI Clock output.

A workaround

After noodling for hours and days, I came across a workaround for this annoying issue. For this, it is needed to use a device which transmits the MIDI Clock via an audio output of the soundcard such as Expert Sleepers USAMO* and Innerclock Sync-Lock (never tried but maybe E-RM Multiclock too ?). Because those devices are using an audio track in Live, this allows more flexibility for how the signal will be affected by latency compensation or not. In the meantime, using such a device is a good thing for the timing of your recordings as it will reduce the jitter of your sequencer a lot, especially for the MIDI Start message which is a crucial moment for getting the same timing between the DAW and the sequencer each time it can happens (like when recording in overdub style).

Set your USAMO* / Sync-Lock the following :

Making the clock going out via an External Audio Effect device will make it being unaffected by any latency. It will just go straight out as soon as possible every time, whatever happens.

Set your instrument tracks the following :

Make a group with an External Instrument track for monitoring and a simple Audio track for recording.

For the monitoring track, setting up the MIDI From and MIDI To is not the goal here but both need to be fulfilled with something in order to get all the wanted features working. Then set the Audio From with the external input that your sound generator is feeding. Set Monitor to Off.

For the recording track, set the Audio From with the Live's internal routing feature in selecting the name of the monitoring track in the list and choose "Pre FX" in the next selection box. Set Monitor to Off.

Now, whatever effects with any big amount of latency you will add anywhere, both your monitoring and playbacked recordings will always play at the exact same time !

But while the latency could begin to be big, one could still want to record live played notes on his sequencer and so will need to monitor the live played instrument without latency in order to get the note recorded at the right time on the sequencer (which is not delayed). This is the primary goal of the "Reduced Latency when Monitoring" option, so be sure it is activated and set the Monitor of the monitoring track to In/Auto. Don't forget to set it to Off again when recording audio (except if you want to record a live played performance in audio directly).

With this workaround, you should get recordings always a few milliseconds late from the grid, but always the same. Here I have about 1.25ms minimum. It's good to have them a bit late so when you will reduce your clips so they begin at the beginning of the waveform, the fade in feature won't affect the sound. Also because of jitter (which still exists with MIDI clock via audio), having the sound placed a bit late makes you sure that it won't be early and so not encounter the risk that the beginning of the clip cuts the beginning of the sound.

Now that we found the way to get the thing right, we can understand that it is not our own fault to not be able to achieve this evident goal easily and we can hope that Live's developers will get finally interested in this issue.

* Expert Sleepers USAMO disclaimer :
There is a known bug with Ableton Live where the USAMO won't be able to transmit the start message to the sequencer anymore. This comes when your project becomes of a certain size that the slaved sequencer will start like only 1/8 times, what is veeeery annoying.

Additionnally, if you still get a little delay or flange between your monitored externally sequenced sounds and playbacked recordings, you may need to adjust the driver error compensation with this method.
Wow. Just wow. I need to bump this thread for its value alone. thumbs up
Thanks a lot for taking the time to write this. Live sucks... or at least Ableton's documentation sucks.

This issue and the lack of a fix by Ableton is more evidence that Live's MIDI functionality is hot garbage and this DAW is really made for working with audio clips only. I bought the Push 2 for using the encoders to control and automate MIDI gear using MIDI CCs and found it really bad for this... an endless PITA.

I just record the entire song (by selecting Export Audio and choosing to export the Master bus) in one go to avoid timing issues between tracks.
90 inputs! eek! eek! eek!
goldplate wrote:

applause v2gonna have a go at this many thanks Rockin' Banana! nanners It's peanut butter jelly time! It's peanut butter jelly time!
Whooosshhh many thanks!!
I've been stuck on this issue for too long allready!!
Oh and can you still send midi notes on the 16 channels when using the USAMO?
screaming goo yo SlayerBadger!
It is possible to get very good MIDI timing from Ableton ON A MAC without investing in a sync box:
Use an audio buffer size of 64 samples or less, and use a MIDI interface that supports OS X's MIDI time-stamping (such as an ESI XT / XL ).
goldplate wrote:

* Expert Sleepers USAMO disclaimer :
There is a known bug with Ableton Live where the USAMO won't be able to transmit the start message to the sequencer anymore. This comes when your project becomes of a certain size that the slaved sequencer will start like only 1/8 times, what is veeeery annoying.

Additionnally, if you still get a little delay or flange between your monitored externally sequenced sounds and playbacked recordings, you may need to adjust the driver error compensation with this method.

Update to this known bug issue.

There is a sync sample download here -

I think it may be possible to take this sample, disable the USAMO plugin in Ableton and send this audio out instead. That would bypass the start and stop issue, since you could just loop this audio across the duration of your track. Does this sound like I am on the right path, or maybe missing something?
I'm sure ES opted to go for a plugin and not just a simple audio file for a reason but I would prefer just using an audio file to generate clock.

I think the USAMO tries to do too much by trying to translate all MIDI messages- it should have just focused on clock like ERM and Innerclock did.
OP’s statement of problem seems correct.

However, I believe the solution does NOT require any special hardware. I long believed it did, and I used to use an ESX-8MD for syncing.

Reduced Latency When Monitoring DOES work for this if you apply it correctly.

I documented the solution here.

Ableton could do a much better job documenting this. I struggled with it for a long time. ency-in-ableton/69879/3?u=jbone1313
i had similar issues described in the original post with Ableton + external hardware.

the problem being the timing difference in the recorded audio of any given external device such as a drum machine or hardware synth.

i solved this in my own setup by recording the RESAMPLING channel within ableton live instead of whatever individual channel of input from an external device i wanted.

so for example, if you have a channel of audio or some other virtual instrument sound source running in Ableton + a channel of an external sound source, say a drum machine, and these are running in sync, sync as in, they sound correct to your ears.. if i then recorded the audio of that external drummachine, it would be offset on its recording grid, which was an issue.

But if i just soloed that channel, the external drum machine, and then created another channel to record abletons RESAMPLING, then the recorded audio was grid mapped correctly..

It's not perfect but it was good enough for my needs and didn't require adding another piece of hardware to my setup.

having used other DAWs such as Pro Tools + Logic, I've encountered similar issues with recording the audio of tightly synced external devices and concluded that the issue is just a reality of software + hardware + latency that is yet to be fully solved by any DAW..

if anyone recommends a DAW that has solved this, pls let me know smile
additional to what i wrote above, i had an email dialog with ableton support who basically confirmed the issue and explained that it is an inherent limitation of reality, in that, timing issues / latency etc are a fact of life and the ableton staff member suggested a hardware device for compensation, i can't remember which off the top of my head though.

more irritating for me though, specifically with ableton live, is that external devices slaved to midi time code, in my case an elektron rytm, works in sync after you adjust the Midi Clock Sync Delay in the midi preferences for your midi interface.. this works, but sadly the value is unstable in that, i can set it one day and everything is fine and then a day later in a new session i need to adjust the value again.. ive swapped midi interfaces too so assume the issue is either ableton or the elektron box.. either way its a mild frustration..
materialobject wrote:

As I explained a couple posts above, this can work perfectly without a hardware syncing device.

I have tested it extensively. It works.

The key is to understand how Ableton's PDC system works.

When you use Reduced Latency When Monitoring, it will do what you want, as long as you don't have latency inducing devices in the same signal path you are monitoring (i.e., same track, buses, or sends that track is going through). But, really, why would you? Who needs a 10ms VST effect on their drum machine?

Latency inducing devices are fine on other signal paths, as long as they are not in the path of the instrument you are monitoring, including buses and sends.

This is all easy to test.

Make a Live set. Monitor your drum machine on one track. Add another track with a dummy External Audio Effect device with its latency cranked up to 200ms so that you can easily see what is happening in your set. Setup another track to record the output of the monitored drum machine. Then, try some recordings with and without Reduced Latency When Monitoring enabled.

You will quickly see exactly how it works and how to work with it.

You only need to make fine adjustments to the MIDI Clock Sync delay setting in Ableton's preferences to account for the FIXED, round-trip latency of your sound card. Using that setting to account for the variable PDC latency is not the right way, as that latency is variable, hence, use Reduced Latency When Monitoring as described above.

More info in the link I posted above.
Thanks for that
I tried what you said and it does work as you suggest, even though im using ableton's "External Instrument" thing which works like a midi track .. and luckily involved no further tweaking form me, latency wise.
Either way, all good and an improvement on my other solution..

A couple of time ago I did buy an ERM Multiclock in order to get rid of those latency issues when using live as a studio multitrack recorder.
So when I record sounds from my modular clocked by Ableton thanx to the Multiclock, while listening Loops from Ableton everything I hear from both the modular and Ableton is in time and recorded the same way.

One or two years ago I started to use Ableton as sample playback engine (with very few VSTs) for my modular live performances using Expert sleepers ES-8 and Silent Way sync device which works nicely to clock the modular sequencers.

I just got in trouble when I tried to use Ableton not only as a sample player but also as a sequencer adding to my live rig Expert Sleepers FH-2.

What happens is that no matter what I've tried to set up (positve or negative latency of audio or MIDI tracks, positive or negative error compensation in the system preferences, positive or negative general latency in preferences), the looped MIDI sequences form Ableton are heard BEFORE the actual timing... Which means negative latency... woah

The only way I could solve this was to add a short gap at the beggening of my MIDI loops... which doesn't look like a good solution to me...

Begging the guy from Expert Sleepers to add a programmable delay to the FH-2 is the only solution I see otherwise...

What else could I do...?
If you use the method I described to monitor and record, any playbacked MIDI and audio will be in sync.

Additionnally the only remaining not working situation was recording incoming MIDI. The only way I found to record externally sequenced MIDI tracks in a Live's MIDI/Instrument track is to use a first MIDI track with Monitor set to On (and no effect on it) and a second track set to be fed by the first one and with Monitor set to Off, and in just temporarily disable Delay Compensation in the Options menu for the recording pass.
Thanx for your answer.
I actually didn't look at your tutorial till the end... meh
I will try and report back!
Thanx again!!
goldplate wrote:
The only way I found to record externally sequenced MIDI tracks

What do you mean by this?
Using for instance a eurorack sequencer and a CV-to-MIDI interface in order to record midi tracks from your modular to Ableton?
i have no issues recording clocked eurorack stuff from Ableton, back into Ableton, with the Grid markings of Ableton in the right place.
this is what i do

Ableton Live v9.7.7

on a Midi channel i have an External Instument device. I send midi notes to that, that device is connected to a Pittsburgh Modular Midi2 module that does Midi to CV.

i just send midi note on / off data which is converted to gate signals

i then use the gate signals with the eurorack. make sounds and feed that back into Ableton

on a seperate Ableton Audio track i record the AUDIO from the MIDI channel that has the External Instrument device mentioned before.

when i record this it all comes out timed correctly..
Hmmm.... , you are very luky.
After testing it is still not working the way I would like it to.
Bellow you can see and chek how I did setup Ableton and my mixer rootings

Here is my midi loop

Here you see the sound Recorded quite nicely from the instrument group using MIDI channel Audio IN 5.
But as you will see and explan later again, this is not my concern

The problem is the following: in order to simulate a Live performance situation where I use Ableton live as a sample playback unit and a MIDI sequencer (and master clock which is actually not used in this context as the events are trigged from the MIDI sequences note on and off then translated to Gate and CV on FH-2) where all of my sounds (from modular and Ableton) should play and be heard in time, (no matter how Ableton would record this) I did set two seperate audio channels that kind of represent the Mix table of the gig where I would play.

Those two extra channels are named SyncTstBIA and SyncTstComp which you see in the first picture.

SyncTstBIA (Sync test Basimilus Iteritas Alter, to which I allready added 1ms of delay within the modular to allow it to read CV proprely before fireing a sound) gets sound form Audio IN 5 (same as group).
In a live performance situation this channel would not go to the computer prior to be played. It would just be played by a MIDI sequence from Ableton and go through the mixtable of the gig.
Here is how this misery looks like:

Pretty AHEAD of time as you can see... woah

To compare my latency settings I have set a sample loop in Ableton (kick and hats) that is sent to my mixtable (the same that gets the sound from the BIA before going to the computer audio interface) and then to the computer interface through Audio In 6 as you can see in my first picture. It is the one named SyncTstComp. And here you can see that it is recorded pretty tightly in time. So in time that it sometimes looks ahead of time in Ableton. That's why I did zoom in...

So what do you suggest in order to have those two sounds be played and heard at the same time in a live performance situation?
Soy Sos
I'll plan on reading thru everything and keeping an eye on this thread.
Have you engaged Ableton and sent them all this info?
The solution seems valid only if I'm willing to use Ableton as a monitor for my modular voices. This means every hardware sequenced by Ableton should go through Ableton as audio and out again through master or a separate channel out of my audio interface...

Maybe this sounds fanatic, but I will loose the all analog sound during performance...
The advantage is that I can use Ableton as a sound processor...

But this is not what I plan... I may quickly run out of audio IN and OUTs whith my audio interface... and mixtable in the studio... and in live performance

In my live performance rig I use Expert Sleepers ES-8 as audio interface whiche has 4 INs and 8 OUTs.

4 INs can be used as Ableton sequenced tracks input monitor.

But then out of the ES-8 I have two OUTs of sync used. Two OUTS for a stereo track of panned Pecussions. Two OUTs busy for a stereo track of panned synths sample loops and tracks. This means I have left only two Outs for the voices of the modular sequenced by Ableton...?

Another problem arises: during live performance I use switches to change the sequencer source for the modular voices. This means that when i change the source of the sequencer from Ableton to modular sequencer I should also switch the audio destination for that voice in order to avoid the latency of Ableton as the audio IN used by the group compesates for this (the external sequencers play in time, so relatively late compared to the ahead Ableton MIDI sequence...)

Dead Banana
henrry wrote:

You have a lot going on. I recommend simplifying things down so that you isolate the variables as much as possible.

From what I can glean, it seems you are trying to sequence a synth from Ableton's External Instrument device and then record the audio on another track with monitoring set to OFF.

In that case, I would expect to see what you are seeing; the recorded audio is early, because you are using the External Instrument device to sequence, which is delay compensated, and then you are adding ADDITIONAL PDC by recording the audio with monitoring set to OFF.

From one of the Ableton links below:

Live only compensates audio recordings when the monitor of the recording track is set to "Off". Recordings made while the monitor is set to "In" or "Auto" are not compensated.

I generally recommend not adjusting any track delays. Doing that can lead to unexpected behaviors and is generally not needed. If you are using the External Instrument and External Audio Effect devices properly and using Reduced Latency When Monitoring as I described below, then you will not need track delays, as the variable plugin latency in your set will be compensated properly.

The only additional delay settings you MIGHT consider changing are to correct any ADDITIONAL FIXED latencies caused by particular hardware or to compensate for the round trip latency of your sound card.

Also, based on some other comments, I feel I need to repeat this comment, which I made above:

OP’s statement of problem seems correct.

However, I believe the solution does NOT require any special hardware. I long believed it did, and I used to use an ESX-8MD for syncing.

Reduced Latency When Monitoring DOES work for this if you apply it correctly.

I documented the solution here: ency-in-ableton/69879/3?u=jbone1313

Ableton could do a much better job documenting this. I struggled with it for a long time.

I recommend studying these links. ed-Latency-when-Monitoring- ency
w00t w00t w00t w00t
Huge immense THANK YOU man!!!
thumbs up

You saved my day!!!!! (many days actualy!!!)

Perfect time matching!!!!

So yes, just removed this (mother fucking damn overrated despite well usefull to others) External Instrument device!!!

Just set latency of my MIDI track to -13ms and here we go! SlayerBadger! SlayerBadger! w00t SlayerBadger! nanners Rockin' Banana!

By the way I didn't notice any change at first in the recording latency while using or not using Reduced Latency When Monitoring. Moreover, as stated in the second link you provide, Ableton recomends not to use this feature during live performance and recording of tracks... which is exactly what I use Ableton for and why I needed to fix this ahead of time latency of my MIDI loops. The possible problems are too many (missmatch of automatation, glitches, )

I do set my recording tracks to "off" in order to avoid sound feedback and sound beeing doubled with slight delay. That's how my audio is routed: modular and synths to Mixtable with groups, groups to Audio interface, audio interface to speakers. So whatever is played in the modular and other instruments is heard as is with no delay whatsoever. Regarding latency during studio recording, I guess that if all of my tracks are set the same everything will be recorded in time.

Sorry if you had to explain again all of this. English is not my mother language and it allways requires extra concentration to me in order to understand those technical aspects properly.

Let me know if in your view their should be something I should set diffrently. You seem to say that adding delay to MIDI tracks could cause some issues..? For now everything seems to work nicely. I there anything I've missed?

MUFF WIGGLER Forum Index -> Music Software Goto page 1, 2  Next [all]
Page 1 of 2
Powered by phpBB © phpBB Group