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 |