For several months I've been wrestling with a recurring
audio problem with my Dell XPS 410 desktop computer. It's not a new
computer, but still seems to have hardware specs which would tend to support
full screen streaming video in HD (specifically YouTube videos) without any
problems...2.4GHz Intel Core 2 Duo E6600, 4GB DDR2 RAM, two 250GB SATA drives in a RAID 0, NVidia GForce 8600 GTS 256MB video card, etc. The PC originally
came with Microsoft Windows Vista Ultimate installed. I recently (finally) upgraded it to Windows 7
Ultimate. I needed to upgrade when I purchased Win7 a couple of years ago, but
just never made the time to do it. I
have to confess that my motivation to upgrade was pretty low based on how
infrequently I use this particular computer, but the need to solve this nagging
audio crackling problem finally pushed me to follow through with it.
The audio problem manifests itself in a popping and
crackling sort of way. Almost like
you’re trying to play audio off a drive that’s not capable of keeping up with
the demands or from a drive which is being over-burdened…kind of like skipping,
but with more of a defined crackle to it.
It’s most noticeable when playing full screen high quality video (HD)
both when streaming online content and when playing local videos (such as GoPro
videos). Generally speaking the video
keeps up and doesn’t exhibit any problems, but the associated audio crackles
enough to drive me mad.
I tried everything I could think of. I started simple and
went from there. Defrag? Check. Update drivers? Check. Update BIOS and Firmware across the
board? Check. Uninstall unnecessary software and hardware?
Check. Run Performance Monitor on drives, CPU,
Memory, video, etc.? Check. Run Dell
diagnostics? Check. Nothing seemed to
matter. Disable browser plugins? Check.
Research and adjust settings on everything I could think of (Flash
player, browser, OS, you name it)? Check.
Still no love.
Then I stumbled upon a utility called DPC Latency
Checker. DPC latency? What the heck is that? Come to think of it, what’s DPC? I did more research.
DPC stands for Deferred Procedure Call. In short, it’s a Windows operating system mechanism
which allows hardware drivers’ high priority tasks to be performed while
deferring lower priority tasks to a later time.
There are plenty of sources on the Interwebs to learn more about DPC…I’m
certainly not the person to explain it.
Which brings us to DPC latency.
DPC latency is basically when a device driver takes longer
than normal to process a task. This can
cause other drivers to be delayed in their processing, often resulting it
problems with audio streams. Yes,
audio. Normally this manifests itself as
pops and clicks. Hmm…sounds familiar.
OK, so I know what DPC and DPC latency are.
Now what?
Running DPC Latency Checker
If you’re still reading this, you will have no problem
finding DPC Latency Checking online using your favorite search site. Download it and run it. You’ll see a graphical representation (bar
graph style) showing green (good), yellow (borderline), and red (bad). I saw red (humming a 90’s era ballad by
hair-band Warrant). While I didn’t think to take a screen shot of
my actual results, the image below is a spitting image of what I saw each time
I opened a browser (Chrome or IE) while DPC Latency Checker was running.
Once DPC Latency Checker displayed that I was having a
problem I was able to see spikes when I would launch a browser (especially
Chrome) or navigate between sites. I initially followed the guidance offered by
the Checker and began disabling hardware devices (using the Windows Device
Manager) with very little in the way of positive results. (As a side note, be sure not to accidentally disable
your USB mouse during this process…makes navigation a bit problematic. )
After disabling several devices with no improvement to my
audio problem (or to the display on the Checker), I started to focus more
attention on the fact that opening a browser window seemed to cause spikes and
exacerbate the audio crackling problems.
Plugins? Settings? Malware?
Nope, none of those. I updated
plugins, removed plugins, adjusted browser settings…no change.
Finally I saw a tip on another site
indicating that DPC Latency spikes had been attributed to Norton Internet
Security software. I don’t run NIS, but
I was running a similar product from the same vendor…Symantec Endpoint Protection. I get free use of SEP on my
home computers through my employer, so I have used it on and off for several
years. Could it be causing my DPC
latency and my audio problems? I
disabled Symantec’s Realtime Protection, but that didn’t change anything. So I took the plunge and uninstalled it
entirely. Initially there was still no
change, but after a reboot my DPC latency was down to a very acceptable level. DPC Latency Checker showed green with an
occasional spike into the yellow, but no red.
And the audio crackling problem was gone. After months and months of frustration, it
turns out Symantec Endpoint Protection was causing my problems.
Now, back to full screen Youtube videos.