This section describes audio miniport driver interfaces and explains how to develop adapter drivers for audio hardware whose registers are directly accessible to the system processor over a system bus. This class of hardware includes all ISA/DMA, PCMCIA, and PCI audio adapters.
This documentation does not discuss how to support audio devices that reside on an external bus. For information about supporting audio devices on external buses, see USBAudio Class System Driver and AVCAudio Class System Driver.
The following discussion assumes that the reader is familiar with kernel streaming (KS) concepts. For background information, see Kernel Streaming.
The WDM audio driver model divides the implementation of a KS filter into port and miniport drivers that are complementary but separate. This division makes audio hardware drivers easier to write by isolating generic filter-implementation issues from device-specific hardware-interface issues. Hardware vendors write miniport drivers to directly control their hardware devices, but the port drivers that implement the KS filters are provided with the operating system. The port and miniport drivers communicate with each other through well-defined software interfaces.
Various aspects of miniport driver development are discussed in the following topics: