Setting Buffers and Latency for your Audio Interface
This is an important step in setting up your DAW, and many musicians new to digital hardware may not be aware of its significance. When you attach a sound card (audio interface) to your computer, you will have the option of setting buffer sizes, which will directly affect the latency of the signal through your interface.
Audio Wiring Delay
A buffer is a section of memory which the computer uses to store audio segments (buffering) before passing them on to their destination – if you are recording, this means writing to the hard disk, and if you are playing back, sending the audio to the audio output so you can hear it. Buffering is required to allow the processor time to do other things, such as running the OS and any other programs that might be active. If you have a small buffer, the processor needs to come back to fill and empty it much more often, which means it has less to time to do other things (such as audio effect processing and plug-ins). If you have a large buffer, less demand is placed on the processor, but latency then increases correspondingly.
Balancing Your Sound Buffers
You can set your buffer size from within the program you are using to make music – usually in the options or preferences menu, under audio setup. As a general rule, you should be using the ASIO drivers that came with your sound card – for example, if you have an M-Audio sound card, you should choose the M-Audio ASIO drivers rather than the DX Primary Sound Driver.
At 44.1khz, a 1024-sample buffer size should produce a latency of 23ms. If you play something on your MIDI controller and find that it works perfectly well, then there is probably no need to decrease the buffer size. If the slight delay bugs you, then try a 512ms buffer, and so on. Don’t set the buffer lower than you need to, as this only causes the processor to do extra work that you could be using for other things. For more details on buffering and latency, check out Martin Walker’s article at Sound on Sound.