CTransformFilter.FindPin method

[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

The FindPin method gets the pin with the specified identifier. This method implements the IBaseFilter::FindPin method.

Syntax

HRESULT FindPin(
   LPCWSTR Id,
   IPin    **ppPin
);

Parameters

Id

Wide-character string that contains the pin identifier.

ppPin

Receives a pointer to the pin's IPin interface. If the method fails, *ppPin is set to NULL.

Return value

Returns one of the HRESULT values shown in the following table.

Return code Description
S_OK
Success.
E_OUTOFMEMORY
Insufficient memory.
E_POINTER
NULL pointer argument.
VFW_E_NOT_FOUND
Could not find a pin with this identifier.

Remarks

Important

The implementation of this method does not call IPin::QueryId to match the pin identifier. Instead, the method assumes that the input pin is named "In", and the output pin is named "Out". If you use a different set of pin identifiers, override this method.

Requirements

Requirement Value
Header
Transfrm.h (include Streams.h)
Library
Strmbase.lib (retail builds);
Strmbasd.lib (debug builds)

See also

CTransformFilter Class