Troubleshoot USB dropouts / audio glitches (Windows)

Am I getting USB dropouts?

If you're getting audio glitches, clicks or dropouts, then there is a high chance you may be experiencing a USB dropout.

A USB dropout may be shown by the USB dropout indicator lighting in your Serato Software however this may not always happen.


What is a USB dropout?

The Serato Software will create what's known as an isochronous stream of audio data over the USB bus. That is, it is 'fed' at precise intervals from our USB buffer. If for some reason what is in the buffer can not be fed onto the bus, the USB dropout indicator may light, and more often than not, you will hear an audible click or glitch in the audio. This is a USB dropout.

What causes USB dropouts?

As explained above, maintaining an isochronous stream requires 'stuff' to happen at a certain time, with a 1ms (millisecond) USB buffer size the program only needs to send about 350 Bytes of data each ms over USB, but this needs to happen every millisecond, otherwise you'll (obviously) experience a dropout.

The work is done by the CPU and the USB controller, which are under the control of a few co-operative things; the operating system, the BIOS, and drivers, ultimately at the request of the audio application. If one of these isn't behaving correctly, or can't perform it's work in time, you can guess the result.

The first thing is to check if the CPU is busy doing something else, or is not up to the task of feeding the buffer and feeding the buffer to the USB:

Open up the task manager - Task Manager (Ctrl+Alt+-Del)

and click on the processes tab, check what your overall CPU usage is like and percentage the application is using. If your overall usage is close to 100% and you're getting dropouts, try raising the size of your USB buffer size. Giving your CPU more time to do the work of streaming the audio over USB.

If your overall usage is not near 100%, and especially if it's nothing like being close to capacity, you should use the following techniques to check what is happening inside the Windows kernel and causing dropouts.

USB interupts and how to eliminate dropouts

An interrupt in this context is basically when the Windows kernel halts execution of applications while some work needs to be performed by a driver - wikipedia

An interrupt is an asynchronous signal from hardware indicating the need for attention or a synchronous event in software indicating the need for a change in execution. A hardware interrupt causes the processor to save its state of execution via a context switch, and begin execution of an interrupt handler.

Problems for audio applications can arise when the hardware drivers don't hand back control in short enough a time to allow for us to maintain the USB stream. From an audio application perspective, it has just lost some time suddenly, as during interrupts the processors state is saved and restored, as if nothing has happened. Hence the need to trace interrupts using a 3rd party tool which can look inside the kernel.

It is worth while making sure your computer is optimized for digital audio. To do so follow this link: www.serato.com

If optimizing your computer doesn't help then you should do the following:

  • For users running Windows 7 or Windows Vista please go: here
  • For users running Windows XP please go: here

Did you find this useful?   Yes    No