Tag: Latency

Uncategorized

Optimizing Your Windows 10 Settings For Digital Audio

Hey everyone, being from and IT background I thought I would spend a few minutes going over some tips and tricks you can use to get the most possible out of your DAW. I recently did an episode of my Five Minute Sound Study Podcast where I went over the basics of what components you need. As you can imagine, you can’t even begin to scratch the surface of the surface you’re trying to scratch in that amount of time 😉 So over time I will write a series of articles that will go into more detail about the various components, peripherals and software you can use in the audio creation process.

I’m starting off at a bit of weird place when it comes to all the pieces involved, that being optimizing an already built Windows based PC for digital audio, the reason I’m starting off here is because I spent last night doing it so while it was fresh on my mind I thought I would tackle that subject. I use a bunch of different computers in my life, but the one I would call my favorite is a PC I built about a year and a half ago, it was designed for digital audio and for Virtual Reality, and thus is a bit of a monster. I had a crash recently that forced me to start from a barebones OS again and after installing all the drivers and my DAW(s) of choice I encountered every home recording enthusiasts arch nemesis, latency.

What is latency? The time between your audio entering your computer and it reaching your ears. So, in my case when I hit a chord on my guitar there would be a half second or so delay before the result would get to me. There’s lots of workarounds for this, but I know that my computer, and most modern computers for that matter are more than capable of providing me with undetectable amounts of latency, the problem is my system wasn’t properly configured for it. So let’s get to it.

1. BIOS settings that will affect your performance. SpeedStep and Quiet N’ Cool are not your friend. Basically what these technologies do is reduce the clock speed of your CPU based on demand. For the average user this is awesome, for audio creation it is not. The reason why is there a brief amount of lag between it detecting the demand and it addressing it, and that can under the right conditions cause problems for you, so start by disabling that feature. Now depending on your processor you may see the options of Turbo Boost or Turbo Core as well. These do the opposite, they increase the maximum speed of your CPU depending on demand. So if you have a 4.0 ghz CPU, you may get a boost to 4.18 ghz when needed. I would (and do) turn that function on, but make sure you have adequate cooling installed in your system to deal with the added heat of running at higher clock speeds causes. C-States, it may also be referred to as CPU Idle State, we want to make sure that it is disabled, we don’t want cores being disabled or enabled, we want to try and keep the data path as consistent as possible. Onboard sound cards, if you have one, make sure it’s enabled and I’ll explain why in a later setting.

2. Power Settings. Open up your Control Panel, head over to the Power Options icon, and choose High Performance. Wait, we’re not done. The goal here, like in the BIOS settings is to achieve as consistent a data path as possible, so hit Change Plan Settings, the display turn off, I’m not really worried about that, but that sleep option, change it to “Never”, we don’t want a PC going to sleep because I’ve seen it cause problems with audio devices when it wakes up. Now, open “Change Advanced Power Settings”. There’s two settings in this plan I would change. First, USB selective suspend. Disable it if you’re using a USB based audio device, again predictable and consistent, though an argument could be made for wanting to suspend unused devices, but I would address that in the physical setup of the computer and we will talk about that at a future point. Next, Processor power Management, the Minimum Process State should be 100%. In audio terms, think about data like you would transients. We want to be able to be able to deal with them (if we choose to) as they occur, not, oh crap, there goes a transient, should have been ready for that. That should be it for your power plan settings.

3. Background Services. This one here is a biggie. Go to the System icon in your control panel, then to Advanced system settings and Performance. First adjust for best performance, then go to the Advanced tab and adjust for Background services. I know, I know, but my DAW is a program and I want that to perform the best possible. Here’s the thing, your audio interface, the drivers for that run as a background service, and when that is delayed for a foreground task you get latency problems. This one setting might be the best move you make in reducing latency, so make sure you do it.

4. The Sound icon in your control panel. OK I’m including this here even though it’s more than just a setting I will be discussing. Earlier on I mentioned enabling the sound card on your motherboard if you have one. Ideally what you should do is get an average set of computer speakers, connect them to your onboard audio device and set it as the default audio device. Your audio monitors should be hooked up your audio interface and used exclusively by your DAW, this way Windows sounds get routed through the onboard audio and don’t interfere with your DAW output. The added bonus of doing this is, when you do your mix down, you can listen to what it sounds like on a regular set of speakers.

5. Anti-virus, firewall, Windows Update, etc. Again we’re getting into territories here that are not strictly in the settings domain. In an ideal world I would tell you to get your software installed, patched up to the latest version and then disconnect it from the network, disable all network cards, all anti-virus, firewalls and unnecessary services. This is not always practical, but if you’re running a dedicated PC for audio, that’s the route to go. All those added pieces of software take away memory, disk bandwidth, and CPU cycles from you, but it’s not always practical or safe to disable them. I will delve into this a little deeper when I discuss system design, but it may be something to consider as well.

6. Latency settings in your DAW. You will see settings for buffer size, but not in one place. There’s two buffers you have to worry about, one used by the bus (meaning USB, firewire, etc) and then another by the device itself in it’s ASIO driver. So it’s buffers on top of buffers. There’s a formula that tells you how much latency your adding and it looks like this:

Buffer Samples/Frequency = Latency

So with that in mind, let’s say we’re recording at 48khz, and we’re going to set our Firewire buffer size to 256 samples and our ASIO driver at 512 samples.

512/48000 = 0.010667
256/48000 = 0.005333

Combined we would be talking about 16ms of latency. Our goal is to reduce each buffer until we have problems. Start at a setting of 512 samples on the bus and move it down until you start hearing problems like crackling, dropouts, popping, distortion. Then do the same for device. What you end up with is, what you end up with.

How much latency is a problem? I don’t really want to open up that can of worms because everyone has an opinion, but here’s a thought. Sound travels around 10000 feet per second. so with that example above if you were standing about 16 feet away from your amp while playing, that’s the amount of time it would take you hitting a note on your guitar to get back to you. Personally I don’t have a problem with that. Some people say they could hear that amount of latency, I can’t, so go with what works for you. If you are still running into problems with latency I would recommend downloading a product called LatencyMon from here, it’s a great little piece of software that will analyze your system and give you ideas of what needs to be addressed.

So that’s some basic optimizations you can use on your Windows 10 PC to get the most out of your DAW. Hope it helps, and if you have any questions or comments don’t be afraid to ask!