Content deleted Content added
Rescuing 50 sources and tagging 0 as dead.) #IABot (v2.0.8 |
→Audio: rm copyvio |
||
Line 30:
| url-status=live
}}</ref>
The new audio stack runs at user level, thus increasing stability
There are three major APIs in the Windows Vista audio architecture:
Line 42:
Applications communicate with the audio driver through ''Sessions'', and these ''Sessions'' are programmed through the ''Windows Audio Session API (WASAPI)''. In general, WASAPI operates in two modes. In ''exclusive mode'' (also called ''DMA mode''), unmixed audio streams are rendered directly to the audio adapter and no other application's audio will play and signal processing has no effect. Exclusive mode is useful for applications that demand the least amount of intermediate processing of the audio data or those that want to output compressed audio data such as [[Dolby Digital]], [[Digital Theatre Systems|DTS]] or [[Windows Media Audio|WMA Pro]] over [[S/PDIF]]. WASAPI exclusive mode is similar to [[kernel streaming]] in function, but no kernel mode programming is required. In ''shared mode'', audio streams are rendered by the application and optionally applied per-stream audio effects known as ''Local Effects (LFX)'' (such as per-session volume control). Then the streams are mixed by the global audio engine, where a set of ''global audio effects'' (GFX) may be applied. Finally, they're rendered on the audio device.
After passing through WASAPI, all host-based audio processing, including custom audio processing, can take place
The Windows Kernel Mixer ([[KMixer]]) is completely gone.
▲After passing through WASAPI, all host-based audio processing, including custom audio processing, can take place (sample rate conversion, mixing, effects). Host-based processing modules are referred to as ''Audio Processing Objects'', or ''APOs''. All these components operate in user mode. The only portion of this architecture that runs in kernel mode is the audio driver (which contains the ''Port Class'' driver, the vendor ''Miniport'' driver and the vendor [[Hardware Abstraction Layer|HAL]]).
▲The Windows Kernel Mixer ([[KMixer]]) is completely gone. There is no direct path from DirectSound to the audio drivers; DirectSound and [[MultiMedia Extensions|MME]] are emulated as Session instances. Since the whole point of DirectSound acceleration is to allow hardware to process unmixed audio content, DirectSound cannot be accelerated in this audio model, and DirectSound3D is not supported at all, which also breaks [[Environmental Audio Extensions|EAX extensions]].<ref name=creativeKB25937>{{Cite web |url=http://support.creative.com/kb/ShowArticle.aspx?sid=25937 |title=Creative Technology - Support - Audio in Windows Vista |access-date=2011-09-15 |archive-date=2011-09-03 |archive-url=https://web.archive.org/web/20110903062241/http://support.creative.com/kb/ShowArticle.aspx?sid=25937 |url-status=live }}</ref> APIs such as [[Audio Stream Input/Output|ASIO]] and [[OpenAL]] are not affected.
===Audio performance===
Line 53 ⟶ 51:
Windows Vista also includes a new Multimedia Class Scheduler Service (MMCSS) that allows multimedia applications to register their time-critical processing to run at an elevated thread priority, thus ensuring prioritized access to CPU resources for time-sensitive DSP processing and mixing tasks.
For audio professionals, a new WaveRT port driver has been introduced that strives to achieve real-time performance by using the multimedia class scheduler and supports audio applications that reduce the latency of audio streams.
====Issues====
|