The KSPROPERTY_SYSAUDIO_SELECT_GRAPH property is used to explicitly include an optional node in the graph that SysAudio builds for a pin instance on a virtual audio device.

Usage Summary Table

GetSetTargetProperty descriptor typeProperty value type







The property descriptor (instance data) is a structure of type SYSAUDIO_SELECT_GRAPH that specifies the property, pin ID, and node ID. The property is specified by an embedded structure of type KSPROPERTY. The pin ID is an index identifying a pin factory in the KS filter that wraps the virtual audio device. The node ID is an index identifying an optional node in the specified pin's data path. For more information, see the following Remarks section.

No property value (operation data) is defined for this property. Specify the property value's buffer pointer as NULL and its size as zero.

Return Value

A KSPROPERTY_SYSAUDIO_SELECT_GRAPH property request returns STATUS_SUCCESS to indicate that it has completed successfully. Otherwise, the request returns an appropriate error status code.


This property is typically used to force an AEC node into the graph for a pin instance.

When instantiating a rendering pin on the filter for a virtual audio device, SysAudio starts at the pin and by default selects the graph that represents the simplest path through the filter. This graph excludes any optional nodes such as AEC controls.

You can override SysAudio's default behavior by first sending SysAudio a KSPROPERTY_SYSAUDIO_SELECT_GRAPH set-property request that specifies the optional node that is to be included in the graph. When SysAudio subsequently creates the pin instance, the pin's graph will include the optional node that was specified in the request.

A KSPROPERTY_SYSAUDIO_SELECT_GRAPH set-property request affects only pin instances that are created after the request. The request has no effect on any previously instantiated pins.



Ksmedia.h (include Ksmedia.h)

See also




Send comments about this topic to Microsoft