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

CTransformFilter::Transform

Transform 메서드는, 입력 샘플을 변환해 출력 샘플을 생성 한다.

구문

virtual HRESULT Transform(
    IMediaSample *pIn,
    IMediaSample *pOut
);

파라미터

pIn

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

pOut

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

반환값

base class는 E_UNEXPECTED 를 돌려준다.

상속 클래스는, 성공 또는 실패를 나타내는 HRESULT 값을 돌려준다. 다음의 몇개의 값을 돌려준다.

설명
S_FALSE 이 샘플을 출력하지 않는다.
S_OK 성공.

주의

출력 데이터를 생성 하려면 이 메서드를 오버라이드(override) 하는 것. 입력 데이터를 pIn 파라미터로 지정된 샘플로부터 읽어들여, 새로운 데이터를 pOut 파라미터로 지정된 샘플에 기입한다.

필터는 이 메서드를 호출하기 전에, 입력 샘플로부터 출력 샘플에 프로퍼티를 복사 한다. Transform 메서드는 2 개의 샘플간에 다른 프로퍼티를 설정해야 한다. 거기에는 IMediaSample 메서드를 사용하는지, 또는 (만약 이용 가능하면) IMediaSample2 인터페이스를 사용한다.

(예를 들어, 품질 컨트롤을 지원 하기 위해서) 필터가 이 샘플을 출력해야 하는 것이 아닌 경우, 이 메서드는 S_FALSE 를 돌려주어야 하는 것이다.

참조

CTransformFilter 클래스

↑TOP