Supporting 2D DirectSound Acceleration in WDM Audio

DirectSound exposes hardware-accelerated 2D mixing for WDM audio miniport drivers that meet the following requirements:

  • The miniport driver includes a pin factory that is an IRP sink (KSPIN_COMMUNICATION_SINK), has a KSPIN_DATAFLOW direction of KSPIN_DATAFLOW_IN, and exposes a data range (KSDATARANGE_AUDIO structure) in which the specifier (DataFormat.Specifier member) is set to KSDATAFORMAT_SPECIFIER_DSOUND.

  • The pin factory's KSPROPERTY_PIN_CINSTANCES handler sets the PossibleCount member of the KSPIN_CINSTANCES structure to a value of two or greater (the first pin is always reserved for KMixer). The PossibleCount value specifies the number of pin instances that can currently be instantiated from the pin factory.

  • The pin factory must support the KSPROPERTY_AUDIO_CPU_RESOURCES property and should report KSAUDIO_CPU_RESOURCES_NOT_HOST_CPU for all nodes that are hardware accelerated.

  • The pin should meet the DirectSound node-ordering requirements.