Microsoft Device Driver Interface for HD Audio

Updated: September 25, 2006
**
Download

Microsoft Device Driver Interface for HD Audio

DownloadHDAudioDdi11.doc
781 KB
Microsoft Word file
Updated: Sep 25, 2006
**

This download document presents programming guidelines and a set of reference pages for the Intel High Definition (HD) Audio device driver interface (DDI). Audio and modem drivers call the routines in this DDI to manage hardware codecs that are attached to an HD Audio bus interface controller.

In Windows Vista, Microsoft intends to provide the following drivers as part of the operating system:

A bus driver for managing an Intel High Definition (HD) Audio bus interface controller.

A Universal Audio Architecture (UAA) class driver for managing a UAA-compliant audio codec (or possibly more than one codec) that is connected to an HD Audio controller.

Microsoft also intends to develop a similar HD Audio bus driver and UAA class driver for systems that run Windows Server 2003, Windows XP, and Windows 2000. For information about the architecture of the HD Audio controller, see the Intel High Definition Audio Specification. For an overview of UAA, see Universal Audio Architecture.

The HD Audio bus driver implements the HD Audio device driver interface (DDI), which kernel-mode audio and modem drivers use to communicate with hardware codecs that are attached to the HD Audio controller. The HD Audio bus driver exposes the HD Audio DDI to its children, which are instances of the audio and modem drivers that manage the codecs.

The version of the HD Audio bus driver that runs in Windows Server 2003, Windows XP, and Windows 2000 supports two variants of the HD Audio DDI:

A DDI defined by the HDAUDIO_BUS_INTERFACE structure. This DDI is identical to the HD Audio DDI in Windows Vista.

A DDI defined by the HDAUDIO_BUS_INTERFACE_BDL structure. This DDI is not available in Windows Vista.

The differences between these two DDIs are minor and are discussed in the section "Differences between the Two DDI Versions."

In Windows Vista, the HD Audio bus driver supports only the DDI that is defined by the HDAUDIO_BUS_INTERFACE structure.

In Windows Vista, Windows Server 2003, Windows XP, and Windows 2000, the UAA class driver uses the DDI defined by the HDAUDIO_BUS_INTERFACE structure to manage UAA-compliant audio codecs. In addition, hardware vendors can choose to write custom device drivers that use one or both of these DDIs to manage their audio and modem codecs.

Hardware vendors should design their audio codecs to conform to the UAA hardware requirements document (to be published). In the absence of a custom audio driver from the vendor, users can rely on the system-supplied UAA class driver to manage their UAA-compliant audio codecs. However, an audio codec might contain proprietary features that are accessible only through the vendor's custom driver.

Included in this white paper:
This document provides a preview of both versions of the HD Audio DDI. It presents the following information:

A background discussion of the Intel HD Audio architecture and the Microsoft UAA class driver.

Programming guidelines for using both versions of the HD Audio DDI to control audio and modem codecs.

A technical reference that describes the routines in the two versions of the HD Audio DDI.

The information in this document applies for the following operating systems:
Windows Vista
Windows Server 2003
Windows XP
Windows 2000


Top of pageTop of page