This article explains buffer sizes and latency, including how different sample rates have an effect on them.
When you are recording audio with your interface, you might notice a slight delay in the audio coming back to you. This delay is because the computer needs time to process the audio and route it back out of your interface.
Part of the time this takes is the 'buffer size', which you can set yourself. You can adjust the buffer size for your needs. Using a lower buffer size (and therefore getting less latency) gives your CPU less time to process the audio and therefore the CPU must work harder to process the audio in time.
- Lower buffer size - lower latency but a higher chance of glitches/drop-outs.
- Higher buffer size - higher latency but more stability with the audio signal.
The goal is to find a buffer size that is low enough that your CPU can handle it before it has to work too hard. You will notice when it's working too hard because there will be problems with the audio, such as crackling, stretching and dropouts.
To reiterate, when setting your buffer size, what you are doing is giving the CPU of your computer a period of time to process audio, before it is passed to and from the interface and the recording software.
A higher buffer size creates a longer latency, a lower buffer size creates a shorter latency.
We measure latency in milliseconds. Depending on the interface, the buffer size is set in either samples or milliseconds.
A buffer size that is set in samples equates to a certain amount of time, but that amount of time is dependent on the sample rate (the number of samples recorded per second). The higher the sample rate, the less time (milliseconds) that the buffer size equates to.
If you have set a buffer size of 512 samples. The amount of time (milliseconds) 512 samples equates to, depends on how long it takes for 512 samples to be processed.
- At higher sample rates, there are more samples per second and therefore 512 samples is a shorter period of time.
- At lower sample rates, there are fewer samples in a second and therefore 512 samples is a longer period of time.
If you set your buffer size in milliseconds and not samples, then you are controlling the overall latency in time, The buffer is adjusted for each sample rate so that you always get the latency that you have set in milliseconds.
On a Mac system, the buffer size is set in your DAW - often in the Audio section of the Preferences page (DAWs may vary).
On a PC system, the buffer size is set either in Focusrite Notifier, or the Audio Control Panel.
How much latency is too much?
To get an idea of how long one millisecond is, it's best to give some real-world examples you might be familiar with*:
The time it takes for the sound of a snare drum to reach a drummer's ears, is about 2.1 milliseconds.
If two people stand at the opposite ends of a bus (assuming its maximum length of 15 metres), there is a 43-millisecond delay when they speak (or shout) to each other.
- If you're sat 1m (just over an arm's length) from your speakers then the latency between the sound from your speaker and your ear is 3.4ms.
* These examples assume that the speed of sound in air is 343 m/s.
Why can I still hear latency?
The latency that you set using your buffer size (and sample rate) is not the latency that impacts the sound by the time it reaches your ears. Other sources of latency include:
- Some plugins
- Some computers have more, or less, latency than others.
- USB hubs, the performance may suffer and you may need a higher buffer size.
Generally, the better a computer is, the less latency it incurs on its own, but this depends on the condition of the computer, and its load at the time. This is another reason to keep your computer in good order. Have a look at our optimisation guides to help keep your computer running well:
Zero/Ultra-Low Latency Tracking and Direct Monitor
Our interfaces offer Zero, or Ultra-low, Latency tracking and Direct Monitor options to further help the issue of latency as much as possible.
The term 'Ultra-low' is used as audio interface hardware/firmware induces a negligible amount of latency. We'll use the term 'Zero-latency' to avoid confusion.
Custom Mix Zero-Latency
Zero-Latency Tracking is often a Preset in Interface Control Software.
This preset assigns a Mix (Custom Mix in Focusrite Control) to each of the interface's analogue outputs.
By default, a Custom Mix is a combination of analogue inputs and DAW 1/2, mixed together. The analogue inputs represent a direct feed from the inputs.
By assigning Custom Mix to the outputs, inputs route straight to outputs, meaning that you can monitor your recording source (whatever you have plugged into the inputs) without that audio being passed to the computer first. This means you can hear yourself without latency from the computer having to process the audio. Custom Mix also contains DAW 1/2, so that you can hear any backing track.
Direct Monitor, which is available on our interfaces that do not have Control software, offers the same feature as the above.
When using Direct Monitor you hear the audio from your recording source before it is passed to the computer, again without input latency in the same way as above - you will however still hear audio passed from the computer regardless.
To Avoid any Doubling Effect
When using zero-latency features, we recommend you mute the channel you are recording into in your recording software.
If you do not do this, then you may hear a 'doubling effect' or echo. This is because you hear the direct sound (before it is passed to the computer) and you hear the same audio that has been processed by the computer afterwards.
Muting the track you are recording into prevents this, as you hear just the recording source directly.