I have a focusrite scarlett 2i2 3rd gen, a USB DAC.
What I essentially want is to reduce the overall system audio latency (windows). If I just use the DAC by itself without any software, I get about 70ms audio latency.
I use audacity to measure the latency by generating a ping* sound, then putting my headphones close to my microphone and record it; then I calculate the delay.
So far I've installed voicemeter and hooked up my focusrite to it. I am able to use ASIO drivers for my A1 with the focusrite, so I select this. In the system settings I leave everything at default (don't touch), engine mode on normal and WDM on NO. For reference, my focusrite's buffer size by default is set to 16.
So I go ahead and open up the VB virtual cable control panel for voicemeter, the smp latency is set to 7168, ok that's fine for now.
I then go ahead and set my voicemeter as my default playback device and start to listen to some music I have and immediately I get massive pops, cracks, and distortions. I'm thinking the buffer size is too big, so I put it to 64 from 16. Now it sounds fine, no problem, however sometimes it seemingly randomly does small pops and cracks; sometimes it goes through phases that make it do it more often than before, then it calms down, and then a few minutes later starts to do it more often for 10 seconds or so, then calms down, etc...
So I'm thinking maybe the buffer size is too small? So I increase it to 128 from 64 and I immediately get massive pops and cracks and distortions, like with the 16 setting. I then try the buffer size 96 setting, and I'm honestly not sure if it improves it or not because of how random these pops and cracks are, if I had to pick, I think no? I go ahead and play with different buffer size settings, ranging from 32 to 48, to 64, and 96, but the results are all roughly the same, if I had to pick though, I think maybe 64 is best, but I've had moments where 32 seemed better, sometimes 96 was better, etc... it's too random and the difference is too miniscule.
So I'm thinking maybe the smp latency is too low in the virtual cable control panel, so I go ahead and crank it up all the way to 24576, however, no difference. Just out of experimentation, I tried playing with different smp latency settings, but they all perform the same, except for the very, very low settings (less than 1536) wherein they start to distort more and give more cracks and pops.
Anyone got any ideas? I tried the other driver modes in A1, but their much worse. If they do work perfectly (without pops and cracks) the latency ends up being several times higher than just using my DAC bare.
I've also checked out the sticky thread on pops and cracks, but none of those made an improvement.
I've also tried reinstalling everything (it's mentioned in the sticky), but no difference.
Have some crackling and popping issues
-
- Site Admin
- Posts: 2129
- Joined: Sun Jan 17, 2010 12:01 pm
Re: Have some crackling and popping issues
Crackling and Popping issue has already a thread:
viewtopic.php?f=6&t=451
If you want to use your Focusrite in optimal mode with its ASIO driver you may watch this video tuorial:
https://youtu.be/35N8hkOy8h4
On Windows, we do not recommend to use buffer smaller than 256 samples (128 is usually too small for the system task/interrupt scheduler and won't work on all configuration).
viewtopic.php?f=6&t=451
If you want to use your Focusrite in optimal mode with its ASIO driver you may watch this video tuorial:
https://youtu.be/35N8hkOy8h4
On Windows, we do not recommend to use buffer smaller than 256 samples (128 is usually too small for the system task/interrupt scheduler and won't work on all configuration).
Re: Have some crackling and popping issues
Like I said in my post, I already went through the thread and tried all the stuff there, no change.Vincent Burel wrote: ↑Tue Dec 08, 2020 8:06 am Crackling and Popping issue has already a thread:
viewtopic.php?f=6&t=451
If you want to use your Focusrite in optimal mode with its ASIO driver you may watch this video tuorial:
https://youtu.be/35N8hkOy8h4
On Windows, we do not recommend to use buffer smaller than 256 samples (128 is usually too small for the system task/interrupt scheduler and won't work on all configuration).
I found that video out by myself a while ago, didn't fix.
Like I mentioned in my post, when I set the buffer size to 128 or higher it gives me massive pops and cracks.
Re: Have some crackling and popping issues
How does voicemeter work in more general technical terms? How is it even possible for me to achieve 10-20ms latency (with some pops and cracks)? My onboard audio chip has a latency of 52ms? Does voicemeter modify the MME/WASAPI/WDM drivers and forces them to have lower latency?Vincent Burel wrote: ↑Tue Dec 08, 2020 8:06 am Crackling and Popping issue has already a thread:
viewtopic.php?f=6&t=451
If you want to use your Focusrite in optimal mode with its ASIO driver you may watch this video tuorial:
https://youtu.be/35N8hkOy8h4
On Windows, we do not recommend to use buffer smaller than 256 samples (128 is usually too small for the system task/interrupt scheduler and won't work on all configuration).
Re: Have some crackling and popping issues
Hi. Most USB audio interfaces (Focusrite Scarlett 2i2 included) provides an ASIO driver that allows applications like Voicemeeter to capture/output audio from/to the interface without using the Windows audio subsystem.
ASIO drivers provides a control panel application that lets you set some parameters like buffer size or sampling rate for example.
You mention 70ms of latency when using the audio interface; did you get that value using the ASIO option for your interface in the A1 Hardware Output?
When using the WDM option (not the preferred option when you have ASIO available) Voicemeeter tries to use the output device in Exclusive mode which (like ASIO) bypasses some portions of the Windows audio subsystem to improve latency.
Hope this helps. Please let us know your findings.
ASIO drivers provides a control panel application that lets you set some parameters like buffer size or sampling rate for example.
You mention 70ms of latency when using the audio interface; did you get that value using the ASIO option for your interface in the A1 Hardware Output?
When using the WDM option (not the preferred option when you have ASIO available) Voicemeeter tries to use the output device in Exclusive mode which (like ASIO) bypasses some portions of the Windows audio subsystem to improve latency.
Hope this helps. Please let us know your findings.
Last edited by Andres on Sat Dec 19, 2020 3:42 pm, edited 1 time in total.
Re: Have some crackling and popping issues
Andres wrote: ↑Sat Dec 19, 2020 10:36 am Hi. Most USB audio interfaces (Focusrite Scarlett 2i2 inxluded) provides an ASIO driver that allows applications like Voicemeeter to capture/output audio from/to the interface without using the Windows audio subsystem.
ASIO drivers provides a control panel application that lets you set some parameters like buffer size or sampling rate for example.
You mention 70ms of latency when using the audio interface; did you get that value using the ASIO option for your interface in the A1 Hardware Output?
When using the WDM option (not the preferred option when you have ASIO available) Voicemeeter tries to use the output device in Exclusive mode which (like ASIO) bypasses some portions of the Windows audio subsystem to improve latency.
Hope this helps. Please let us know your findings.
Yes, just like I mentioned in my first post, I indeed tried to use the ASIO drivers...So far I've installed voicemeter and hooked up my focusrite to it. I am able to use ASIO drivers for my A1 with the focusrite, so I select this.
Something that I didn't mention though is that the pops and cracks get much worse if I use my web browser and watch youtube videos, but the pops and cracks aren't that bad when I'm just listening to my music collection, or even playing a game (which ought to be more intensive?).
Oh and I've tested my regular computer audio chip from my motherboard, they give me similiar pops and cracks.
Re: Have some crackling and popping issues
Hi. Unfortunately I don't own a USB audio interface to try to replicate your setup. May I suggest to start with a baseline setup using an ASIO buffer size of at least 256 samples (or even 512) to verify stability. I understand your final objective is to improve latency but at this moment it is important to verify that your setup works as intended. I know you have tested almost all the available settings but I am not sure that you have found at least one stable setup.
There is also an ASIO driver tester utility that you can use to "test" your interface. See this topic: viewtopic.php?p=4259&sid=bde2e1dc368919 ... 98f2#p4259
I would like to try to reproduce your latency measurement setup. Is it something like this? https://manual.audacityteam.org/man/latency_test.html
I am trying to verify if Audacity uses WASAPI Exclusive mode but apparently (in my setup) it doesn't at least for the Playback device.
Have you joined the VB-Audio Discord server? Maybe there you can find people with a similar setup and try to discuss your issues.
There is also an ASIO driver tester utility that you can use to "test" your interface. See this topic: viewtopic.php?p=4259&sid=bde2e1dc368919 ... 98f2#p4259
I would like to try to reproduce your latency measurement setup. Is it something like this? https://manual.audacityteam.org/man/latency_test.html
I am trying to verify if Audacity uses WASAPI Exclusive mode but apparently (in my setup) it doesn't at least for the Playback device.
Have you joined the VB-Audio Discord server? Maybe there you can find people with a similar setup and try to discuss your issues.
Re: Have some crackling and popping issues
Yes, I've tried higher buffer sizes, but going past 96 gives a lot more cracks and pops for some reason, no clue how, it's what I'm trying to figure out.Andres wrote: ↑Mon Dec 21, 2020 3:41 am Hi. Unfortunately I don't own a USB audio interface to try to replicate your setup. May I suggest to start with a baseline setup using an ASIO buffer size of at least 256 samples (or even 512) to verify stability. I understand your final objective is to improve latency but at this moment it is important to verify that your setup works as intended. I know you have tested almost all the available settings but I am not sure that you have found at least one stable setup.
There is also an ASIO driver tester utility that you can use to "test" your interface. See this topic: viewtopic.php?p=4259&sid=bde2e1dc368919 ... 98f2#p4259
I would like to try to reproduce your latency measurement setup. Is it something like this? https://manual.audacityteam.org/man/latency_test.html
I am trying to verify if Audacity uses WASAPI Exclusive mode but apparently (in my setup) it doesn't at least for the Playback device.
Have you joined the VB-Audio Discord server? Maybe there you can find people with a similar setup and try to discuss your issues.
I just did the ASIO test, does this look good?
Code: Select all
#0001 ------------------------------------------------------
#0002 (64Bits) TEST DEVICE: Focusrite USB ASIO
#0003 PREPARE DEVICE: sr:44100 Hz / buffer: 32 smp / in: 2 / out: 2
#0004 Latency: in:100 smp / buffer: 32 smp / out: 100 smp / total: 5.26 ms
#0005 ASIO Buffer 0 / Input / type:18 / ASIOSTInt32LSB (Input 1)
#0006 ASIO Buffer 1 / Input / type:18 / ASIOSTInt32LSB (Input 2)
#0007 ASIO Buffer 2 / Output / type:18 / ASIOSTInt32LSB (Output 1)
#0008 ASIO Buffer 3 / Output / type:18 / ASIOSTInt32LSB (Output 2)
#0009 -----------------------------------------------------------
#0010 Performance Counter Frequency: +4.093.877
#0011 Performance Counter for one buffer: +2.970 (0.7 ms)
#0012 Performance Counter for 10%: +297
#0013 -----------------------------------------------------------
#0014 GENERATE SINUS: 440 Hz -10 dBfs
#0015 DSP LOAD: nothing
#0016 START DEVICE: Running
I did some tests using my onboard motherboard audio instead and whilst it gives me a nice 30ms with MME, if I try and use voicemeter with it the closest I can get is about 66ms, going lower breaks the audio (starts to skip a lot).
Re: Have some crackling and popping issues
Hi. I always check that the CALLBACK TIMING ERROR counters in the ASIO Test utility stay at 5 (maximum). I prefer to use the 32-bit version since Voicemeeter is a 32-bit application and uses the 32-bit version of the ASIO drivers. I see you are using a buffer size of 32 samples on your Focusrite interface. If you increase the buffer size (using Focusrite Control) does the utility show errors?
My first measurements with the Realtek device integrated in the motherboard shows me a 105ms latency (using WASAPI).
My first measurements with the Realtek device integrated in the motherboard shows me a 105ms latency (using WASAPI).
Re: Have some crackling and popping issues
Oh ok, callback error thing. I checked those and I get massive errors on 32 buffer size:Andres wrote: ↑Thu Dec 24, 2020 12:59 am Hi. I always check that the CALLBACK TIMING ERROR counters in the ASIO Test utility stay at 5 (maximum). I prefer to use the 32-bit version since Voicemeeter is a 32-bit application and uses the 32-bit version of the ASIO drivers. I see you are using a buffer size of 32 samples on your Focusrite interface. If you increase the buffer size (using Focusrite Control) does the utility show errors?
My first measurements with the Realtek device integrated in the motherboard shows me a 105ms latency (using WASAPI).

If I increase buffer size all the way up to 1024 it dramatically reduces, but I still get them, just very slowly now.
However, I can't hear any audio difference, the music sounds exactly the same.
What does the callback timing error do?