To take advantage of the built-in system support for audio devices, Microsoft recommends that vendors use one of the following:
A port class adapter driver (see Audio Miniport Drivers) for an ISA or PCI adapter card
The USB Audio class driver (see USBAudio Class System Driver) for a USB Audio device
A custom IEEE 1394 device driver (see AVCAudio Class System Driver) for an IEEE 1394 audio device
However, if these options are not sufficient, a vendor can implement one of the following:
A proprietary KS filter (see KS Filters)
Microsoft does not recommend a proprietary KS filter because they are difficult to implement, and are unnecessary for most ISA, PCI, and USB devices.
Stream class minidriver (see Streaming Minidrivers)
Microsoft does not recommend a proprietary stream class minidriver because it is difficult to implement, although it can be appropriate for devices that integrate audio and video.
For an in-depth discussion of the available options for providing driver support for an audio device, see Getting Started with WDM Audio Drivers.