Steve Ball (the GPM for the MediaTech group (of which Windows Audio is a part)) discussed some of these changes in the Windows Audio Channel 9 video, but I'd like to spend a bit more time talking about what we've done.
A lot of what I'm discussing is on the video, but what the heck - I've got a blog, and I need to have some content to fill in the white space, so...
The Windows audio system debuted in Windows 3.1 with the "Multimedia Extensions for Windows", or MME APIs. Originally, only one application at a time could play audio, that was because the original infrastructure didn't have support for tracking or mixing audio streams (this is also why the old audio apps like sndrec32 pop up an error indicating that another device is using the audio hardware when they encounter any error).
When Windows 95 (and NT 3.1) came out, the MME APIs were stretched to 32 bits, but the basic infrastructure didn't change - only one application could play audio at one time.
For Windows 98, we deployed an entirely new audio architecture, based on the Windows Driver Model, or WDM. As a part of that architectural change, we added the ability to mix audio streams - finally you could have multiple applications rendering audio at the same time.
There have been numerous changes to the audio stack over the years, but the core audio architecture has remained the same until Vista.
Over the years, we've realized that there three major problem areas with the existing audio infrastructure:
Back in 2002, we decided to make a big bet on Audio for Vista and we committed to fixing all three of the problems listed above.
The first (and biggest) change we made was to move the entire audio stack out of the kernel and into user mode. Pre-Vista, the audio stack lived in a bunch of different kernel mode device drivers, including sysaudio.sys, kmixer.sys, wdmaud.sys, redbook.sys, etc. In Vista and beyond, the only kernel mode drivers for audio are the actual audio drivers (and portcls.sys, the high level audio port driver).
The second major change we made was a totally revamped UI for audio. Sndvol32 and mmsys.cpl were completely rewritten (from scratch) to include new, higher quality visuals, and to focus on the common tasks that users actually need to do. All the old functionality is still there, but for the most part, it's been buried deep below the UI.
The infrastructure items I mentioned above are present in Vista Beta1, unfortunately the UI improvements won't be seen by non Microsoft people until Vista Beta2.
PingBack from http://www.pdsys.org/blog/2006/12/30/AudioInVistaBetterForConsumersLessSoForSoundcardCompanies.aspx
PingBack from http://www.itwriting.com/blog/?p=272
PingBack from http://blogs.zdnet.com/Bott/?p=288
PingBack from http://blogs.zdnet.com/Bott/?p=309
PingBack from http://www.itwriting.com/blog/?p=450
PingBack from http://forums.techarp.com/general-hardware/23542-why-vista-sounds-better-than-xp-spdif-out.html#post320000
PingBack from http://www.driverheaven.net/flame-warzone/155482-constant-people-crying-about-vista-please-f-off.html#post1129442
PingBack from http://www.freakified.net/news/why-linux-will-never-succeed-on-the-desktop/
PingBack from http://jaew00k.net/blog/?p=5
PingBack from http://www.hardwarecanucks.com/forum/o-ss/13325-windows-7-beta-6.html#post133167
PingBack from http://www.hilpers.pl/436547-lphant/2
PingBack from http://outdoorceilingfansite.info/story.php?id=17791
PingBack from http://patiosetsite.info/story.php?id=590