Monday, August 26th 2019

Windows 10 1903 Has a Nasty Audio Stutter Bug Microsoft Hasn't Managed to Fix

Windows 10 May 2019 Update (version 1903) is the pinnacle of neglect and contempt Microsoft has shown towards the all-important audio subsystem of the modern PC. With it, Redmond has one-upped its last big move against audio, by killing the DirectSound hardware pipeline and mongrelizing PC audio under Intel's lousy and fundamentally anti-competitive Azalia specification that solves common audio compatibility problems under a scorched-earth guiding principle - "kill any feature that could possibly lick our aftersales support budget, by dumping every aspect of audio onto a very restrictive host-signal processing (HSP) architecture, let people come up with their own soft DSPs, because CPUs can handle them." Windows 1903 proves how this approach wasn't a silver bullet against PC audio problems, and is fallible.

I've never owned a PC without a discrete sound card. My first "multimedia PC experience" was powered by a Creative kit that included a Sound Blaster PCI, an Infra-CDROM drive, a clip-on mic, and tiny stereo speaker boxes. ISA-based integrated audio solutions back then were bested by greeting cards. I've since made it a habit to buy a sound card every 5 or so years. No gleaming SNR numbers by Realtek can convince me that an integrated audio solution can best a $100 discrete sound-card, and I've owned plenty of motherboards over the years with the most premium Azalia implementations (be it the ALC889 or the modern ALC1220). My current machines feature an ASUS Xonar AE (a bang-for-the-buck ESS ES9023P implementation with a 150 Ω amp), and a Creative SB Recon 3D. Both cards implement the Azalia pipeline at some level, to survive operating with post-Vista Windows. The SB Recon 3D uses a chip that converts PCIe to the HDA bus; while the Xonar AE uses a PCIe to USB chip and a USB (Azalia) to I2S chip (essentially a USB headset laid out on a sound card with a high-quality analog side). Both cards are borked after the "upgrade" to Windows 10 May 2019 Update (1903), and two successive "Patch Tuesday" updates haven't managed to solve it.
Symptoms
Audio stuttering and glitching, and lots of it. Think Winamp circa 1999 running on a Pentium 133 with its CPU priority toggle set to "low," and the CPU being subject to the rigors of Internet Explorer rendering Yahoo.com over a 56K PCI soft-MODEM. That bad! My AMD Ryzen 7 2700X has 8 cores and 32 GB of DDR4-2667 memory at its disposal, and yet iTunes playing back Apple Music Radio in the background with Google Chrome rendering Twitter is sufficient to send me 20 years back in time. My Intel Core i5-9400F doesn't fare any better.

What's Wrong
Drawing inspiration from the other world-famous Washingtonian product, the Boeing 737 MAX airplane, Microsoft introduced Windows 10 1903 with a boatload of insufficiently-documented under-the-hood changes. Some of these changes affect Deferred Procedure Call (DPC) tick-rate, causing spikes in DPC latency, affecting the audio pipeline. Focusrite beautifully summarized DPC affecting audio:
DPC (Deferred Procedure Call) is the operation that Windows uses to assign a priority to processes/drivers that run simultaneously in the same system. If processes that are involved in streaming audio aren't assigned high enough priority then various issues can occur since the audio will not be streamed correctly in 'real-time'. These can include pops/clicks, "glitchy" audio and device disconnections.
It goes on to postulate that outdated drivers for audio devices that have gone EOL (end of life) that aren't ready for dynamic DPC could effectively render your otherwise physically-perfect discrete sound cards unusable. "A common cause for DPC latency is out of date device drivers and Windows processes that are not optimized correctly. Many processes/drivers are involved in streaming audio and many other processes/drivers can cause interruptions in the audio stream."

First Public Acknowledgment by Microsoft
Pete Brown, among other things, heads client-segment audio hardware user-experience at Microsoft, and Tweeted the first acknowledgment by Microsoft that it screwed up:
In the above Tweet, Pete posted a link to an Update applicable to Windows 1903 chronicled under KB4505903. This update was touted to fix audio glitches, and would go on to be part of the August Patch Tuesday rollout (you can separately download it here).

Did the Patch Work?
No. At least not in case of my sound cards. ASUS and Creative are possibly the last two discrete sound-card manufacturers with extensive lineups of discrete audio solutions in various form-factors (internal cards, external USB boxes, USB headsets, etc.), and even they haven't begun unpacking the mess that is 1903. The two have dozens of EOL sound cards between them (many still in the retail channel), and haven't updated their Windows 10-compatible drivers in years. My Xonar AE isn't EOL, yet. Realtek released updated HD Audio drivers for both its UAD and legacy driver-models. Most online tech communities simply advocate updating these single-origin Realtek drivers, and with KB4505903, the overwhelming majority of PC users who listen to Realtek CODECs have possibly solved their audio problems, prompting Pete's team to call it a day. But those on discrete audio solutions that don't get driver updates as regularly as Realtek CODECs do, are shortchanged. Pandering to "creators" no more?

What You can Try
If you want to take Microsoft's approach to solving problems (scorched earth) and absolutely, positively want your audio to work (maybe because you're a music composer whose discrete audio hardware puts food on the table), then paste the following line in an elevated Command Prompt and hit Enter (and reboot):
BCDEDIT /SET DISABLEDYNAMICTICK YES
And when Pete's team has finally figured out how to use a discrete sound card, and released a patch that works, you can revert the above change to let Windows 1903 function as intended:
BCDEDIT /SET DISABLEDYNAMICTICK NO
Or you can just disconnect your studio rig from the Internet, flick on CSM, and install Windows XP SP3 x64 over multi-boot.
Add your own comment

130 Comments on Windows 10 1903 Has a Nasty Audio Stutter Bug Microsoft Hasn't Managed to Fix

#76
Apocalypsee
Mussels, post: 4104977, member: 1746"
How odd. havent seen this one at all on many systems.
This is a bug where if you have it, it will annoy you. From reddit, the current X-Fi Titanium HD driver have problems with 1903, but I don't have it (popping, cracking every few minutes etc.). Perhaps because I disable HPET in BIOS and Windows? The only bug I have is when I plug my mic, I will hear the mic no matter what the volume is, even when disabled. In 1809 the mic don't work at all.
Posted on Reply
#77
lexluthermiester
trparky, post: 4104965, member: 170376"
But that's not the case anymore, Realtek has brought some really good audio to the masses with recent audio chipsets
This I agree with. They have improved greatly. However, less than excellent is still not good enough.
trparky, post: 4104965, member: 170376"
that are within a very small margin of the so-called premium solutions.
This is debatable. However, such a debate is not for this thread.

Mussels, post: 4104977, member: 1746"
How odd. havent seen this one at all on many systems.
It's not happening to everyone. The cause is, as of yet, unknown.
Posted on Reply
#78
Prima.Vera
olymind1, post: 4104474, member: 166087"
Luckily no issue on my end: B450 Tomahawk + Ryzen 2600 + Creative SB X-Fi Titanium HD (with the latest driver) + Win10 1903.

No crackling, no distortion, no audio cut outs.
Which drivers are you using for the Creative X-Fi card?
Posted on Reply
#79
olymind1
Prima.Vera, post: 4105005, member: 98685"
Which drivers are you using for the Creative X-Fi card?
XFRL_PCDRV_L11_3_00_2022

And installed the softwares from Daniel_K's SB X-Fi Series Support Pack 4.0
Posted on Reply
#80
Athlonite
trparky, post: 4104960, member: 170376"
Well yeah, but that's a pretty old audio chipset. Realtek has come a long way since then. The newer ALC1220-based onboard audio is miles ahead of what they used to be.
how many mid range mobo's have the ALC1220 onboard I know my TUF X470-Plus Gaming doesn't it only has a shitty ALC887 which my X-Fi totally blitz's it for sound quality
Posted on Reply
#81
Apocalypsee
Athlonite, post: 4105042, member: 80893"
how many mid range mobo's have the ALC1220 onboard I know my TUF X470-Plus Gaming doesn't it only has a shitty ALC887 which my X-Fi totally blitz's it for sound quality
True, if you go mATX for AM4 they dont even put a decent audio codec, my board use that ALC887. I saw ITX board uses ALC1220 because the lack of expansion slots.
Posted on Reply
#82
Mr Giggles
My USB headset is now a paper weight and my PCI WiFi card can't connect to the net so at least I won't get any more updates.
Posted on Reply
#83
OneMoar
There is Always Moar
wow
biased and ill-informed
this is a new low for tpu

first of all direct sound has been dead since windows 7 zero support for hardware-accelerated anything has been the norm for 10 years

and recommending people install xp for any reason is ignorant and frankly dangerous

it is not Microsoft's fault that your hardware vendor can't be bothered to update their drivers

and stop using consumer audio devices for professional work if you need a pro solution, buy pro hardware doi

is there issues with dynamic tick yes, is it entirely Microsofts fault Not a chance

the latency is entirely the hardware vendors fault as they don't config the driver correctly

https://docs.microsoft.com/en-us/windows-hardware/drivers/audio/low-latency-audio

and you are flat wrong on the last point its incredibly well documented
sadly vendors can't be bothered to read, because its easier to point the finger just like the op
Posted on Reply
#84
RichF
lexluthermiester, post: 4104429, member: 134537"
This is not a problem in 10 if you completely disable the update service.
So, it's possible to manually install all of the patches that need to be installed?

And, all of the individual patches are available, in a convenient manner (clearly and precisely labeled in terms of the full functionality, for instance) via Microsoft's website — without requiring users to jump through hoops like account-mandating software stores?

Otherwise, it's definitely a problem unless Windows 10 has become bug-free.
OneMoar, post: 4105240, member: 83420"
first of all direct sound has been dead since windows 7 zero support for hardware-accelerated anything has been the norm for 10 years
One of the biggest problems with Microsoft Windows is the recent fad of dropping backward compatibility, imitating one of Apple's biggest failings.

The time fallacy hits tech discussion forums constantly. The erroneous notion is that simply because something is of a certain age it's no longer worth anything. This same mistaken thinking applies to not taking backward compatibility seriously enough.

A key difference between systems that work for the user and systems that work for the seller of the systems is how much effort is put into not disrupting/breaking a user's workflow. Less and less attention is paid to that as computing "progresses". UI is changed haphazardly, on whims. Software is irrevocably broken, with "too bad, so sad — buy buy buy" from everyone who has no personal investment in using it. Many times there isn't even a satisfactory replacement for the product or functionality, so just throwing one's credit debt around won't work — even though increasing the speed of planned obsolescence is a huge driver in this trend.

Windows became an industry standard in large part because of backward compatibility. Microsoft apparently thinks it can more closely emulate Apple's scorched earth tactics. Perhaps it can. It's amazing how it has gotten away with user-hostile design in Windows 10 to the degree it has already.

The boiled frog analogy is flawed because frogs actually jump out of the water. People, by contrast, don't seem to.

Person 1: "My wheel isn't working because you changed the axel. Please restore its compatibility so that I may continue my work."

Person 2: "Naw... Your wheel is obsolete. Outdated. Not updated. Not current. It's no good."

Person 1: "My wheel works fine. It's your change of the axel that has caused the problem and I didn't ask for it nor am I going to pay for the fix for it. Since you broke it, you fix it!

Person 2: "Naw... You don't understand. The seller is king. I dictate to you, rather than the other way around. I say your wheel is broken and you have to fix your situation by buying another wheel. Here, sign on the dotted line and I'll get you fixed up. It's an update. It's the latest thing. It's very shiny!

If you want to keep using the roads you'll have to use the latest wheels."


I don't even have to resort to hyperbole to illustrate the situation we're in. What's the sound that frogs make?
Posted on Reply
#85
lexluthermiester
RichF, post: 4105568, member: 154826"
So, it's possible to manually install all of the patches that need to be installed?
Oh yeah, you can download them directly from MS. Of course to install them you have to reenable the update services. Of course, you can do that offline and then redisable them when finished.

RichF, post: 4105568, member: 154826"
Otherwise, it's definitely a problem unless Windows 10 has become bug-free.
:laugh::roll:
Posted on Reply
#86
trparky
RichF, post: 4105568, member: 154826"
This same mistaken thinking applies to not taking backward compatibility seriously enough.
One can argue that Windows is a buggy pile of crap because of backward compatibility for backward compatibility can be a double-edged sword. On one hand, it's a good thing because it allows for support for legacy software and hardware but on the other hand, backward compatibility contributes to code bloat. People talk about how Windows is such a bloated pile of garbage and yet at the same time they want backward compatibility, you can't have your cake and eat it too.
Posted on Reply
#87
lexluthermiester
trparky, post: 4105576, member: 170376"
backward compatibility contributes to code bloat.
While this is true to an extent, it's not as bad as you'd think. In this area, Microsoft has actually become very proficient at streamlining compatibility code and modes. It's one of the things Microsoft does that I like and tip my hat on.
Posted on Reply
#88
RichF
trparky, post: 4105576, member: 170376"
One can argue that Windows is a buggy pile of crap because of backward compatibility
One can, but it's an asinine claim, particularly since the amount of effort/energy/time that has gone into constantly reinventing the wheel (e.g. UI) and force-feeding people spyware could have gone into improving QC.

Windows 10 broke Topspin and Topspin 2, to name just two games that people spent money on and want to play. Both work fine in Windows 7. Compare the effort it would take to maintain compatibility with those with the amount of effort that has gone into creating redundant and confusing new UI all over the place, radically changing the way Windows Update works from a user engagement standpoint, etc. The priorities are way off for users but the system isn't being designed for them.

In Soviet Modern Times computer use you.

trparky, post: 4105576, member: 170376"
for backward compatibility can be a double-edged sword. On one hand, it's a good thing because it allows for support for legacy software and hardware but on the other hand, backward compatibility contributes to code bloat. People talk about how Windows is such a bloated pile of garbage and yet at the same time they want backward compatibility, you can't have your cake and eat it too.
Code bloat is due to inefficient use of resources, mainly due to using very high-level programming systems to speed up development time. That's not always a bad thing, by any means, because it often means companies can provide more features than they would be able to if they would have to spend more resources on code efficiency.

Backward compatibility is rarely an inefficient use of resources. Typically, the code is already done and, at most, needs to have some minor adjustments to work with updated subsystems. The worst thing that can happen is security vulnerabilities but those are everywhere already, including in the latest shinies.

The amount of resources needed to maintain backward compatibility pales in comparison with the benefit to user workflow. That is the far greater efficiency. But companies aren't interested in user workflow efficiency. They're interested in force-feeding people increasingly fast planned obsolescence. Apple's insane empire is increasingly built in a day.

lexluthermiester, post: 4105569, member: 134537"
Oh yeah, you can download them directly from MS. Of course to install them you have to reenable the update services. Of course, you can do that offline and then redisable them when finished.
So, every patch is completely separated so people can install only what they want to have?

They're all concisely and adequately labeled, so people will know what they do — with no hidden gotchas?

None of them have dependencies that require that users install things, like enhanced "telemetry" that they don't want — in order to get functionality they need?

I somehow doubt that this is the situation, given the user-hostile hoops one has to jump through (disabling the update services, for instance) already.
Posted on Reply
#89
trparky
If the telemetry can help Microsoft pinpoint and fix bugs, then I’m all for it. Those who are against the telemetry have never had to support a program let alone an operating system where things have gone wrong. I, myself, have had to fix bugs in programs that I, myself, have written and telemetry, crash data, and stack trace data is invaluable to pinpointing where things have gone wrong.

Telemetry is needed to know what went wrong. As a programmer, I know this. Those who have never written a line of programming code in their lives don’t know this.
Posted on Reply
#90
RichF
trparky, post: 4105628, member: 170376"
If the telemetry can help Microsoft pinpoint and fix bugs, then I’m all for it. Those who are against the telemetry have never had to support a program let alone an operating system where things have gone wrong. I, myself, have had to fix bugs in programs that I, myself, have written and telemetry, crash data, and stack trace data is invaluable to pinpointing where things have gone wrong.

Telemetry is needed to know what went wrong. As a programmer, I know this. Those who have never written a line of programming code in their lives don’t know this.
Adequate QC does not require turning one's data over to Microsoft via coercion or worse. :rolleyes:

That's like saying the masses should be glad to have zero privacy (and thus zero personal IP) because it helps people solve problems. It solves the problem of the masses competing with the rich.
Posted on Reply
#91
AlwaysHope
Many thanks to the OP, explains some minor sound issues when gaming in win10 & this is with mobo audio.
Posted on Reply
#92
trparky
Do you have any damn clue just how vast and complicated the PC ecosystem is? People expect Windows to run on everything from a high-end gaming system, to a piece of shit Dell, to a Frankenstein box cobbled together from pieces and parts.

Apple controls the whole ecosystem from the hardware all the way to the top of the chain with the software and even they can’t get it right. And you expect Microsoft to get it right all the damn time with an ecosystem that’s as vast as the universe itself? Get real! You’re full of yourself if you think Microsoft can get it right without debug data from its users.

The fact that Windows runs as well as it does and doesn’t fall flat on its face on such a vast and varied hardware ecosystem with an equally vast and varied software ecosystem on top is, if you ask me, a fucking miracle of biblical proportions.
Posted on Reply
#93
Frauss79
Microsoft will also be a spoilsport , But Creative has not generated any new drivers for SOUND BLASTER Z since 2017.It's something to be ashamed of.

PS SBZ It's still on sale for almost 100 euros, I won't add anything else.
Posted on Reply
#94
lexluthermiester
RichF, post: 4105618, member: 154826"
So, every patch is completely separated so people can install only what they want to have?
Generally, yes. It's tedious though.
Frauss79, post: 4105669, member: 190080"
Microsoft will also be a spoilsport , But Creative has not generated any new drivers for SOUND BLASTER Z since 2017.It's something to be ashamed of.
No, it isn't. There's no need to update what works. The drivers are not the problem.
Posted on Reply
#95
RichF
trparky, post: 4105641, member: 170376"
And you expect Microsoft to get it right all the damn time with an ecosystem that’s as vast as the universe itself?
Absolutely. When MS has time to put in six more UI designs to accomplish exactly the same thing that the first one could accomplish it has time to make a useful product.

When MS has time to code Windows 10 force-feed-ware to hijack Windows 7 installations it has time to made a useful product.

When MS has time to try to take over the web browser market when there are already adequate browsers available it has time to make Windows, a product one paid for, useful.

Given that MS decided to really aggressively establish Windows as the world standard desktop operating system it has the responsibility to make a good product. (See OS/2 if you're unclear on how aggressively.)
trparky, post: 4105641, member: 170376"
Get real! You’re full of yourself if you think Microsoft can get it right without debug data from its users.
Your point of view doesn't coincide with history. Once upon a time, there was no broadband for MS to exploit.
trparky, post: 4105641, member: 170376"
The fact that Windows runs as well as it does and doesn’t fall flat on its face on such a vast and varied hardware ecosystem with an equally vast and varied software ecosystem on top is, if you ask me, a fucking miracle of biblical proportions.
:rolleyes:
Posted on Reply
#96
lexluthermiester
trparky, post: 4105628, member: 170376"
If the telemetry can help Microsoft pinpoint and fix bugs, then I’m all for it. Those who are against the telemetry have never had to support a program let alone an operating system where things have gone wrong. I, myself, have had to fix bugs in programs that I, myself, have written and telemetry, crash data, and stack trace data is invaluable to pinpointing where things have gone wrong.

Telemetry is needed to know what went wrong. As a programmer, I know this. Those who have never written a line of programming code in their lives don’t know this.
While I agree, this should be done before releasing software during beta testing.
Posted on Reply
#97
RichF
lexluthermiester, post: 4105684, member: 134537"
While I agree, this should be done before releasing software during beta testing.
It should not be coerced nor forced, regardless of when it occurs. The notion that adequate QC should be done during the pre-release phase has been around for longer than the Internet. It's hardly controversial.

The actually controversial thing is forcing people to surrender their IP.
Posted on Reply
#98
OneMoar
There is Always Moar
this is the problem with clickbait 'editorial's all the anti-windows nutjobs come out of the woodwork
Posted on Reply
#99
trparky
RichF, post: 4105683, member: 154826"
Absolutely. When MS has time to put in six more UI designs to accomplish exactly the same thing that the first one could accomplish it has time to make a useful product.

When MS has time to code Windows 10 force-feed-ware to hijack Windows 7 installations it has time to made a useful product.

When MS has time to try to take over the web browser market when there are already adequate browsers available it has time to make Windows, a product one paid for, useful.

Given that MS decided to really aggressively establish Windows as the world standard desktop operating system it has the responsibility to make a good product. (See OS/2 if you're unclear on how aggressively.)
You act like Microsoft has only five programmers and they can only do one thing at a time. I got news for you! They have hundreds of thousands of programmers all working on various projects inside of Microsoft. They have a UI team, browser team, Office team, kernel team, anti-malware team, SQL team, IIS team, .NET team, etc.
lexluthermiester, post: 4105684, member: 134537"
While I agree, this should be done before releasing software during beta testing.
Ah yes, the lauded beta phase. The thing that everyone who's never written a line of code in their lives goes back to in order to defend that they must be right and that Microsoft is a piece of shit company that can't do anything right. They say that "Oh, but they didn't catch it in the beta phase. They suck!"

Oh, so tell me why despite the very real fact that Mozilla Firefox undergoes beta testing before every new release yet a week or two after a big release there's a .1 and a .2 update afterward? You'll tell me that they should have fixed these bugs in beta and that they shouldn't have released it knowing that they had those bugs. To which if that were the case a new version of Firefox would never be released because the testing would never be finished. Eventually, something has to released and no matter how much testing you do inside a closed environment there's always going to be bugs found once it has been released to the public because that's how things work. You know what they say about the best-laid plans, right?

So here we have Mozilla and they're writing a web browser, something that is a tiny fraction of the size of the codebase that Windows consists of and yet even Mozilla with it being open source and all and they even can't get things right. And like I said before, Apple can't even get it right and they control the whole ecosystem from the top to the bottom. And what about nVidia, they release new versions of their drivers every month and what do they do? Oh yeah, they fix bugs. The same can be said about how AMD does the same with new driver versions. Google comes out with new versions of Android every year and yet despite how long each new version of Android spends in beta they still find and fix bugs months later. Google does the same with Google Chrome, they come out with new versions of Google Chrome every month or two and yet despite all of the testing and how much of Google Chrome is based upon the open source Chromium, they still find and fix bugs. The same can be said about the open source Linux kernel and how each new version of the Linux kernel fixes bugs all the time.

I really can go on all day and all night citing example after example after example but you'd tire of that so I've purposely limited it to a few examples of how and where things have gone wrong despite the oh so lauded beta phase.

So what have we learned here folks!?!? That the almighty beta phase doesn't catch everything. You eventually need to throw it out to the public and have people bang on it for bugs to come to the surface and have things fixed. Anyone who doesn't understand this has never written a line of programming code in their lives and need to back up and shut up for you don't know what you're talking about. I, myself, have written programming code so I do indeed have an idea of just how many things can go wrong despite how much testing is done once something has been thrown to the sharks.

I am not defending Microsoft in any way, I'm simply pointing out that despite how much testing is done no matter what project you're talking about you cannot find and fix all of the bugs in a closed testing environment. You eventually need to throw it out to the sharks and hope for the best. Sometimes it works and no bugs are found but that's a rarity with today's massive programs that can have tens of millions of lines of code.
lexluthermiester, post: 4105680, member: 134537"
No, it isn't. There's no need to update what works. The drivers are not the problem.
If Microsoft changes an API then yes, drivers need to be fixed. Oh, but you say that there should be backward compatibility so that existing drivers continue working but that backward compatibility then results in a layer on top of a layer on top of a layer of code that results in an ever-increasing massive heap of code.
RichF, post: 4105683, member: 154826"
See OS/2 if you're unclear on how aggressively.
The size of the OS/2 codebase doesn't even come close to the size of the codebase that is Windows. Come back to me with a better example. Oh yes, we have such an example already. The Linux kernel but I already talked about that above so yeah...

I have written this post to point out several and very valid examples of things that can and have gone wrong even with projects that are a tiny fraction of the size of Windows; namely Firefox and Google Chrome. I have even cited the Linux kernel which is on the order of the size of Windows yet despite the fact that it's open source bugs can still slip through the cracks and new versions need to be released to fix them. I have even cited Google Android. And then there's MacOS and Apple iOS that despite how they control the whole ecosystem from top to bottom they still indeed have to fix bugs.

/mic drop
Posted on Reply
#100
lexluthermiester
trparky, post: 4105922, member: 170376"
If Microsoft changes an API then yes, drivers need to be fixed.
You're assuming the existing drivers wouldn't work fine as-is(which they do BTW), again this is a Microsoft problem, not a driver problem. Microsoft needs to fix it.
Posted on Reply
Add your own comment