PSA: How to fix recorded midi being shifted forward

You’re probably here because you’ve noticed that when you record something in via keyboard despite you playing perfectly in time with the metronome, the midi generated is ahead of the metronome for some reason, making it out of time.

You’ve probably seen comments along the lines of “just add track delay” which are maddeningly unhelpful because it makes the sound align but your midi data is still wrong, making it harder to edit/manage.

You’ve also likely probably seen that there’s an option under
EditPreferencesRecordMidiASIO Latency Compensation Active by default
And tried because it seemed to be exactly what you want, but then it seemingly didn’t help at all.
I’m here to tell you that turning that on is actually still the right fix, but its just not being applied to anything in your current template.
To actually make it work in your current project you can:
-Right click your track
-Open “Track Control Settings
-On the left hand side, select “ASIO Latency Compensation
-Click “Add >>” to move it over to the right
-In the Controls Area Preview box below, you’ll likely need to increase the track widths in order to see your new button (at this point, it’s likely overflowing, as shown by the preview below the boxes)
From default I believe Control Area Width of 8 and Track Name Width of 8 will make it fit neatly.
-Click “Apply
-Click “Ok

Now look at your track. You should see your new button on the track interface, it’ll look like a tiny clock face and a chevron pointing to the left. Kind of like this:
[ ⬤]

Clicking that will actually activate ASIO Latency Compensation for that track.
Make sure that button is orange and try recording/playing through, you should likely now have aligned midi data after recording.

If that still didn’t work for you, there’s two more settings that some people have had luck with:

The first that can supposedly help is:
StudioStudio SetupAudio SystemAdvanced OptionsAdjust for Record Latency

The second being:
StudioStudio SetupMIDI Port SetupUse System Timestamp
There’s 3 of those options, so maybe try those if it’s still not working for you.

If anyone knows how to turn the latency compensation for every track in the entire project at once so you don’t need the button for your current templates, that would be great, please put it below.

Hope this helps someone, who doesn’t need to lose as many hours as I did today :slight_smile:

3 Likes

Hi there,

To activate the latency compensation for all tracks go to:

Edit->Preferences->Record->MIDI, check the box for ‘ASIO Latency Compensation Active by Default’.

For some bizarre reason, this caused a very considerable latency when recording. I abandoned it, but , others might have more luck with their system.

Cheers for the info.