Supporting Non-PCM Wave Formats

Supporting Non-PCM Wave Formats

In Microsoft Windows 2000 and Windows 98, the WDM audio framework did not allow Windows clients to use the standard audio APIs (waveOut, DirectSound, and DirectShow) to play non-PCM audio data through the PortCls system driver.

This limitation has been removed in Microsoft Windows XP and later, and Windows Millennium Edition, which can play audio data encoded in a non-PCM format such as AC-3 or WMA Pro. In addition, a hot-fix package is available for Windows 98 SE that contains all fixes necessary to play non-PCM data through the waveOut and DirectSound APIs. Service Pack 2 for Windows 2000 also contains these fixes.

This section describes limitations in earlier versions of Windows that prevented clients from playing non-PCM audio, and presents a set of guidelines for adapting a WDM audio driver to support non-PCM data formats on more recent versions of Windows.

Additionally, this section describes the new subformat GUIDs in Windows 7 that provide support for compressed audio formats.

This section includes the following topics:

Background of Non-PCM Support

Requirements for a Non-PCM Pin Factory

Subformat GUIDs for Compressed Audio Formats

Converting Between Format Tags and Subformat GUIDs

KS Topology Considerations

Specifics for waveOut Clients

Specifics for DirectSound Clients

S/PDIF Pass-Through Transmission of Non-PCM Streams

Specifying AC-3 Data Ranges

Specifying WMA Pro Data Ranges

USB Audio Support for Non-PCM Formats

Additional Requirements for Windows 98



Send comments about this topic to Microsoft

© 2016 Microsoft