DirectShow DirectShow 레퍼런스 DirectShow base class base class 레퍼런스 CTransformFilter Receive   [목차열람] [주소복사] [슬롯비우기]
CTransformFilter::Receive
 
Microsoft DirectX 9.0

CTransformFilter::Receive

Receive 메서드는, 미디어 샘플을 취득해 처리해, 다운 스트림 필터에 출력 샘플을 출력한다.

구문

HRESULT Receive(
    IMediaSample *pSample
);

파라미터

pSample

입력 샘플의 IMediaSample 인터페이스의 포인터.

반환값

HRESULT 값을 돌려준다. 다음의 몇개의 값을 돌려준다.

설명
S_FALSE 업 스트림 필터는 샘플의 송신을 정지해야 한다.
S_OK 성공.

주의

필터의 입력 핀은 샘플을 얻어온다라고 해 이 메서드를 호출한다. 이 메서드는, 새로운 출력 샘플을 준비하는 CTransformFilter::InitializeOutputSample 메서드를 호출한다. 그 후 CTransformFilter::Transform 메서드를 호출한다. 이 메서드는, 상속 클래스로 처리 해야 한다. Transform 메서드는 입력 데이터를 처리해, 출력 데이터를 생성 한다.

Transform 메서드가 S_FALSE 를 돌려주면Receive 메서드는 이 샘플을 드롭 한다. 최초로 드롭 된 샘플에서는, 필터는 EC_QUALITY_CHANGE 이벤트를 필터 그래프 매니저에 보낸다. 한편,Transform 메서드가 S_OK 를 돌려주면 필터는 출력 샘플을 출력한다. 그것을 실시하기 (위해)때문에, 다운 스트림의 입력 핀의 IMemInputPin::Receive 메서드를 호출한다.

참조

CTransformFilter 클래스

↑TOP