Latency – A Brief Guide
Latency is, put as simply as possible, the delay between something happening and it becoming apparent that it has happened. In the audio world, it’s the time difference between you pressing a button and the sound that button makes becoming audible, and it’s measured in milliseconds (ms). It stands to reason that the more latency there is between that button press and the resultant audio, the less accurate you can be with your control of when that audio sounds, but how much latency can we put up with before our performance is affected?
There are a few common misconceptions about audio latency that we’ll debunk now:
- Hardware has lower latency than software. An increasing, and incorrect, opinion is that analogue/digital is analogous to hardware/software. Whilst its true that analogue equipment doesn’t really have discernable levels of latency, any digital equipment will have to contend with latency in its architecture.
- Macs are better than PCs. It’s true that straight out of the box Macs tend to be easier to set up. The built in support for music hardware in their operating systems is stronger in OSX, but most audio hardware will have ASIO drivers – a third party driver system that allows direct and low latency connection between the system and the audio – written for it for use in Windows. ASIO provides comparable and sometimes even better latencies than OSX’s CoreAudio drivers.
- Any latency is unacceptable. Latency is almost totally unavoidable for one very simple reason: the speed of sound is a bottleneck. As a very rough calculation, every foot you travel from a sound source will add 1ms latency to your setup. Are your monitors ten feet away from you? Then you’re looking at 10ms latency before you even start to factor in latency introduced by your equipment.
Those three little factoids out of the way, it’s time to look at the major sources of latency you’re likely to encounter in your conquest to rid your system of as much as possible:
- MIDI. MIDI is digital data; it’s largely down to the drivers in your system as to how it’s handled. The good news is that MIDI, having been around for 30 years or so, has been pretty much mastered by manufacturers, and latency added by MIDI processing tends to be <2ms.
- Digital Sound Processing. Analogue systems create next to no latency – the electrical signals just zap through them at about two thirds of the speed of light. Digital systems on the other hand have to convert audio into digital information, process it, and then convert that information back into audio. This is a pretty big part of the latency you’ll experience with your system, and there are two areas that will make a difference: the audio interface and your computer. Efficiently constructed audio interfaces will feature low latency conversion hardware, and efficient drivers will reduce the amount of time it takes for the converted signal to communicate with your computer down to less than 2ms. At the computer end, the efficiency of your software at dealing with audio and the power of your hardware at creating that audio stream is vital to overall latency levels. Because it’s not possible to guarantee that there will be a zero percent error rate in a signal, the software creates a buffer to ensure that any errors can be corrected before they reach the critical stage without interrupting the audio stream. The smaller this buffer, the lower the latency. A buffer of 32 samples at 44.1kHz will theoretically create a latency of 0.72ms (44.1kHz/1000 = 44.1 samples/ms. 32/44.1 = 0.72ms). At 88.2kHz this is halved, but the processing power required to calculate the higher sample rate is increased.
- Interfaces. USB and FireWire are the two most common interfaces used for external connections and both introduce a small amount of latency as they syncronise with the main system. FireWire has a more efficient method of sending data than USB and so is capable of less – and PCI is to all intents and purposes latency free, but until Thunderbolt it is an internal connection only.
- The speed of sound. I mentioned it earlier – the speed of sound is a significant factor in perceived latency. At room temperature, in dry air, the speed of sound is 340.29m/s at sea level. That translates to more or less 1116ft/s, or 1.1ft/ms. Move 22 feet away from your speakers, and you’re hearing sound 20ms later compared to what you hear in your headphones, which puts the 1ms you get from MIDI latency into perspective.
THE REAL WORLD
So real world latencies might look something like this – imagining we’re four feet away from a monitor speaker:
- Analogue turntable, vinyl, analogue mixer: 4ms speaker distance.
- Analogue turntable, timecode vinyl, analogue mixer and Traktor Scratch running at 64 sample buffer at 96kHz: 1ms USB bus buffer + 1.5ms conversion of timecode audio to digital signal + 0.66ms sample input buffer + 0.66ms sample output buffer + 1.5ms conversion of digital audio to analogue +1ms USB bus buffer + 4ms speaker distance = 10.3ms.
- MIDI controller, audio interface, Traktor running at 64 sample buffer at 44.1kHz: 1ms MIDI + 1.45ms sample buffer + 1.5ms conversion of digital audio to analogue +1ms USB bus buffer + 4ms speaker distance = 9ms
The values are all approximates, but as you can see, MIDI control has the advantage of not having an input stage. If the above examples were toe to toe in terms of sample rate then there would be even less latency in the MIDI controller setup. USB buffer times are fairly approximate, and in bad scenarios can be much higher, too. With a less powerful computer, you’ll have to increase your sample buffer whilst lowering your sample rate, which will increase latency. Add to that the fact that you might be further away from your monitor (or might not even have one… the horror!), your mixer may well have digital stages that eke up the latency by a further ms, you may be using CDJs – which add their own tiny amount of latency – with timecode, and it all starts to really mount up.
ON THE BRIGHT SIDE
The good news is that our heads… well, most of our heads, are a lot more clever than we sometimes give them credit for. Latency of less than around 15ms is only disorienting for a few seconds before we get used to it; whilst we may sort of notice it’s there, we don’t have to think about adjusting for it. As long as we can keep latency in our systems to a minimum so that we don’t end up compounding what would be an acceptable speaker distance latency for analogue systems, our performances won’t be affected.