The Windows Vista Team blog has an interesting post by Steve Ball, Senior Program Manager for Sound in Windows Vista, on why sound in Windows sometimes glitches. I'm still left with one question though - Why is Vista so badly affected by glitching while Mac OS X and Linux distros aren't?
The article is quite interesting and looks in some depth at the problem of delivering consistent audio:
Digital media processing is time-sensitive. Playback requires specific work to be performed by a given deadline -- otherwise presentation or data loss can occur. A "glitch" occurs when a deadline for time-sensitive processing is missed or when time-sensitive data is lost.
But there's an admission in the blog post that I find surprising:
Another way of thinking about this: it seems odd that a modern >$2000 PC may sometimes have trouble seamlessly playing back music when $20 CD players can effortlessly playback music without glitches.
So why do many $2000 PCs occasionally glitch while playing back music? The quick answer is this: Windows is not a single-function device like a CD player.
OK, fine, I can accept that a PC is a convergence device and because of that you've got to accept compromises, but here's something that bothers me - why is audio glitching much worse under Windows (Windows Vista in particular) than it is for other operating systems such as Mac OS X and Linux distros?
Back when I was investigating claims that audio playback had a severe detrimental effect on network performance, I was interested in what the effect of audio playback was like under other operating systems. At the time my results were inconclusive (overall, what I found was that network performance under Linux and Mac OS X was much lower that what I could get under Windows normally, but given limited time and access to only a small number of systems I couldn't follow up on this), but what I did notice in my testing was that when it comes to audio glitches, Windows Vista is by far the worse OS, much worse that both Windows XP, Mac OS X and Linux distros such as Ubuntu. My dual-core and quad-core Vista systems all have regular bouts of audio glitching during normal operations, while my much lower spec Linux systems, and my new Mac mini, which, lets be honest, isn't a powerhouse, seem to be able to handle audio much better. In fact, to be honest, I've not heard the Mac glitch at all. I've also tested XP systems and then loaded Vista onto the identical hardware and found far fewer glitching on XP. And the difference isn't small either, it's really obvious, with the Vista-based systems capable of glitching almost on request by just carrying out simple operations.
So what is it? Is it that the drivers for Vista are immature or is it that Vista has grown to be too complicated and needs a substantial rewrite? I'm not sure, but one thing is sure, excuses aren't going to help. This glitching is obviously a big problem and as we become more and more multimedia oriented, we're going to expect Windows-based PCs to be able to handle audio playback while carrying out other tasks. A $2,000 PC has be able to deliver performance that comes a lot closer to that of a $20 CD player. I'm guessing that this is going to eventually be solved by more intelligent sound hardware.