If you didn’t see last week’s post, go check it out! I have teamed up with Waves and it is pretty exciting!
As always I love really diving into the nitty gritty details of how things work. I wanted to do some latency testing with the Waves X-WSG & Waves SoundGrid to see how much delay using this system will add to the Behringer X32 & Midas M32.
Behringer X32 In/Out Latency
First off when we are talking about latency, what are we really talking about? In the Analog world, latency wasn’t as much of a problem because our audio would pass through a bunch of resistors, capacitors, and potentiometers (aka nothing that will delay the audio). In the digital world, the latency comes from conversions from Analog to Digital (A/D) and from Digital to Analog (D/A). It takes time for those IC’s to convert the voltage to 1’s and 0’s.
The Behringer X32 and Midas M32 have really low latency, in fact the total time to process from an analog signal to digital, process the audio internally with dynamics, eq, summing on busses, adding more dynamics and eq, then converting back from digital to analog to send to your PA is only 0.83 ms!
Input to Output with A/D & D/A Conversion Time
- 48kHz Internal Clock Rate: 0.83 ms
- 44.1kHz Internal Clock Rate: 0.90 ms
This time includes all of the internal, non ‘Effect Rack’, processing.
What about adding in the internal FX Racks?
When you add in and ‘insert’ an effect from one of the 8 internal FX racks of the Behringer X32 and Midas M32 you will add a bit of delay due to extra processing. This processing is dependent on which ‘effect’ you are inserting, but all of the effects range from adding 0.67 ms to 1.42 ms.
- Combinator: 0.67-0.71 ms
- DeEsser: 0.67 ms
- Enhancer: 0.67 ms
- Fair Compressor: 0.67 ms
- Leisure Compressor: 0.67 ms
- Sound Maxer: 0.67 ms
- Ultimo Compressor: 0.67 ms
- XTEC EQ1: 0.71 ms
- XTEC EQ5: 0.71 ms
- Wave Designer: 1.42 ms
So, when we look at this, if we added the Wave Designer as an insert to the snare channel, the total time it would take for the snare microphone to output the PA system would be 0.83 ms + 1.42 ms = 2.25 ms.
What about using the X-USB Card?
Now, what about using the X-USB card and then MultiRack Native or using my DAW (digital audio workstation) to insert VST plugins. This is an interesting idea and a lot of people have successfully used this setup when mixing their console at FOH. It is when you add in the use of monitors where this is not a good idea and let me explain why.
When you use a computer to process the audio, you have to have a buffer inside of the DAW or MultiRack Native. A really basic explanation of buffer is ‘the amount of signal that the computer will capture before processing it.’ The higher the buffer, the less processor load and the more stable the audio. However, the higher the buffer, the longer the delay will be.
Basically, you have to have a REALLY fast computer to be able to use MultiRack Native with a low buffer.
But even with low buffers of say 192 samples, this is still going to be 4.35 ms [ (192 samples / 48000 samples per second) x 1000 = 4.35 ms ] on top of the .83 ms of the mixer. So we are talking 5.18 ms of delay without ANY plugins even inserted!
This delay becomes a problem with monitors mainly. More so when those monitors are in-ears! Imagine singing into a microphone and then hearing yourself 5ms later. While it doesn’t seem like that much time, you WILL hear the difference between your ‘head voice’ and your ‘ears’ hearing the monitors. This delay can tend to cause off pitch singing, which is never a good thing.
If you are running FOH, having 5 ms of delay isn’t that much of a problem. Because it is like you just moved the band back 5 feet or so.
On a side note, when I last tried to use Waves MultiRack with my older computer I was needing to run a buffer of 512 to have no audio glitches which yielded 10.67 ms of delay.
Enter Waves SoundGrid!
Waves was able to overcome this latency issue by creating SoundGrid. I wish I knew exactly how it processed the audio so I could explain it, but it is pretty awesome! We can get a glimpse to how complex of a system it is by some of the explanations by Waves:
SoundGrid is a proprietary ‘Ethernet Layer 2 Protocol and EtherType’ Audio-over-Ethernet networking and processing technology developed by Waves. Audio is transported and routed between networked I/O devices and is processed on plugin servers connected to the same 1 Gbps Ethernet network. The I/O device converts SoundGrid packets to standard and proprietary audio protocol schemes.
SoundGrid runs on standard CPUs under custom-optimized Linux OS, resulting in predictability, stability and low latency that were previously exclusive to dedicated DSP-based systems. Consequently, SoundGrid can run hundreds of compatible Waves and third-party plugins in real time, as well as extremely CPU-intensive plugins that are beyond the capabilities of DSP-based systems.
Audio is interfaced with SoundGrid by integrating a SoundGrid-programmed FPGA (Xilinx Spartan 3) into a mixing console’s I/O ports. The FPGA receives I2S or other audio signal formats and converts them to the SoundGrid format. The FPGA is also used to transfer control messages between control nodes external to the SoundGrid network and the SoundGrid control application.
In my testing, I ran two configurations and tested the console running at 48 kHz sample rate and 44.1 kHz sample rate. The two configurations were:
- Running audio from the X32 Local XLR Input, directly into X-WSG, processing in MultiRack SoundGrid, Output of MultiRack going into the X32 Channel Strip.
- Routing>Card Out: Expansion Card Outputs 1-32 -> Local 1-32
- Routing>Home: Inputs 1-32 -> Card 1-32
- Running the Waves X-WSG as an ‘Insert’ on the Channel
- Routing>Card Out: Expansion Card Outputs 1-8 -> Aux 1-6/Mon
- Routing>Home: Aux In Remap -> Card 1-6
Waves X-WSG Latency as an Insert
Running the X-WSG as an insert worked really well! You are able to insert up to 6 racks using this configuration and basically select the channels you want to run Waves Plugins on.
As a reminder, inserts are set by selecting the channel, then pressing ‘view’ on the Preamp/Config section, then taking the 6th rotary knob down to the appropriate Aux channel to insert.
Waves X-WSG Latency as Insert:
- 48 kHz Sample Rate: 2.02 ms total
- 44.1 kHz Sample Rate: 2.19 ms total
A latency of 2.02 ms! If we take out the 0.83 ms the board has for A/D and D/A that means that Waves SoundGrid only added 1.19 ms of additional delay. If we do the math, that is roughly 57 samples of delay. ( 1.19 ms / 1000 ) x 48000 samples per second = 57.12 samples
Waves X-WSG Latency for ALL 32 Channels
I then tried using the Waves X-WSG with all of the inputs going directly into MultiRack SoundGrid and then back into the board. This is a great way of letting MultiRack have access to all 32 channels on the board.
Waves X-WSG Latency running directly through:
- 48 kHz Sample Rate: 1.69 ms total
- 44.1 kHz Sample Rate: 1.83 ms total
1.69 ms minus the 0.83 ms of the X32 digital conversions gets us 0.86 ms of delay added by processing ALL 32 channels!!! That is INSANE! That is roughly 41 samples of delay. ( 0.86 ms / 1000 ) x 48000 samples per second = 41.28 samples.
Plugin Latency
Another area that we have to be careful on is how many plugins we are using on each channel. Because of the extra processing, each plugin does to the audio, each plugin will have a differing amount of delay that it will induce on the audio signal. What is impressive is how low the latency that SoundGrid provides, but if we stacked multiple plugins with lots of latency, we can really create a problem for ourselves!
Waves is really transparent in documenting this latency on their Plugin Latency support page.
To save you an extra mouse click, here are a few of my favorite plugin’s latency in samples:
- Waves API 2500 Compressor: 0 samples
- Waves C6 Multiband Compressor: 67 samples (1.40 ms @ 48 kHz)
- Waves CLA-2A Compressor/Limiter: 0 samples
- Waves CLA-3A Compressor/Limiter: 0 samples
- Waves CLA-76 Compressor/Limiter: 0 samples
- Waves SSL E-Channel: 1 samples (0.02 ms @ 48 kHz)
An SSL for an X32?
By all means, you can’t make an X32 into an SSL by just adding a plugin. But to show the awesomeness of SoundGrid with the X-WSG, you could put an SSL Plugin on all 32 channels inside of Waves MultiRack SoundGrid.
The crazy thing is here is due to how efficient of a plugin this is, you will still have PLENTY of DSP left on your Impact Server AND only induce a total of 0.88 ms MORE of latency to the audio chain by having all 32 channels have an emulation of the EQ, Compressor, and Gate of an SSL.
Routing Tutorials Next Week!
Next week, I will be diving into all of the routing options, so stay tuned for that! Also, just a reminder that if you are thinking of purchasing anything from Waves, click through this link you will get 10% off on new Waves Plugins & Bundles!