Record Delay Compensation

I have an HDX rig that I use for IO with Cubase 11 via CoreAudio.

When playing with VI’s, I was finding the latency I was experiencing regardless of buffer settings to be a bit high. So I thought I would do some tests. I used the RTL utility to test the IO directly and got some strange results, so I launched ProTools, turned off delay compensation and recorded out to in to see what I was getting. the result was 76 samples at 48k and half that (predictably) at 96k. So roughly 1.5 ms for the former and less than a millisecond for the latter. So I quit ProTools and launched Cubase at 96k, 256 buffer size. Put some audio on a track and routed it out to in and recorded the results. Except at every sampling rate, I got absolutely no delay - which means that the system is compensating automatically (as the manual says it does, compensating for the reported latency of the interface). And I thought, okay, that’s great, but I need to see what the actual passthrough is when using CoreAudio - since the Avid drivers are suspect here. (They are suspect because I can use my Grace m900 USB IO - a glorified headphone amp, though a very nice sounding one - and use smaller buffer sizes with VI’s than if I’m using the Avid stuff. )

I turned off ASIO delay compensation and found that my RTL was 2108 samples (22ms). Empty session but for two audio tracks; no inserts anywhere or on Control Room; and 1254 (13ms) samples when I turned off Control Room. Cubase reports 8ms in and 8ms out, but that’s a different number when added than 13ms. At 128 buffer at 96, the delay is 11ms.

Can anyone help me account for all this? Could Avid’s CoreAudio drivers be that bad?

Please no “Avid sucks and that’s why I blah blah” posts - I’m looking for science here.

Yeah, this is a strange thing, trying to understand this.

After reading so many opinions on the subject and watching so many YT videos I came up with something. You talk about VSTi so I will assume your concern is aligning your performance up with a prerecorded track? In other words you playback the recorded track and record your VSTi onto another track - and then see that the two tracks don’t line up?

Before I continue down this rabbit hole, is this what you are talking about?

It’s kind of two things here.

I don’t mind if Cubase is able to compensate for latency in playback of recorded tracks. In other words, if I record the output of a track going out of a physical output back to a physical input and they are phase-aligned, that’s a good thing - that’s what is supposed to happen, and if ASIO latency compensation is on then it works.

What has me going down this rabbit hole is that the latency I get when using Cubase with VI’s in realtime is longer than I expect it to be. Longer than it ought to be with settings that I use. That’s what started me measuring things.

So I first wanted to measure what the RTL using the CoreAudio drivers for the HDX/HD|IO was as opposed to using Pro Tools itself. I figured PT would be the best at directly addressing its own hardware, and this is partially true - from a simple audio recording stand point. It’s whenVI’s get involved that things change. I’m aware of the layer of processing involved when using host power with an HDX system. But what happens with PT is that big sessions with VI’s kind of beat up ProTools. Maybe because of the host-to-dsp bottleneck, but there it is. There are workarounds, but I found them grievous when trying to get through a massive show rapidly. And given that PT is an audio app that does MIDI rather than a MIDI app that does audio, like Cubase, its feature set is lagging behind Cubase for that and many other reasons. And Cubase has their system of ASIO guard - a dual buffering scheme that allows for lower latency on VI tracks in record - that is somewhat more compelling than how PT handles things.

So my issue is that the Avid CoreAudio drivers seem to be less efficient than other drivers, perhaps because of the extra hardware layer (in spite of the speediness of the PCIe protocol). I base that on two things:

  1. that a “lesser” interface - USB - is better at handling large sessions. I know this because sessions that required 1024 buffer size when using the HD drivers in ProTools would allow smaller buffers when I switched to using a Grace m900.

  2. That when I turn off latency compensation in Cubase, doing an out-to-in recording using HD hardware results in 11ms of delay, but when I do the same in PT, it’s far less than a millisecond.

My ultimate priority is reducing delay when playing back virtual instruments, both just playing back tracks and when in record. What it seems like is that when I use Avid Core Audio I’m getting at least 10ms added to my baseline latency.

It also seems that when setting up individual track offsets (the kind of thing you do so a snare or staccato violin falls right on the beat with the click, so your music is tight and focused and hits things in picture how you want) that the negative delay one needs has increased. This could be due to Kontakt - except the same behavior appears in other instruments, so I think it’s more likely to be Cubase 11 doing that. And that is a separate, or should I say comorbid, problem.

I’m preparing to face two things - getting an audio interface that can do both the Avid protocol and Thunderbolt/USB/Dante so I can switch, and getting a new crazy expensive computer and attacking this with brute force. And of course I want to do the second one anyway. But sonically I am very happy with the HD|IO. Not overly excited about hoping that say the Focusrite 16Line will sound as good, though it sure has the features, or using the very nice Aurora 16 instead- I used to have one, and it was a very nice piece of gear, but I prefer the HD|IO. I could just get a second IO for composing but a downgrade in sonics isn’t worth it to me - just changes the way I feel about a track while I’m working on it, you know? And I would have to change my monitoring situation. Would rather get this one to behave. (The Carbon is not really an option for various reasons and the MTRX is way beyond what I want to do.)

Does that clarify?

It does.

In Cubase 11, did you know you can set up your metronome to record itself, to create a track of it’s own?
Here: create an empty Project. Space your Project locators, maybe 50 bars. Then click on the Project tab and go down to ‘Signature Track’. Then click on ‘Render an Audio Click between locators’.

If you’ve done this before, sorry to tell you something you might already have done but I find that playing to the click track and matching the VSTi track to the click is the best way to see what’s happening. So create a Midi track and record your playing, all the while trying to try to hit on the click. Expand the two wave files and see how close you are.

I’ve got to run but I’ll be back later tonight. I will add that when you say ‘when ASIO latency compensation is on then it works’, I would disagree.