IAudioInputSelector interface

The IAudioInputSelector interface provides access to a hardware multiplexer control (input selector). The client obtains a reference to the IAudioInputSelector interface of a subunit by calling the IPart::Activate method with parameter refiid set to REFIID IID_IAudioInputSelector. The call to IPart::Activate succeeds only if the subunit supports the IAudioInputSelector interface. Only a subunit object that represents a hardware input selector will support this interface.

Each input of an input selector is identified by the local ID of the part (a connector or subunit of a device topology) that has a direct link to the input. A local ID is a number that uniquely identifies a part among all the parts in a device topology.

Most Windows audio adapter drivers support the Windows Driver Model (WDM) and use kernel-streaming (KS) properties to represent the hardware control parameters in subunits (referred to as KS nodes). The IAudioInputSelector interface provides convenient access to the KSPROPERTY_AUDIO_MUX_SOURCE property of a subunit that has a subtype GUID value of KSNODETYPE_MUX. To obtain the subtype GUID of a subunit, call the IPart::GetSubType method. For more information about KS properties and KS node types, see the Windows DDK documentation.

For a code example that uses the IAudioInputSelector interface, see the implementation of the SelectCaptureDevice function in Device Topologies.

Members

The IAudioInputSelector interface inherits from the IUnknown interface. IAudioInputSelector also has these types of members:

Methods

The IAudioInputSelector interface has these methods.

MethodDescription
GetSelection

Gets the local ID of the part that is connected to the selector input that is currently selected.

SetSelection

Selects one of the inputs of the input selector.

 

Requirements

Minimum supported client

Windows Vista [desktop apps only]

Minimum supported server

Windows Server 2008 [desktop apps only]

Header

Devicetopology.h

See also

Core Audio Interfaces
DeviceTopology API
IPart::Activate

 

 

Show: