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 指定的事件物件可能包含下列任何屬性。
若要取得事件屬性,請使用 IMFAttributes 介面, 其 IMFMediaEvent 會繼承此介面。需求
最低支援的用戶端 | Windows 8 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2012 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | mfcaptureengine.h |