Technical features new to Windows Vista From Wikipedia
Audio
Windows Vista features a completely re-written audio
stack designed to provide low-latency 32-bit floating point audio, higher-quality digital signal processing, bit-for-bit sample level accuracy, up to 144dB of dynamic range and new audio
APIs created by a team including Steve Ball and Larry Osterman.
[1][2] The new audio stack runs at user level, thus increasing stability. The Windows Vista audio engine is designed to run faster than the Windows XP audio engine, and has tighter requirements on audio buffer position accuracy. Also, the new
Universal Audio Architecture (UAA) model has been introduced, replacing WDM audio, which allows compliant audio hardware to automatically work under Windows without needing device drivers from the audio hardware vendor.
There are three major APIs in the Windows Vista audio architecture:
- Windows Audio Session API – Very low level API for rendering audio, render/capture audio streams, adjust volume etc. This API also provides low latency for audio professionals through WaveRT.
- Multimedia Device API – For enumerating and managing audio endpoints.
- Device Topology API – For discovering the internals of an audio card's topology.
[edit] Audio stack architecture
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,
DTS or
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.
The higher level APIs such as the Wavexxx APIs and DirectSound use shared mode, which results in pre-mixed
PCM audio that is sent to the driver in a single format (in terms of sample rate, bit depth and channel count). This format is configurable by the end user through Control Panel.
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
HAL). The Windows Kernel Mixer (
KMixer) is completely gone. There is no direct path from DirectSound to the audio drivers; DirectSound and
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. APIs such as
ASIO and
OpenAL are not affected.
[edit] Audio performance
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. As a result, user mode applications can completely govern streams of audio without any code execution in the kernel during runtime. WaveRT allows the user mode application direct access to the internal audio hardware buffers and sample position counters (data in the memory that is mapped to the audio hardware DMA engine). It allows applications to poll the current position in the DMA memory window that the hardware is accessing. WaveRT also supports the notion of a hardware generated clock notification event, similar to the
ASIO API, so that applications need not poll for current position if they don't want to. WaveRT however works only with
PCI,
PCI Express or onboard audio devices; it does not work with USB or FireWire interfaces which are more widespread in the professional audio industry.
[3] All the existing audio APIs have been re-plumbed and emulated to use these APIs internally, all audio goes through these three APIs, so that most applications "just work".
[edit] Audio Signal Processing
New digital signal processing functionalities such as
Room Correction,
Bass Management,
Loudness Equalization and
Speaker Fill have been introduced.
Speaker Fill mixes 2-channel content to use all available speakers in a manner similar to
Creative's CMSS.
Bass Management can be used to redirect the subwoofer signal to the main speakers. If a channel is missing, a feature called
Channel Phantoming allows the best use of the speakers that are there, by redirecting the sound of the missing channels through these speakers. Whether you have a multi-channel or stereo sound system in your home theater or living room, Windows Vista also includes the ability to calibrate your speakers for your room. By placing a microphone where you plan to sit and then running a wizard that measures the room response, Windows Vista can automatically set the levels, delay and frequency balance for each channel accordingly for this position. For PCs equipped with stereo headphones, Vista adds the ability to have surround sound using a new feature called
Headphone Virtualization, which uses technology based upon a
Head-related transfer function.
[4] Windows Vista also includes the ability to use custom host-based digital signal processing effects as part of the audio device manufacturer-supplied driver's value-added features. These effects are packaged as user-mode System Effect Audio Processing Objects (sAPOs).
[5] These sAPOs are also reusable by third-party software.
[edit] Audio devices support
Windows Vista builds on the
Universal Audio Architecture, a new class driver definition that aims to reduce the need for third-party drivers, and to increase the overall stability and reliability of audio in Windows.
- Support for Intel High Definition Audio devices (which replaces Intel's previous AC'97 audio hardware standard)
- Extended support for USB audio devices:
- Built-in decoding of padded AC-3 (Dolby Digital), MP3, WMA and WMA Pro streams and outputting as S/PDIF.
- Support for MIDI "Elements".[6]
- New support for asynchronous endpoints.[7]
- IEEE 1394 (aka Firewire) audio support is slated for a future release of Windows Vista, to be implemented as a full class driver, automatically supporting IEEE 1394 AV/C audio devices.
- Support for audio jack sensing which can detect the audio devices that are plugged into the various audio jacks on a device and inform the user about their configuration.
- Endpoint Discovery and Abstraction: Audio devices are expressed in terms of audio endpoints such as microphones, speakers, headphones. For example, each recording input (Microphone, Line in etc.) is treated as a separate device, which allows recording from both at the same time.
[edit] Other audio enhancements
- A new set of user interface sounds have been introduced, including a new startup sound created with the help of King Crimson's Robert Fripp.[8]
- Windows Vista also allows controlling system-wide volume or volume of individual audio devices and individual applications separately. This feature can be used from the new Volume Control windows or programmatically using the overhauled audio API. Different sounds can be redirected to different audio devices as well.
- Built-in support for microphone arrays to increase the accuracy of the speech recognition feature, lets a user connect multiple microphones to a single system, so that the inputs can be combined into a single, higher-quality source.[9] Microsoft has also included a new high quality voice capture DirectX Media Object (DMO) as part of DirectShow that allows voice capture applications such as instant messengers and speech recognition applications to apply Acoustic Echo Cancellation and microphone array processing to speech signals.[10]
Here is a discussion about it on the Cubase forum It is now at the latter part of 2010. Many audio devices come with these drivers. As CJ said what will work best on your system is system dependent and exclusive to your system. Trying the different driver models will tell which is best or that they all work well. My system can use any of them with equal results. It is a matter of which I prefer in my case. I am lucky.