The PcStreamResourceType enum is used to define the type of resources used for specific audio streaming. Our new feedback system is built on GitHub Issues. Although hardware vendors have the option to implement their own KS filters for their audio devices, this option is both difficult and unnecessary for typical audio devices. If you prefer not to expose a non-PCM pin in this manner, one approach is to make sure that the data path containing the pin eventually feeds into a SUM node that is shared by the PCM data path. The hardware vendor only has to supply a set of miniport drivers to handle the hardware-specific functions of an audio adapter. These interfaces are sometimes referred to as upper-edge and lower-edge interfaces. In contrast, some wave devices provide multiple pins for PCM wave output and contain hardware for internally mixing the streams that enter the pins.

Uploader: Araramar
Date Added: 6 October 2005
File Size: 55.44 Mb
Operating Systems: Windows NT/2000/XP/2003/2003/7/8/10 MacOS 10/X
Downloads: 52830
Price: Free* [*Free Regsitration Required]

Introduction to Port Class

The IPortTopology interface provides generic port driver support to a topology miniport driver. Each of these three subdevice drivers takes the form of a KS filter.

Typically, the pins on the Topology filter are tied to the pins on the wave, MIDI, and DMus filters through hardwired connections in the adapter circuitry. IPinCount The IPinCount interface provides a means for the miniport driver to monitor and manipulate its pin counts dynamically as pins are instantiated and closed. Filters, pins, and nodes typically have properties that are accessible to clients kernel-mode components or user-mode applications of the audio driver.


The legend in the preceding diagram shows the boxes that represent driver components that the vendor provides. Office Office Exchange Server. For example, the WaveRT port driver does most miniporg the work that is required to stream audio data to a DMA-based audio device, whereas the miniport driver provides device-specific details such as the DMA address and device name.

Gets the minimum and maximum buffer size that the hardware audio engine can support. The PcNewResourceSublist function creates and initializes an empty resource list that is derived from another resource list. This division makes audio hardware drivers easier to write by isolating generic filter-implementation issues from device-specific hardware-interface issues.

Specifying the Topology

Our new feedback system is built on GitHub Issues. There are no open issues.

Installing a Port Miiniport Audio Adapter. Choose the type you’d like to provide: Miniporrt is the interface that the port class driver PortCls uses for accessing the runtime power management capabilities of the audio adapter. The IMiniport interface is the generic miniport interface that all miniport objects support. Have a restricted number of audio functions, allowing miniport drivers to operate closer to the audio hardware.

Our new feedback system is built on GitHub Issues.

Audio Miniport Drivers – Windows drivers | Microsoft Docs

Our new feedback system is built on GitHub Issues. There are no open issues.


Read about this change in our blog post. However, port class drivers differ from AVStream class drivers in the areas of multiprocessor handling and reentrancy. The PcUnregisterAdapterPowerManagement function unregisters the audio adapter’s power minniport interface from the PortCls class driver. This component is provided in the form of a DLL Audiokse.

The KsTimedFilterCallbacks rule specifies that a kernel-streaming KS miniport driver returns from a filter callback function within ms. GetMixFormat Gets the audio data format for the audio engine mixer. GetDeviceChannelCount Gets a count of the number of channels supported by the audio device.

The PcStreamResourceType enum is used to define the type of resources used for specific audio streaming. Feedback We’d love to hear your thoughts.

In contrast, the pins on the left edge of the topology filter are physically connected to pins on the MIDI and Wave Xxx filters.

The structure specifies the filter’s pins, nodes, connections, and properties. This can add unnecessary complexity to the controls that are visible through a mixer -API client such as a replacement for the SndVol32 utility. The following discussion assumes that the reader is familiar miiport kernel streaming KS concepts. Choose the type you’d like to provide: