Skip to main content

So what are buffers all about, my audio card allows me to set a ASIO/WDM buffer size in "samples". is higher or lower better?

Im currently defaulted to 64 samples buffer size, haven't had problems with that ever, but which will create higher quality? Lower buffer size or higher buffer size?

I got options of 64, 128, 256 follow the pattern. Got any info you can educate me on this feature?

Topic Tags

Comments

apstrong Tue, 09/08/2009 - 00:41

Buffering has almost nothing to do with quality and everything to do with latency (http://en.wikipedia.org/wiki/Audio_latency). If you are experiencing no problems with your current buffer sizes, leave them where they are. If you experience audio drop outs (computer can't keep up with the audio data coming in) then you can increase the buffer size to help it to process the data without dropouts, although this will also increase latency. Higher or lower buffer sizes won't make any difference to the quality of what your record, except in the sense that if they are too low, your computer will choke on the incoming data, you'll get dropouts, and that will sound like crap. And if they are too high, the latency will translate into delay that can throw off your playing/singing while overdubbing. So if you aren't having problems with dropouts or latency, there's no need to change your current buffer settings.

IIRs Tue, 09/08/2009 - 00:53

Your DAW and audio interface do not process audio 1 sample at a time. Rather they process blocks of samples: each block of samples will be stored in a buffer before being clocked out of the DAC... meanwhile the DAW is busy calculating the next block of samples.

The size of these buffers determines the latency of your system: the larger the buffer the longer the queue of samples waiting to reach the DAC, and the longer the delay between (eg) pressing a key on your midi controller and hearing the resulting note play.

If the buffer size is too small your CPU will not be able to keep it filled, and you will get glitches and drop-outs in your audio. Too high and you will have annoying latency to deal with.

Audio quality should not be affected, unless the buffer is so small as to cause drop-outs.

apstrong Tue, 09/08/2009 - 10:32

Yes, your DAW will compensate for the latency, so that's not the issue. The issue is that latency creates a delay between what goes in and what comes out through your monitors. So, for example, if you are overdubbing a track onto some previously recorded tracks, and if you are monitoring your new input through the same system that is playing back the previously recorded tracks, you will play a note on your guitar or sing a line and then hear it through the monitors a split second later. If that delay is too long, it can really mess up your playing/singing. It depends on how you are monitoring what you are playing for the overdubbed track. If you're listening to the original tracks in headphones or through studio monitors, and simultaneously listening to your new track as you play it through your guitar amp in the room, you're probably fine, everything will sound normal and your DAW will compensate. If you are monitoring your live playing through the same system as the playback of the already recorded tracks, though, then it may be a problem for you.

When you play an instrument or sing, you are used to hearing the note you create immediately, not 300ms later. When you can hear that delay (because the signal is going into your computer, undergoing a bunch of processing, and then coming out the monitors, which takes time), it can throw you off. The longer the delay, i.e. higher the buffer settings, the worse it is. But if you can monitor your playing directly, not through your computer, then you won't have this problem and the latency won't be a issue and your buffer sizes won't matter.

Try it. Set the buffers as high as they go, record a track, and then play it back and record a second track alongside it, using only your headphones or studio monitors to listen to both the playback of the first track and your new, second track as you're playing it live.

Codemonkey Tue, 09/08/2009 - 15:43

Also, if you set your buffers to max (say, 16384) needlessly, that's almost .3 seconds of latency between making an edit to a parameter on a VST and hearing the change.
This gets worse if your software (such as Kristal) writes to a ring of buffers where it fills a block, then another, and always maintains about 4 buffers that are queued up waiting to be sent for playback.
Kaboom, half a second between adjusting something and hearing it - great for doing EQ sweeps.

x