ISelector interface is used to select source nodes in a stream class driver. Applications can use this interface to select which input is active on the device. For example, if a USB video capture device has a camera and a tape transport, these inputs could be represented as source nodes.
The ISelector interface inherits from the IUnknown interface. ISelector also has these types of members:
The ISelector interface has these methods.
Returns the number of source nodes connected to the selector node.
Returns the index of the active source node.
Activates a source node.
A kernel-streaming (KS) filter contains one or more nodes. Each node encapsulates a processing task that is applied to the stream. In the following diagram, nodes 1 and 2 are source nodes and node 3 is a selector node.
The source nodes represent input streams—for example, a camera or a tape transport. The selector node controls which stream is sent to the filter's output pin. To switch between inputs, an application would do the following:
- Use the IKsTopologyInfo interface to enumerate the nodes and discover the node types, identifiers, and names.
- Call IKsTopologyInfo::CreateNodeInstance to create the selector node, passing in the node identifier and the interface identifier IID_ISelector. The method returns an
- Use the
ISelectorinterface to select the source node.
ISelector interface is available if the selector node supports the PROPSETID_VIDCAP_SELECTOR property set. For more information, see the Windows DDK documentation.
Minimum supported client
|Windows XP with SP2 [desktop apps only]|
Minimum supported server
|Windows Server 2003 R2 [desktop apps only]|