MIDI timing with external synths

Discuss music production with Ableton Live.
Post Reply
alveez
Posts: 4
Joined: Thu Aug 23, 2018 12:17 pm

MIDI timing with external synths

Post by alveez » Thu Aug 23, 2018 12:34 pm

Hi,

I use Ableton to send MIDI notes to a few external synths and the issue i run into often is that the timing of MIDI notes often does not match that of the recorded audio of the synth, generally the audio is a little *ahead* of the MIDI notes.

My setup: Ableton 10 on OSX, I use the external instrument plugin to send MIDI notes via USB to an E-rm Multiclock interface, which feeds a korg minilogue and an arturia microbrute and a couple of drum machines. Synths and drum machines are monitored externally through a mixer. The monitoring button in the Ableton audio channel where the output is recorded is accordingly set to 'Off'.

The Multiclock has helped dramatically to sync Ableton and drum machines (it does that task very well), but the timing of the synths is still not tight enough for snappy percussive synth sounds to sound in time with the rest. The part that is damning is that the gap between audio and MIDI is constant, it doesn't jump around, which presumably means it should be relatively easy to correct.

Any suggestions on how i could fix this? thank you.

Alvise

Stromkraft
Posts: 7033
Joined: Wed Jun 25, 2014 11:34 am

Re: MIDI timing with external synths

Post by Stromkraft » Thu Aug 23, 2018 1:20 pm

alveez wrote: I use the external instrument plugin to send MIDI notes via USB to an E-rm Multiclock interface
What value did you enter in Hardware Latency? What do you have in MIDI settings for that MultiClock device?
Make some music!

alveez
Posts: 4
Joined: Thu Aug 23, 2018 12:17 pm

Re: MIDI timing with external synths

Post by alveez » Thu Aug 23, 2018 11:02 pm

I have 0ms in hardware latency. As for MIDI settings:

Output
Track ON, rest off
MIDI Clock Sync Delay: 0ms
MIDI Clock Type: Song

Input
track ON, rest off
MIDI Clock Sync Delay 0ms
Sync Type: MIDI Clock
MTC Frame Rate: All
No MTC Start Offseta

MIDI notes are fed via USB from Mac to multiclock. I time sync the multiclock to Ableton via audio, not MIDI.

I just measured, the recorded audio is ~16ms *ahead* of the MIDI. That is also about the amount of overall latency noted in the Audio Preferences. I record the audio with monitor set to off.

Any suggestions or ideas are very welcome.

thanks!
Alvise

alveez
Posts: 4
Joined: Thu Aug 23, 2018 12:17 pm

Re: MIDI timing with external synths

Post by alveez » Mon Aug 27, 2018 7:55 pm

Bumping this thread! any help is greatly appreciated :) thank you

Angstrom
Posts: 14923
Joined: Mon Oct 04, 2004 2:22 pm
Contact:

Re: MIDI timing with external synths

Post by Angstrom » Tue Aug 28, 2018 12:54 am

Hi, I've run into similar problems although with a different setup. This may / may not be relevant to you, but I'm providing it in the slim chance it helps you or someone in future.

My solutions have been ... non-standard. That means they might break in future if a software update alters the functionality.
I have a BeastepPro doing midi to CV conversion from Live. The BSPalso programming drum patterns TO Live Drum racks(!) and the BSP is receiving a master clock from Ableton, AND the BSP is also sending out sequences as CV directly out to analogues. So there are multiple directions of data each with different latency requirements BSP -> Live , Live-MIDI>BSP->analogues and lastly the clocked BSP->analogues. All of that needs to sync with the audio streams of Live via automatic plugin delay calculations.

It was all out of time.
I could have Ableton play drum patterns and send midi to the CV converter and all would be in time, but if I then had the BSP play CV, or Play drums then there was latency. I could have one direction or the other in time.

Calculation of Solutions
I had to sit down with a big piece of paper and play with the parameters available on a grid, and test each by rending resampled outputs to the clip view and seeing if they were on the grid. By following the clues I figured out a way to get my MIDI in time. The parameters available are:

Device: External Instrument and Effect - Hardware Latency (ms)
Preferences : MIDI-> Arturia ->clock out latency offset (ms)
and the hacky part:
Preferences ->Audio Card -> Driver Error Compensation (manual )

I needed a latency offset which only affected the CV conversion of the MIDI in one of the cases. By using the Drive Error Compensation (which is intended for a whole other purpose) I managed to trick Live into offsetting my midi output, offsetting the clock against that, and got myself all perfectly in time.

Here are the timings I am using:

External Hardware : 15 milliseconds
Clock out offset : -15 milliseconds
Driver Error Compensation : -15 milliseconds

By doing this I solved my two way issue. Please note: this is not the intended purpose of the Driver Error compensation parameter, and I am using it as a "hack" to offset against the External Hardware out +15 ms.

I doubt this info will make sense to anyone, as it's a double negative trick to make my MIDI CV conversion have two different latencies depending whether Ableton or the BSP is sending the MIDI, but in the slender chance it helps somebody I'm posting it.

I had the nerdiest celebration when all my gear finally synced up.
My girlfriend really did not understand what the hell I was celebrating!

alveez
Posts: 4
Joined: Thu Aug 23, 2018 12:17 pm

Re: MIDI timing with external synths

Post by alveez » Tue Aug 28, 2018 12:45 pm

Hi Angstrom - thanks so much for this, greatly appreciate it. i will try it out tonight! I can strongly empathize with girlfriends not being appreciative of the elusive beauty of a perfectly sync'd setup...

Post Reply