HD Audio DDI Programming Guidelines
This section presents programming guidelines for using the HD Audio DDI versions (as defined by the HDAUDIO_BUS_INTERFACE, HDAUDIO_BUS_INTERFACE_V2 and HDAUDIO_BUS_INTERFACE_BDL structures) to control audio and modem codecs that are connected to an HD Audio bus interface controller.
The HD Audio bus driver exposes one or both versions of the HD Audio DDI to its children, which are kernel-mode function drivers for the audio and modem codecs. (One of these children might be the UAA HD Audio class driver.) These drivers call the routines in the DDIs to access the hardware capabilities of the HD Audio controller device.
This section includes:
Differences Between the HD Audio DDI Versions
Synchronous and Asynchronous Codec Commands
Wall Clock and Link Position Registers
Synchronizing Two or More Streams