IMFCaptureEngineOnEventCallback::OnEvent 메서드(mfcaptureengine.h)
캡처 엔진에서 호출되어 캡처 이벤트를 애플리케이션에 알립니다.
구문
HRESULT OnEvent(
[in] IMFMediaEvent *pEvent
);
매개 변수
[in] pEvent
IMFMediaEvent 인터페이스에 대한 포인터입니다. 이 인터페이스를 사용하여 설명에 설명된 대로 이벤트에 대한 정보를 가져옵니다.
반환 값
메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.
설명
이벤트 유형을 얻으려면 IMFMediaEvent::GetExtendedType을 호출합니다. 이 메서드는 다음 GUID 중 하나를 반환합니다.
GUID | 설명 |
---|---|
MF_CAPTURE_ENGINE_ALL_EFFECTS_REMOVED | IMFCaptureSource::RemoveAllEffects 메서드가 완료되었습니다. |
MF_CAPTURE_ENGINE_CAMERA_STREAM_BLOCKED | 드라이버에 의해 비디오 캡처가 차단되었습니다. |
MF_CAPTURE_ENGINE_CAMERA_STREAM_UNBLOCKED | 비디오 캡처가 차단된 후 드라이버에 의해 복원되었습니다. |
MF_CAPTURE_ENGINE_EFFECT_ADDED | IMFCaptureSource::AddEffect 메서드가 완료되었습니다. |
MF_CAPTURE_ENGINE_EFFECT_REMOVED | IMFCaptureSource::RemoveEffect 메서드가 완료되었습니다. |
MF_CAPTURE_ENGINE_ERROR | 캡처하는 동안 오류가 발생했습니다. |
MF_CAPTURE_ENGINE_INITIALIZED | IMFCaptureEngine::Initialize 메서드가 완료되었습니다. |
MF_CAPTURE_ENGINE_PHOTO_TAKEN | IMFCaptureEngine::TakePhoto 메서드가 완료되었습니다. |
MF_CAPTURE_ENGINE_PREVIEW_STARTED | IMFCaptureEngine::StartPreview 메서드가 완료되었습니다. |
MF_CAPTURE_ENGINE_PREVIEW_STOPPED | IMFCaptureEngine::StopPreview 메서드가 완료되었습니다. |
MF_CAPTURE_ENGINE_RECORD_STARTED | IMFCaptureEngine::StartRecord 메서드가 완료되었습니다. |
MF_CAPTURE_ENGINE_RECORD_STOPPED | IMFCaptureEngine::StopRecord 메서드가 완료되었습니다. |
MF_CAPTURE_SINK_PREPARED | IMFCaptureSink::P repare 메서드가 완료되었습니다. |
MF_CAPTURE_SOURCE_CURRENT_DEVICE_MEDIA_TYPE_SET | IMFCaptureSource::SetCurrentDeviceMediaType 메서드가 완료되었습니다. |
이 메서드는 작업자 스레드에서 호출될 수 있습니다. 구현은 스레드로부터 안전해야 합니다.
이벤트에 대한 상태 코드를 얻으려면 IMFMediaEvent::GetStatus를 호출합니다. 상태 코드가 오류 코드인 경우 요청된 작업이 실패했음을 나타냅니다.
또한 pEvent 로 지정된 이벤트 개체에는 다음 특성이 포함될 수 있습니다.
이벤트 특성을 가져오려면 IMFMediaEvent가 상속하는 IMFAttributes 인터페이스를 사용합니다.요구 사항
지원되는 최소 클라이언트 | Windows 8 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2012 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | mfcaptureengine.h |