ISampleGrabber::SetCallback 메서드

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

참고

[더 이상 사용되지 않습니다. 이 API는 이후 Windows 릴리스에서 제거될 수 있습니다.]

 

SetCallback 메서드는 들어오는 샘플에서 호출할 콜백 메서드를 지정합니다.

구문

HRESULT SetCallback(
   ISampleGrabberCB *pCallback,
   long             WhichMethodToCallback
);

매개 변수

pCallback

콜백 메서드를 포함하는 ISampleGrabberCB 인터페이스에 대한 포인터이거나 콜백을 취소하는 NULL 입니다.

어느MethodToCallback

콜백 메서드를 지정하는 인덱스입니다. 다음 값 중 하나여야 합니다.

Description
0 샘플 그래버 필터는 ISampleGrabberCB::SampleCB 메서드를 호출합니다. 이 메서드는 IMediaSample 포인터를 받습니다.
1 샘플 그래버 필터는 ISampleGrabberCB::BufferCB 메서드를 호출합니다. 이 메서드는 미디어 샘플에 포함된 버퍼에 대한 포인터를 받습니다.

 

반환 값

메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.

설명

데이터 처리 스레드는 콜백 메서드가 반환될 때까지 차단됩니다. 콜백이 빠르게 반환되지 않으면 재생을 방해할 수 있습니다.

필터는 사전 등록 샘플 또는 AM_SAMPLE2_PROPERTIES 구조체의 dwStreamId 멤버가 AM_STREAM_MEDIA 이외의 다른 샘플에 대해 콜백 함수를 호출하지 않습니다.

참고

헤더 파일 Qedit.h는 버전 7 이후의 Direct3D 헤더와 호환되지 않습니다.

 

참고

Qedit.h를 얻으려면 Windows Vista용 Microsoft Windows SDK 업데이트를 다운로드하고 3.0을 .NET Framework. Qedit.h는 Windows 7 및 .NET Framework 3.5 서비스 팩 1용 Microsoft Windows SDK 사용할 수 없습니다.

 

요구 사항

요구 사항
헤더
Qedit.h
라이브러리
Strmiids.lib

추가 정보

샘플 그래버 사용

ISampleGrabber 인터페이스