Freigeben über


IMFCaptureEngineOnEventCallback::OnEvent-Methode (mfcaptureengine.h)

Wird von der Erfassungs-Engine aufgerufen, um die Anwendung über ein Erfassungsereignis zu benachrichtigen.

Syntax

HRESULT OnEvent(
  [in] IMFMediaEvent *pEvent
);

Parameter

[in] pEvent

Ein Zeiger auf die IMFMediaEvent-Schnittstelle . Verwenden Sie diese Schnittstelle, um Informationen zum Ereignis abzurufen, wie unter Hinweise beschrieben.

Rückgabewert

Wenn diese Methode erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.

Hinweise

Um den Typ des Ereignisses abzurufen, rufen Sie IMFMediaEvent::GetExtendedType auf. Diese Methode gibt eine der folgenden GUIDs zurück.

GUID Beschreibung
MF_CAPTURE_ENGINE_ALL_EFFECTS_REMOVED Die IMFCaptureSource::RemoveAllEffects-Methode wurde abgeschlossen.
MF_CAPTURE_ENGINE_CAMERA_STREAM_BLOCKED Die Videoaufzeichnung wurde vom Treiber blockiert.
MF_CAPTURE_ENGINE_CAMERA_STREAM_UNBLOCKED Die Videoaufnahme wurde vom Treiber wiederhergestellt, nachdem sie blockiert wurde.
MF_CAPTURE_ENGINE_EFFECT_ADDED Die IMFCaptureSource::AddEffect-Methode wurde abgeschlossen.
MF_CAPTURE_ENGINE_EFFECT_REMOVED Die IMFCaptureSource::RemoveEffect-Methode wurde abgeschlossen.
MF_CAPTURE_ENGINE_ERROR Während der Erfassung ist ein Fehler aufgetreten.
MF_CAPTURE_ENGINE_INITIALIZED Die IMFCaptureEngine::Initialize-Methode wurde abgeschlossen.
MF_CAPTURE_ENGINE_PHOTO_TAKEN Die IMFCaptureEngine::TakePhoto-Methode wurde abgeschlossen.
MF_CAPTURE_ENGINE_PREVIEW_STARTED Die IMFCaptureEngine::StartPreview-Methode wurde abgeschlossen.
MF_CAPTURE_ENGINE_PREVIEW_STOPPED Die IMFCaptureEngine::StopPreview-Methode wurde abgeschlossen.
MF_CAPTURE_ENGINE_RECORD_STARTED Die IMFCaptureEngine::StartRecord-Methode wurde abgeschlossen.
MF_CAPTURE_ENGINE_RECORD_STOPPED Die IMFCaptureEngine::StopRecord-Methode wurde abgeschlossen.
MF_CAPTURE_SINK_PREPARED Die IMFCaptureSink::P repare-Methode wurde abgeschlossen.
MF_CAPTURE_SOURCE_CURRENT_DEVICE_MEDIA_TYPE_SET Die IMFCaptureSource::SetCurrentDeviceMediaType-Methode wurde abgeschlossen.
 

Diese Methode kann von einem Workerthread aufgerufen werden. Die Implementierung sollte threadsicher sein.

Um den status Code für das Ereignis abzurufen, rufen Sie IMFMediaEvent::GetStatus auf. Wenn der status-Code ein Fehlercode ist, gibt dies an, dass beim angeforderten Vorgang ein Fehler aufgetreten ist.

Darüber hinaus kann das von pEvent angegebene Ereignisobjekt eines der folgenden Attribute enthalten.

Verwenden Sie zum Abrufen von Ereignisattributen die IMFAttributes-Schnittstelle , die IMFMediaEvent erbt.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 8 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile mfcaptureengine.h

Weitere Informationen

IMFCaptureEngineOnEventCallback