OK, I've reread your post a couple dozen times ...
My explanation isn't complete if you're not familiar with OS internals, and that discussion is really a separate thread. Briefly, every OS has two schedulers, one for the application layer and another for the driver layer. For Windows, the scheduler for the application layer time slices around every 200mS, and that's just too slow for real-time scheduling, so--in contrast to a regular real-time OS--nothing real-time can be scheduled by the Windows or Unix application scheduler. So we turn to the driver scheduler instead.
The driver schedule in Windows is really stupid (not resource aware), and it has only one priority. (Regular real-time OSes have 64 at the driver level.) We're pretty limited there too. But Microsoft makes due with a single driver process that performs real-time de-compression of audio and video when you provide the codec plug-ins.
However, some codec plug-ins are more powerful (and slower) than others. What you would like to do is select the simplest, fastest one that provides the sound/video quality you need. I would schedule the fastest one first, but if your audio player wants more sound quality than this codec can deliver, then the de-compressor engine needs to pick the next slower one down on the priority chain.
So at the top of the codec priority chain is the highest-speed quality-limited codecs and at the bottom of the chain are the slow-speed high-fidelity codecs. You want the de-compressor engine to pick the fastest, simplest one--but not too simple, otherwise, your sound quality will suffer.
Thanx superticker. Do you know how to set these priorities?
That's the easy question. The hard question is how do you decide on these selection priorities such that the trade-off
between performance and sound/video quality is best determined? That's well outside the scope of this thread. What sound card and multimedia application players do is provide the codecs as a "kit" with their priorities setup for you. What end-users do is install multiple kits for WMA, WinAmp, RealPlayer, etc such that these kits and their priorities conflict with each other. Now you got a mess because a codec that WinAmp might rate as a 4 in its kit might be rated as a 6 in ATI's Multimedia player.
Also, some of the better (more expensive codecs) are smarter and faster with higher sound quality. Sorting through this incompatibility mess is also beyond this thread.
Anyway, from an Administrator account, open up the sound control panel and click on the hardware tab. That should show you the codec kits. Open up a given kit; for example, open Audio codecs
. Inside that kit is a listing of individual codecs. Double-click on one to show its properties and which priority it is, which you can change or disable. Now I've given you just enough information to be dangerous
. I'm not responsible for what happens after this.
I would suggest you find another website of audiophiles that have spent hours playing with different codecs to determine how to balance the priorities within your own codec kits.
For me, I just disable everything except just what my system needs. That makes my system very deterministic as far as codec selection goes.