Best Practices for Compensating D-A-D Latency

Recording Techniques, People Skills, Gear, Recording Spaces, Computers, and DIY

Moderators: drumsound, tomb

Post Reply
User avatar
I'm Painting Again
zen recordist
Posts: 7086
Joined: Wed May 07, 2003 2:15 am
Location: New York, New York
Contact:

Best Practices for Compensating D-A-D Latency

Post by I'm Painting Again » Fri May 01, 2015 3:23 pm

I'd like to start working in a way where I send out instruments or groups in stereo to process with analog gear then resample back into the ITB project.

In my few attempts/experiments so far I've encountered some latency that pushes the re-recorded track out of time/phase and makes the blended result sound terrible on playback. Like when I tried to achieve a parallel compression of a drum group for example.


For anybody working this way how are you making it happen?

drumsound
zen recordist
Posts: 7474
Joined: Tue Jun 01, 2004 10:30 pm
Location: Bloomington IL
Contact:

Post by drumsound » Sat May 02, 2015 7:16 am

Most DAWs have delay compensation. If that doesn't work, you can nudge, or hopefully get an accurate time spec from the converter company and shift things by that many ms after printing.

User avatar
vvv
zen recordist
Posts: 10139
Joined: Tue May 13, 2003 8:08 am
Location: Chi
Contact:

Post by vvv » Sat May 02, 2015 8:43 am

I try to put a sharp clear hit of some kind with a big transient (like a click) on the front of the first version of the and record it on the second version.

Then, I line it up visually in the box, and sometimes double-check by phase-inverting and seeing if the click cancels - the visual is usually accurate enough ...
bandcamp;
blog.
I mix with olive juice.

User avatar
Recycled_Brains
resurrected
Posts: 2346
Joined: Tue Nov 22, 2005 6:58 pm
Location: Albany, NY
Contact:

Post by Recycled_Brains » Mon May 04, 2015 7:56 am

it's a pain. haha.

I use hardware inserts in Pro Tools... my method is to route the output of the track with the insert on it to another track, record a brief section of whatever instrument I'm running through the outboard with the outboard in bypass... Then I look at the offset between the track I just ran in/out as compared to the original track, and find out how many samples off it is. THEN, I create a duplicate playlist of the original track, and name it [for example] "Snare.N" ("N" for nudge) and nudge the regions in that playlist back the amount of sample delay I determined was being incurred. After that, just change the output of the track with the insert on it back to go to your master buss, and proceed.

I actually doesn't take that long, and the cool thing is that once you figure it out, the sample delay will likely be exactly the same for anything, so just nudge accordingly. I always do the nudging on a duplicate playlist though, so that if I decide to not use the outboard on that track, I can switch back to the un-nudged playlist and nothing is out of whack.
Ryan Slowey
Albany, NY

http://maggotbrainny.bandcamp.com

User avatar
trodden
on a wing and a prayer
Posts: 5651
Joined: Wed May 07, 2003 8:21 am
Location: C-attle
Contact:

Post by trodden » Tue May 05, 2015 8:58 am

Recycled_Brains wrote:it's a pain. haha.

I use hardware inserts in Pro Tools... my method is to route the output of the track with the insert on it to another track, record a brief section of whatever instrument I'm running through the outboard with the outboard in bypass... Then I look at the offset between the track I just ran in/out as compared to the original track, and find out how many samples off it is. THEN, I create a duplicate playlist of the original track, and name it [for example] "Snare.N" ("N" for nudge) and nudge the regions in that playlist back the amount of sample delay I determined was being incurred. After that, just change the output of the track with the insert on it back to go to your master buss, and proceed.

I actually doesn't take that long, and the cool thing is that once you figure it out, the sample delay will likely be exactly the same for anything, so just nudge accordingly. I always do the nudging on a duplicate playlist though, so that if I decide to not use the outboard on that track, I can switch back to the un-nudged playlist and nothing is out of whack.
Yeah, playlists are priceless for this type of nudgery. Especially if there's a chance that it will need to be remixed later on, either with a different technique or a different engineer.

User avatar
Randyman...
takin' a dinner break
Posts: 186
Joined: Sun Mar 04, 2012 8:30 pm

Post by Randyman... » Wed May 06, 2015 3:33 pm

Even when dealing with "Sample Accurate" timing in a DAW, the AD/DA chips will often times have delays that are NOT EXACT MULTIPLES OF 1 SAMPLE! The oversampling happens at many times the base samplerate, so ending up with a nice round result with no remainder is unlikely. I believe a few chips *might* account for this and allow sample-accurate adjustments to be possible, but I don't believe that is commonplace.

So, even if you are "Sample Accurate", a DA/AD loop will not likely line up 100% with the original digital track. It will obviously be less than 1/2 sample off, but that can still cause slight issues when re-combining with the pure digital track.

This is only a potential issue for parallel processing.

One way to get around this is to send duplicates of your desired track through an identical DA/AD loop but with no extra processing. So your "Effected" chain goes through the DA/DA including whatever processing you are adding. Then, your "DRY" chain also passes through an identical DA/AD loop. Then you mix the effected version with this dry DA/AD version, and you are assured to have perfect timing accuracy from the dry to the effected versions of the track (the re-recorded "Dry DA/AD" version replaces the original version in the project).

Nit picking, but it can make a difference...

:cool:
Randy V.
Audio-Dude / Musician / PC Guru / Crazy Guy

User avatar
I'm Painting Again
zen recordist
Posts: 7086
Joined: Wed May 07, 2003 2:15 am
Location: New York, New York
Contact:

Post by I'm Painting Again » Thu May 07, 2015 7:42 am

Thanks for the ideas everyone..I'll try some of them out come mix time next week..

honkyjonk
dead but not forgotten
Posts: 2182
Joined: Wed May 07, 2003 10:50 pm
Location: Portland

Post by honkyjonk » Tue May 26, 2015 10:17 am

Good discussion!

Randyman,

I don't know if I get what you're saying. What you describe in that last paragraph is what I've been doing, that is, passing the dry track out and back into the converters allowing it to align with the processed parallel track.

In the first paragraph though, are you saying that the same converters won't always have the same exact amount of latency on different passes?

I've been wanting to invest the time to learn the exact latency that my converters exhibit (if it is exact every time. I have an older Otari Radar II)

I use Reaper, and I'm imagining there is some kind of key command I can set up for adjusting a wave form to offset by that exact amount, which would save an extra bounce of the original track.
Stilgar, we've got wormsign the likes of which God has never seen!

MoreSpaceEcho
zen recordist
Posts: 6671
Joined: Wed May 07, 2003 11:15 am

Post by MoreSpaceEcho » Wed May 27, 2015 4:52 pm

honkyjonk wrote: I don't know if I get what you're saying. What you describe in that last paragraph is what I've been doing, that is, passing the dry track out and back into the converters allowing it to align with the processed parallel track.

In the first paragraph though, are you saying that the same converters won't always have the same exact amount of latency on different passes?
not randyman, but if you rerecord the dry track at the same time as the processed track you are guaranteed that they'll line up exactly.

have the track panned center, send to DA, left side goes to AD, right side goes to black boxes then AD. easy!

keep in mind that at 88.2, if your files are 1 sample off from each other, the cancellation will be at 44.1, which probably won't hurt anything. 1 sample off at 44.1, the cancellation's at 22.05, which may or may not be a big deal.

2 samples off at 44.1 is murder. MURDER.

honkyjonk
dead but not forgotten
Posts: 2182
Joined: Wed May 07, 2003 10:50 pm
Location: Portland

Post by honkyjonk » Thu May 28, 2015 9:50 am

Yeah,

That's what I've been doing already because I'm too lazy to investigate a different method.

But you're adding an unnecessary conversion of the dry track.

My real question was, is latency not always the same? (thinking in terms of my Radar II here. But it should apply to DAW's too as long as I have the same latency setting all the time in the software?)

So, once you determine what the latency is, can't you set up a function that would time slip the dry track just that amount, and quickly line it up?

Or am I to understand that latency differs slightly even with the same latency setting? That would be a "whoa dude" moment if that's true.
Stilgar, we've got wormsign the likes of which God has never seen!

MoreSpaceEcho
zen recordist
Posts: 6671
Joined: Wed May 07, 2003 11:15 am

Post by MoreSpaceEcho » Thu May 28, 2015 11:34 am

yeah, that i don't know.

i do know that when recording into wavelab, it doesn't always put the new file in the same place. sometimes it varies a lot. but no one else uses wavelab for mixing, so that's mostly irrelevant.

be easy enough to test this with reaper or whatever, wouldn't it? run a track out and in 5 times, zoom in on the processed files and see if they vary?

also, i should add that i've lined up OTB-processed tracks with the dry tracks loads of times and it was always fine. if they were off by some sub-sample amount i couldn't hear it. worth investigating if this problem is really a problem for you.

ashcat_lt
tinnitus
Posts: 1094
Joined: Thu Jan 04, 2007 1:54 pm
Location: Duluth, MN
Contact:

Post by ashcat_lt » Thu May 28, 2015 1:29 pm

Newer versions of PT are supposed to include latency compensation for hardware loops like this. You'd have to RTFM to figure out how to set it up. Some other DAWs do this, too. Reaper has a plugin called ReaInsert which also will do it. Basically, the program sends a "ping" out the DA, measures how long it takes to get back through the AD, and reports latency to the DAW so that it does its automagical correction correctly.

User avatar
Randyman...
takin' a dinner break
Posts: 186
Joined: Sun Mar 04, 2012 8:30 pm

Post by Randyman... » Sat May 30, 2015 1:00 pm

I believe the problem is not drift (offsets *should* remain constant for a given converter - excluding jitter - more on that at the end :) ), but the inability to EXACTLY compensate for the AD/DA's delays.

A Converters' inherent oversampling results in delays that are not whole samples (due to said oversampling), and the ASIO Driver is reporting offsets to the host at a sample-level resolution.

I was under the impression that a DAW can only work at the sample level as its smallest unit of time. But I've seen some DAW's that let you specify delays in 0.00ms increments (0.32ms or 0.33ms for example - milliseconds to the hundredths decimal place). This appears to have more resolution (more granular) than adjusting by an entire sample at a time. Still a little confused by this (how can a DAW that uses a sample-based wordclock shift a sample in-between samples? Via a Resampling process perhaps?)

So if you have the ability to measure your DA/AD loop down to the 0.00ms resolution (like Cubase/Nuendo can assuming your ASIO Driver + Converters report positive delays), you might be able to get a "tighter sum" than relying on the reported ASIO driver offsets alone (based off whole samples).

But I'm still not 100% sure a "Perfect Sum" across a dry digital track and a DA/AD re-recorded track is ever possible even with 0.00ms delay resolution.

Your current method of re-recording the dry track (replacing the original) is likely the only way to be 100.000% phase locked (as much as you can be considering the "Wet" track is likely to have some phase smear from the additional analog processing).

MC over at the RME forums also suggested re-recording the dry being the only way to maintain 100% phase lock with a parallel process.

One other thought experiment:
Consider the original "Dry" pass was recorded with that specific ADC clock and associated PLL jitter. That unique jitter profile is printed into that track. When you play the track back, the "Wet" DA/AD loop will have a slightly different jitter profile (jitter is "printed" anytime you record through an ADC). This alone could cause some minor summing issues IMO - even if you were EXACTLY phase locked through the wet AD/DA loop.

By re-recording both the wet and dry, they will both share a common jitter profile (unique jitter fingerprint if you will) and sum accordingly.

:cool:
Randy V.
Audio-Dude / Musician / PC Guru / Crazy Guy

User avatar
I'm Painting Again
zen recordist
Posts: 7086
Joined: Wed May 07, 2003 2:15 am
Location: New York, New York
Contact:

Post by I'm Painting Again » Sun May 31, 2015 9:27 am

I'm really glad all of you have started a great discussion. I've learned a few things here and that's fantastic.

Happy to report I've successfully used an ADDA loop (without dry tracks reconverting) twas in a reamping session after the initial basic mix so I still have to try it on something where it might matter more like drums but it's looking good for some things for sure.

Post Reply

Who is online

Users browsing this forum: No registered users and 64 guests