General Discussion
So syncing between ableton and external gear has proven to be quite the general quagmire largely stemming from the various physical and digital systems involved in audio conversion processing.
I decided to dig in and see if I could get midicake to really lock in on the beat in a way I can quickly add to projects and it lead to some interesting discoveries I thought would be helpful to others to know so you don't have to also feel crazy.
Hoping others might also have some tips or thoughts to add.
Midicake Tempo Wobble
My arp usually gets a lot of wobble, but switching to audio sample rate of 48khz locked it in and with ableton leading I see significantly less tempo drift. Not sure if this is related or a false indicator.
Latency
Adding latency ANYWHERE in your ableton project will put delays on the notes received in ableton regardless of 'Reduced Latency When Monitoring' or 'Keep Latency' settings for a given track.
This is not in any way unique to midicake, I could reproduce it on multiple devices.
This means that if you configure the latency by either adjusting track delays or shifting the control clock from ableton, you will need to update it every time you add a latency causing device to your project.
This can be an ok way to work, just good to remember later as you build out a project.
(duplicating a few limiters with a long lookahead is a good way to see this)
Unfortunately, here lies a special quirk where adjusting track delays can also affect latency which requires adjusting track delays which affects latency which requires adjusting track delays which affects latency (...)
Delay Compensation
The only way I was able to get consistent timing that I could set and forget was disabling delay compensation which means you'd have to manage your tracks with audio delays (track delay is disabled when delay compensation is removed)
HOWEVER, if you do this, routing midi internally will add delays unless 'Keep Latency' is enabled on both tracks, but receiving direct from midicake will be on beat.
Delay Compensation: NO, Keep Latency: OFF
No Delay Compensation and Keep Latency Enabled Requires Clock Shift
This config is consistent for Midicake Input, and for internal ableton midi routing, but requires shifting the midiclock in ableton's midi settings.
Leading Chords
The end goal is to send a chord track out to midicake and get back four lanes. To ensure harmonies change on the downbeat, I had the most success by leading 5ms. Not sure yet how to do this without delay compensation.
Hopefully this helps anybody else out there navigating this, if anybody else has tips let me know!
Like