DirectShow 보유 사용이 금지되고 있는 인터페이스 ICaptureGraphBuilder ControlStream   [목차열람] [주소복사] [슬롯비우기]
ICaptureGraphBuilder::ControlStream
 
Microsoft DirectX 9.0

ICaptureGraphBuilder::ControlStream

 :  ICaptureGraphBuilder 인터페이스의 사용은 피하는 것. 대신에,ICaptureGraphBuilder2 를 사용하는 것.

그래프내의 1 개 이상의 캡춰 필터 위에의 지정된 카테고리의 핀에 스트림 컨트롤 메시지를 보낸다.

구문

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

파라미터

pCategory

[in] 출력 핀 카테고리를 지정하는 GUID 의 포인터. 모든 핀 카테고리의 일람에 대해서는, 「핀 프로퍼티 세트」를 참조할것. 이 값을 NULL 로 하는 것은 할 수 없다.

pFilter

[in] 제어하는 필터의 IBaseFilter 인터페이스의 포인터. NULL 를 지정 하면, 그래프내의 모든 캡춰 필터가 제어된다. 각 캡춰 필터에 대해 1 개의 통지가 취득된다.

pstart

[in] 캡춰의 시작 타임의 포인터. NULL 는 금방 시작 하는 것을 의미한다. MAX_TIME 는 전의 요구를 캔슬하는지, 전의 요구가 없는 경우는, 아무것도 하지 않는 것을 의미한다.

pstop

[in] 캡춰의 종료 타임의 포인터. NULL 는 금방 종료하는 것을 의미한다. MAX_TIME 는 전의 요구를 캔슬하는지, 전의 요구가 없는 경우는, 아무것도 하지 않는 것을 의미한다.

wStartCookie

[in] 시작 동작이 일어났을 때에 보내는 특정의 값을 지정한다.

wStopCookie

[in] 종료 동작이 일어났을 때에 보내는 특정의 값을 지정한다.

반환값

캡춰 필터로부터 보내진 마지막 샘플이 렌더링 되기 전에 종료 통지가 보내지면 S_FALSE 를 돌려주어, 그 이외의 경우는 S_OK 를 돌려준다.

이 메서드가 S_FALSE 를 돌려주었을 경우, 애플리케이션은, 모든 샘플이 그래프를 통과해 렌더링 될 때까지, 필터 그래프의 종료를 대기하는 것이 좋다. 그렇게 하지 않으면 샘플이 없어지는 일이 있다.

지정한 설명에 일치하는 핀이 없는 경우, 또는 지정된 핀의 일부가 스트림 컨트롤을 지원 할 수 없는 경우, 이 함수는 에러 코드를 돌려준다.

주의

이 메서드는, 프레임 단위의 정밀도가 요구되는 캡춰나, 개별의 캡춰 동작 및 프리뷰 동작의 제어에 사용한다. 예를 들어, 캡춰 화면의 프리뷰만을 실시할 때는, 디스크에의 캡춰 화면의 쓰기를 오프로 할 수 있다.

이 메서드는, 핀의 IAMStreamControl 인터페이스를 사용한다.

이 메서드는, 지정된 카테고리의 핀으로 발견된 각 필터에 대해 1 개의 통지를 보낸다.

참조

↑TOP