IAMGraphStreams::FindUpstreamInterface 메서드(strmif.h)

[이 페이지와 연결된 기능인 DirectShow는 레거시 기능입니다. MediaPlayer, IMFMediaEngineMedia Foundation의 오디오/비디오 캡처로 대체되었습니다. 이러한 기능은 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드에서 DirectShow 대신 MediaPlayer, IMFMediaEngine오디오/비디오 캡처를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]

메서드는 FindUpstreamInterface 지정된 핀에서 업스트림 지정된 인터페이스에 대한 필터 그래프를 검색합니다.

구문

HRESULT FindUpstreamInterface(
  [in]  IPin   *pPin,
  [in]  REFIID riid,
  [out] void   **ppvInterface,
  [in]  DWORD  dwFlags
);

매개 변수

[in] pPin

핀의 IPin 인터페이스에 대한 포인터입니다. 핀은 필터 그래프의 필터에 속해야 합니다.

[in] riid

찾을 인터페이스를 지정하는 IID(인터페이스 식별자)에 대한 참조입니다.

[out] ppvInterface

void 포인터의 주소입니다. 메서드가 성공하면 이 변수는 riid로 지정된 인터페이스에 대한 포인터를 받습니다.

[in] dwFlags

검색할 항목(핀 또는 필터)을 지정하는 AM_INTF_SEARCH_FLAGS 열거형의 플래그 조합입니다.

반환 값

다음 HRESULT 값 중 하나를 반환합니다.

반환 코드 설명
E_NOINTERFACE
인터페이스를 찾을 수 없습니다.
E_POINTER
잘못된 포인터입니다.
S_OK
성공.

설명

dwFlags가 0이면 이 메서드는 다음 순서로 인터페이스를 검색합니다.

  1. pPin으로 지정된 핀을 쿼리합니다.
  2. pPin이 입력 핀인 경우 pPin에 연결된 출력 핀에서 FindUpstreamInterface를 재귀적으로 호출합니다(있는 경우).

    pPin이 출력 핀인 경우 pPin을 소유하는 필터를 쿼리합니다. 그런 다음 pPin에 대한 내부 연결이 있는 필터에 입력 핀 목록을 만들고 해당 입력 핀에서 재귀적으로 호출 FindUpstreamInterface 합니다.

    내부 연결이 있는 입력 핀 목록을 만들기 위해 메서드는 다음을 수행합니다.

인터페이스를 지원하는 첫 번째 개체에서 중지됩니다. dwFlags를 0이 아닌 값으로 설정하여 검색되는 개체(필터, 입력 핀 또는 출력 핀)를 제한할 수 있습니다.
참고ICaptureGraphBuilder2::FindInterface 메서드는 이 문제에 대한 보다 일반적인 접근 방식을 구현하며 대부분의 경우 선호됩니다.
 

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 strmif.h(Dshow.h 포함)
라이브러리 Strmiids.lib

추가 정보

오류 및 성공 코드

IAMGraphStreams 인터페이스