Sub-millisecond delay for gate lookahead

GroupDIY Audio Forum

Help Support GroupDIY Audio Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.

atavacron

Well-known member
Joined
Jan 28, 2009
Messages
344
Has anyone found a good multichannel method for sub-millisecond delay? Not in a DAW!

In my case I need to take six analog channels in and spit them back out as analog a very short time later (ideally balanced on both ends), as a lookahead solution for the main audio heading into gates, when using the non-delayed signals into the keys to trigger. The best I can come up with is a simple ADC / DAC, free-running, with at least a couple of sample rate options (the RME ADI-8 DS comes to mind, as does the Apogee Rosetta 800). But maybe there’s an analog solution, or a prebuilt converter board that I could put two of in a box with a rotary switch and two DB-25s? (Yeah I know the Rane G4 has lookahead. Committed to analog gates because they’re already here.)

There are simple products marketed as “audio delays” for the broadcast industry, notably from RDL and Kramer, where you get millisecond steps above their normal onboard roundtrip latency, but you only get one option below 1ms. There are laboratory microsecond delays too, but very pricey and always mono. There are of course DSP mixers, but they all start around 1.5ms round trip.
 
You could use an inductor capacitor filter. But it would be a phase delay and not a time delay. For example, if you do CLC I think that's 90 degrees x 3 = 270 / 360 = 0.75 = 750us at 1KHz. But at 100Hz it would be 7.5ms. It would be balanced, distortion free provided that you use a high quality inductor that can go as low as you need and it has low insertion loss so you can get larger delays. For example, CLCLC would be 1.25ms at 1kHz. The inductors would have to be several henries and probably largish for low dist at LF. I'm just thinking out loud though. It's not something I have ever explored. Just theory.

However, whatever it is that you're doing, I have to wonder if it would work. One ms is a pretty short time. It's not obvious to me that you could do anything interesting in that time. LF audio cannot be meaningfully analyzed / acted upon in under 1ms.
 
'Loudspeaker management'

modern digital loudspeaker management systems have configurable delays and often 6-8 outputs ,but only two inputs generally 
Might get expensive if you needed 6 inputs , three boxes , Behringer do a cheap'n' cheerfull one.
Maybe a chat with Paul Gold might be worth while as he does use look ahead delays in his line of work (Vinyl cutting). Theres always more than one way to skin a cat , sometimes a different approach is better than banging ones head off the wall profusely :)
 
squarewave said:
However, whatever it is that you're doing, I have to wonder if it would work. One ms is a pretty short time. It's not obvious to me that you could do anything interesting in that time. LF audio cannot be meaningfully analyzed / acted upon in under 1ms.

I'm just trying to push the realtime audio back behind the opening of the gate, which would be keyed from the very same audio. Kick drum hits the key, gate opens, kick drum sound comes through.
 
JohnRoberts said:
back in the day we used all pass filters to create short delays for loudspeaker driver alignment... not as neat a digital delay.

JR

I was looking at the Linkwitz-Riley allpass, seems pretty simple, but I get hung up on calculating the values and the delay. Couldn't find a real world example circuit to use as a starting point – I'm not an EE. Kepex II gates have a usable range (for drums) between 20us and 600us. The goal would be to delay the input behind the key somewhere into the 80-200us range; that works best with the way the attack knob on this model is laid out.
 
Tubetec said:
modern digital loudspeaker management systems have configurable delays and often 6-8 outputs ,but only two inputs generally 

Right. Many types of crossovers, rarely just 6x6 or 8x8, never cheap at that number of inputs. For maximum overkill, I could stick a Lake in there.

You know what ARE cheap, though? Matrix and zone mixers with DSP. Finding one with a super low latency and adequate headroom, though...takes some digging. MiniDSP seems about right, and a Thomann version called "the t.racks". There's a Thomann 4x4 with TRS I/O for surprisingly little money – could use two of those. But they have hobbled it by giving it a +12dBu max input.
 
atavacron said:
I was looking at the Linkwitz-Riley allpass, seems pretty simple, but I get hung up on calculating the values and the delay. Couldn't find a real world example circuit to use as a starting point – I'm not an EE. Kepex II gates have a usable range (for drums) between 20us and 600us. The goal would be to delay the input behind the key somewhere into the 80-200us range; that works best with the way the attack knob on this model is laid out.
Any filter like an all-pass probably won't work either because it's a phase delay so it's only "delayed" at most 90 degrees per pole at the corner frequency. So for a kick drum at 40Hz, 90 degrees shift is actually 6.25ms. But note that at 40Hz you don't need an all-pass. A simple high pass would do. So you could literally just put a tuneable RC on an insert and feed the unfiltered signal into your gate and at the corner at least it would be delayed more or less depending on the corner frequency. Meaning adjust down and then sweep up until it gives you the desired effect.

Even a minimalistic digital delay line needs AD and DA conversion which requires a certain number of samples at whatever sample rate. Even really fast round-trip time is over 1ms.

But I'm still somewhat doubtful about what you're rationale is. You haven't explained what you're ultimately trying to accomplish exactly. Record a kick drum hit and zoom in on the waveform so that the timescale is 1ms. Then look carefully at the shape of the waveform and see that it's just a bit of a diagonal line with some DC. Now think about what your gate and whatever else you're doing is supposed to actually work.
 
squarewave said:
Any filter like an all-pass probably won't work either because it's a phase delay so it's only "delayed" at most 90 degrees per pole at the corner frequency. So for a kick drum at 40Hz, 90 degrees shift is actually 6.25ms. But note that at 40Hz you don't need an all-pass.
All-pass filters work as long as their characteristic frequency is above the highest signal to process.
In practice, a circuit with a characteristic frequency of 36kHz (that's the frequency where the phase-shift is 90°) introduces a delay of 12us up to about 10kHz and not less than 10us at 20kHz.
Producing 1ms of delay implies about 80 1st-order stages. Using 2nd-order stages would halve the number.
It's not an unconceivable task. Using low-noise opamps such as OPA1612 and low-impedance components, the noise and distortion performance would be compatible with typical analog performance of surrounding equipment.
 
atavacron said:
Has anyone found a good multichannel method for sub-millisecond delay? Not in a DAW!

In my case I need to take six analog channels in and spit them back out as analog a very short time later (ideally balanced on both ends), as a lookahead solution for the main audio heading into gates, when using the non-delayed signals into the keys to trigger. The best I can come up with is a simple ADC / DAC, free-running, with at least a couple of sample rate options (the RME ADI-8 DS comes to mind, as does the Apogee Rosetta 800). But maybe there’s an analog solution, or a prebuilt converter board that I could put two of in a box with a rotary switch and two DB-25s? (Yeah I know the Rane G4 has lookahead. Committed to analog gates because they’re already here.)

There are simple products marketed as “audio delays” for the broadcast industry, notably from RDL and Kramer, where you get millisecond steps above their normal onboard roundtrip latency, but you only get one option below 1ms. There are laboratory microsecond delays too, but very pricey and always mono. There are of course DSP mixers, but they all start around 1.5ms round trip.
Over the years there have been one or two commercial analog gate products with look ahead. AFAIK they used digital delay for the look ahead delay.

Digging back through the cobwebs of my mind what floats up for a very simple digital delay, search "delta modulation". A one bit digital conversion that is very cheap/simple. It basically involves a simple integrator and comparator that compares the output of the integrator to the input audio at a regular interval. If the audio is still above the integrator output the digital data is 1 for keep going up. If/when the integrator output is higher than the audio input it toggles direction to down for one sample/clock cycle.  This stream of digital up/down bits gets fed into a simple memory configured as a rotary buffer. The output of this buffer gets fed into another up/down integrator stage that decodes the audio. These days I would be inclined to manage the memory pointers for the circular buffers with a micro, but back in that day memory addressing was done with simple digital counters.

As long as the clock/sampling frequency is high enough sound quality is quite good. You can vary the delay with clock frequency and length of memory storage. You can make delays as short as one clock cycle, so as short as single digit microsecond neighborhood. Back several decades ago memory was relatively expensive, theses days not so much.

Modern micros may have enough internal ram to do the whole shebang inside.

Note: I am not encouraging this.... just sharing a possible technology solution.

JR
 
squarewave said:
But I'm still somewhat doubtful about what you're rationale is. You haven't explained what you're ultimately trying to accomplish exactly.

This might be a case of not knowing the right question to ask. How about this: How far back do I need to delay the main input signal so that the same signal triggering the key to open the gate will enable the gate's attack time (which starts at 20us) to not cause a click?

For reference, someone calculated that the Rane G4 does this by pushing back the input signal 300us behind the key input. So that is basically what I'm trying to do, shoehorn in that functionality to a rack of Kepexes.

Believe me, if I knew then what I know now, I would have just gotten two G4s. But most of the Kepex rack was free, so I'm working with what I've got. And I figured out a way of giving the key inputs their own bypassable parametric bandpass filters, and these gates send and receive CV, so I think this will be really cool once all is said and done.
 
atavacron said:
How far back do I need to delay the main input signal so that the same signal triggering the key to open the gate will enable the gate's attack time (which starts at 20us) to not cause a click?
Does the gate not already do this? I must admit, I have never used a gate but doesn't the kepex thing have an attack control? If yes, why does it not do exactly what you want already? Maybe the "click" is a lot longer than you think?
 
squarewave said:
Does the gate not already do this? I must admit, I have never used a gate but doesn't the kepex thing have an attack control? If yes, why does it not do exactly what you want already? Maybe the "click" is a lot longer than you think?
The idea is to delay the main signal in such a manner that the gate is fully open an epsilon of time before it reaches the main path. That is a very common concept; check look-ahead limiter. In limiters, the idea is that the gain reduction has already started when the signal hits the gain cell; this is to prevent any overshoot.
This has traditionally been done with analog all-pass circuits.
The dbx172 Supergate has a 7-stage 16th order APF.
The EMT266 broadcast limiter includes two 8-pole APF of 150us each. Schematic is in our Documents (page 13 of pdf manual).
There's a BBC monograph of the '50's defining the use of an analog (all LC) delay for transmitter limiting.
 
Ahhh, ok. I didn't understand what was meant by "click". So when the gate opens, the sudden change in level causes an audible click. So the idea is to open the gate before the signal actually reaches it.
 
squarewave said:
Ahhh, ok. I didn't understand what was meant by "click". So when the gate opens, the sudden change in level causes an audible click. So the idea is to open the gate before the signal actually reaches it.
That's exactly it. And also to prevent cutting the initial transients. The issue is for multi-miced sources, one has to apply the same delay to all, which implies a lot of money if you have to apply it to a full drum kit. That's why the technique has almost always been applied to individual sources or complete mixes in the past, but now doing it in a DAW is easy.
 
squarewave said:
Ahhh, ok. I didn't understand what was meant by "click". So when the gate opens, the sudden change in level causes an audible click. So the idea is to open the gate before the signal actually reaches it.
There are multiple sources of clicks.... in typical analog gates there can be a perturbation related rise time of the changing control voltage between a fully closed (VCA) gate and fully open.

Additionally if you suddenly switch on an audio waveform at anything other than a zero crossing, there will be HF click and DC component.  Analog gates depending on the VCA/gate technology used had different usable opening rates, etc.

Another design trick using to reduce the HF "click" from rapidly opening a gate is to use some old fashioned HF pre/de-emphasis... I used this trick in gates I designed last century. For this to mitigate clicks, you need to boost HF content in the audio path before the gate, then symmetrically roll off that extra HF after the gate, rolling off the click at the same time.  There is no free lunch but this comes pretty close, there will be a HF headroom cost as that pre gate HF boost comes out of audio path headroom.

I generally used 12 dB of HF boost/cut  with an EQ curve beginning the boost at around 500Hz and realizing the full +12dB of boost around 2kHz... After the gate a symmetrical roll-off EQ flattens the signal frequency response while audibly rolling off HF clicks. 

I still do not encourage using analog technology when we can do this so much better inside the digital domain, but amuse yourselves.  Design engineers who dealt with this stuff a long time ago did not have modern DSP tools available..

JR
 
JohnRoberts said:
I still do not encourage using analog technology when we can do this so much better inside the digital domain, but amuse yourselves.  Design engineers who dealt with this stuff a long time ago did not have modern DSP tools available..

There is an approach to this that I am investigating that involves A/D/Aing both the input signal and the gate key to keep them time aligned, but using a unit that has a single-sample delay adjustment per channel, thus enabling the key inputs to take a little more time in a very specific way. Most loudspeaker management solutions sit around 1.6ms before adding DSP, some are down to .9ms. A few have single sample adjust, which is ~10us at 96kHz or ~20us at 48kHz. This negates the need for an unrealistically fast converter. This also enables me to look at multichannel remote-controlled matrix mixers in a more practical way.
 
abbey road d enfer said:
The issue is for multi-miced sources, one has to apply the same delay to all, which implies a lot of money if you have to apply it to a full drum kit.

We generally use two mics per drum here, but since we try to use the same techniques whether going to tape or DAW, we sum each pair using console groups. Gates get inserted on those groups. Six gates are slated for "lookahead," so that should cover all but the most ridiculous drum kits.
 
Speaking about gating drums, an old studio trick to add some HF edge or snap to drum channels, is to intentionally adjust the noise gate to add a click when it opens.

JR   
 
JohnRoberts said:
Speaking about gating drums, an old studio trick to add some HF edge or snap to drum channels, is to intentionally adjust the noise gate to add a click when it opens.

JR 

Right...which is why I don't want to delay by 1.6ms, I want to delay by .3ms, because I still want to be able to access the (fortunately attractive) click on these units...
 

Latest posts

Back
Top