다음을 통해 공유


ICaptureGraphBuilder::ControlStream 메서드(strmif.h)

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

참고ICaptureGraphBuilder 인터페이스는 더 이상 사용되지 않습니다. 대신 ICaptureGraphBuilder2 를 사용합니다.
 
그래프에서 하나 이상의 캡처 필터에서 지정된 범주의 핀으로 스트림 제어 메시지를 보냅니다.

구문

HRESULT ControlStream(
  [in] const GUID     *pCategory,
  [in] IBaseFilter    *pFilter,
  [in] REFERENCE_TIME *pstart,
  [in] REFERENCE_TIME *pstop,
  [in] WORD           wStartCookie,
  [in] WORD           wStopCookie
);

매개 변수

[in] pCategory

출력 핀 범주를 지정하는 GUID 에 대한 포인터입니다. 모든 핀 범주 목록은 Pin 속성 집합 을 참조하세요. 이 값은 NULL일 수 없습니다.

[in] pFilter

제어할 필터의 IBaseFilter 인터페이스에 대한 포인터입니다. NULL을 지정하면 그래프의 모든 캡처 필터가 제어됩니다. 각 캡처 필터에 대해 하나의 알림을 받게 됩니다.

[in] pstart

캡처 시작 시간에 대한 포인터입니다. NULL 은 지금 시작을 의미합니다. MAX_TIME 이전 요청을 취소하거나 이전 요청이 없는 경우 아무 작업도 수행하지 않음을 의미합니다.

[in] pstop

캡처 중지 시간에 대한 포인터입니다. NULL 은 지금 중지를 의미합니다. MAX_TIME 이전 요청을 취소하거나 이전 요청이 없는 경우 아무 작업도 수행하지 않음을 의미합니다.

[in] wStartCookie

시작이 발생할 때 보낼 특정 값을 지정합니다.

[in] wStopCookie

중지가 발생할 때 보낼 특정 값을 지정합니다.

반환 값

캡처 필터에서 보낸 마지막 샘플이 렌더링되기 전에 중지 알림이 전송되면 S_FALSE 반환하고, 그렇지 않으면 S_OK 반환합니다.

이 메서드가 S_FALSE 반환하는 경우 애플리케이션은 모든 샘플이 그래프를 통과하고 렌더링될 수 있도록 필터 그래프를 중지하기 전에 기다려야 할 수 있습니다. 그렇지 않으면 샘플이 손실될 수 있습니다.

제공한 설명과 일치하는 핀이 없거나 표시된 모든 핀에서 스트림 컨트롤을 지원하지 못할 경우 이 함수는 오류 코드를 반환합니다.

설명

프레임 정확 캡처 또는 캡처 및 미리 보기의 개별 제어에 이 메서드를 사용합니다. 예를 들어 캡처된 이미지만 미리 보려면 캡처된 이미지의 쓰기를 디스크에 쓰지 않도록 설정할 수 있습니다.

이 메서드는 핀에서 IAMStreamControl 인터페이스를 사용합니다.

이 메서드는 지정된 범주의 핀이 있는 각 필터에 대해 하나의 알림을 보냅니다.

요구 사항

   
대상 플랫폼 Windows
헤더 strmif.h(Dshow.h 포함)

추가 정보

오류 및 성공 코드

ICaptureGraphBuilder 인터페이스