IMFCaptureEngine::Initialize-Methode (mfcaptureengine.h)
Initialisiert die Erfassungs-Engine.
Syntax
HRESULT Initialize(
[in] IMFCaptureEngineOnEventCallback *pEventCallback,
[in, optional] IMFAttributes *pAttributes,
[in, optional] IUnknown *pAudioSource,
[in, optional] IUnknown *pVideoSource
);
Parameter
[in] pEventCallback
Ein Zeiger auf die IMFCaptureEngineOnEventCallback-Schnittstelle . Der Aufrufer muss diese Schnittstelle implementieren. Die Erfassungs-Engine verwendet diese Schnittstelle, um asynchrone Ereignisse an den Aufrufer zu senden.
[in, optional] pAttributes
Ein Zeiger auf die IMFAttributes-Schnittstelle . Dieser Parameter kann NULL sein.
Sie können diesen Parameter verwenden, um die Erfassungs-Engine zu konfigurieren. Rufen Sie MFCreateAttributes auf, um einen Attributspeicher zu erstellen, und legen Sie dann eines der folgenden Attribute fest.
- MF_CAPTURE_ENGINE_D3D_MANAGER
- MF_CAPTURE_ENGINE_DISABLE_DXVA
- MF_CAPTURE_ENGINE_DISABLE_HARDWARE_TRANSFORMS
- MF_CAPTURE_ENGINE_ENCODER_MFT_FIELDOFUSE_UNLOCK_Attribute
- MF_CAPTURE_ENGINE_EVENT_GENERATOR_GUID
- MF_CAPTURE_ENGINE_EVENT_STREAM_INDEX
- MF_CAPTURE_ENGINE_MEDIASOURCE_CONFIG
- MF_CAPTURE_ENGINE_RECORD_SINK_AUDIO_MAX_PROCESSED_SAMPLES
- MF_CAPTURE_ENGINE_RECORD_SINK_AUDIO_MAX_UNPROCESSED_SAMPLES
- MF_CAPTURE_ENGINE_RECORD_SINK_VIDEO_MAX_PROCESSED_SAMPLES
- MF_CAPTURE_ENGINE_RECORD_SINK_VIDEO_MAX_UNPROCESSED_SAMPLES
- MF_CAPTURE_ENGINE_USE_AUDIO_DEVICE_ONLY
- MF_CAPTURE_ENGINE_USE_VIDEO_DEVICE_ONLY
[in, optional] pAudioSource
Ein IUnknown-Zeiger , der ein Audioaufnahmegerät angibt. Dieser Parameter kann NULL sein.
Wenn Sie das MF_CAPTURE_ENGINE_USE_VIDEO_DEVICE_ONLY-Attribut in pAttributes auf TRUE festlegen, verwendet die Erfassungs-Engine kein Audiogerät, und der pAudioSource-Parameter wird ignoriert.
Andernfalls wählt die Aufnahme-Engine das Mikrofon aus, das in die von pVideoSource angegebene Videokamera integriert ist, wenn pAudioSourceNULL ist. Wenn die Videokamera kein Mikrofon hat, listet die Aufnahme-Engine die Audioaufnahmegeräte auf dem System auf und wählt das erste aus.
Um das Standardaudiogerät zu überschreiben, legen Sie pAudioSource auf einen IMFMediaSource - oder IMFActivate-Zeiger für das Gerät fest. Weitere Informationen finden Sie unter Audio/Video Capture in Media Foundation.
[in, optional] pVideoSource
Ein IUnknown-Zeiger , der ein Videoaufnahmegerät angibt. Dieser Parameter kann NULL sein.
Wenn Sie das MF_CAPTURE_ENGINE_USE_AUDIO_DEVICE_ONLY-Attribut in pAttributes auf TRUE festlegen, verwendet die Erfassungs-Engine kein Videogerät, und der pVideoSource-Parameter wird ignoriert.
Andernfalls zählt die Erfassungs-Engine die Videoaufnahmegeräte auf dem System auf, wenn pVideoSourceNULL ist, und wählt das erste aus.
Um das Standardvideogerät zu überschreiben, legen Sie pVideoSource auf einen IMFMediaSource - oder IMFActivate-Zeiger für das Gerät fest. Weitere Informationen finden Sie unter Aufzählen von Videoaufnahmegeräten.
Rückgabewert
Diese Methode kann einen dieser Werte zurückgeben.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Erfolg. |
|
Die Initialize-Methode wurde bereits aufgerufen. |
|
Es sind keine Erfassungsgeräte verfügbar. |
|
Ein nicht unterstütztes Erfassungsgerät ist auf dem System vorhanden. Dieser Fehler wird nur zurückgegeben, wenn NULL für den pVideoSource-Parameter angegeben ist, der angibt, dass das System das Erfassungsgerät auswählen soll, und wenn bereits kein unterstütztes Erfassungsgerät angefügt wurde. Es wird empfohlen, dass Apps Benutzern eine bestimmte nicht unterstützte Erfassungsgerätenachricht anzeigen, wenn dieser Fehler zurückgegeben wird, anstatt eine allgemeine Fehlermeldung anzuzeigen. |
Hinweise
Sie müssen diese Methode einmal aufrufen, bevor Sie die Erfassungs-Engine verwenden. Durch das zweite Aufrufen der Methode wird MF_E_INVALIDREQUEST zurückgegeben.
Diese Methode ist asynchron. Wenn die Methode einen Erfolgscode zurückgibt, empfängt der Aufrufer über die IMFCaptureEngineOnEventCallback::OnEvent-Methode ein MF_CAPTURE_ENGINE_INITIALIZED-Ereignis. Der Vorgang kann asynchron fehlschlagen, nachdem die Methode erfolgreich war. Wenn ja, wird der Fehlercode über die OnEvent-Methode übermittelt.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 8 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2012 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | mfcaptureengine.h |