IMFCaptureEngine::Initialize メソッド (mfcaptureengine.h)

キャプチャ エンジンを初期化します。

構文

HRESULT Initialize(
  [in]           IMFCaptureEngineOnEventCallback *pEventCallback,
  [in, optional] IMFAttributes                   *pAttributes,
  [in, optional] IUnknown                        *pAudioSource,
  [in, optional] IUnknown                        *pVideoSource
);

パラメーター

[in] pEventCallback

IMFCaptureEngineOnEventCallback インターフェイスへのポインター。 呼び出し元は、このインターフェイスを実装する必要があります。 キャプチャ エンジンは、このインターフェイスを使用して非同期イベントを呼び出し元に送信します。

[in, optional] pAttributes

IMFAttributes インターフェイスへのポインター。 このパラメーターは、NULL でもかまいません。

このパラメーターを使用して、キャプチャ エンジンを構成できます。 MFCreateAttributes を呼び出して属性ストアを作成し、次のいずれかの属性を設定します。

[in, optional] pAudioSource

オーディオ キャプチャ デバイスを指定する IUnknown ポインター。 このパラメーターは、NULL でもかまいません。

pAttributesMF_CAPTURE_ENGINE_USE_VIDEO_DEVICE_ONLY 属性を TRUE に設定した場合、キャプチャ エンジンはオーディオ デバイスを使用せず、pAudioSource パラメーターは無視されます。

それ以外の場合、 pAudioSourceNULL の場合、キャプチャ エンジンは pVideoSource で指定されたビデオ カメラに組み込まれているマイクを選択します。 ビデオ カメラにマイクがない場合、キャプチャ エンジンはシステム上のオーディオ キャプチャ デバイスを列挙し、最初のデバイスを選択します。

既定のオーディオ デバイスをオーバーライドするには、 pAudioSource をデバイスの IMFMediaSource または IMFActivate ポインターに設定します。 詳細については、「 Media Foundation のオーディオ/ビデオ キャプチャ」を参照してください。

[in, optional] pVideoSource

ビデオ キャプチャ デバイスを指定する IUnknown ポインター。 このパラメーターは、NULL でもかまいません。

pAttributesMF_CAPTURE_ENGINE_USE_AUDIO_DEVICE_ONLY 属性を TRUE に設定した場合、キャプチャ エンジンはビデオ デバイスを使用せず、pVideoSource パラメーターは無視されます。

それ以外の場合、 pVideoSourceNULL の場合、キャプチャ エンジンはシステム上のビデオ キャプチャ デバイスを列挙し、最初のデバイスを選択します。

既定のビデオ デバイスをオーバーライドするには、 pVideoSource をデバイスの IMFMediaSource または IMFActivate ポインターに設定します。 詳細については、「 ビデオ キャプチャ デバイスの列挙」を参照してください。

戻り値

このメソッドは、これらの値のいずれかを返すことができます。

リターン コード 説明
S_OK
正常終了しました。
MF_E_INVALIDREQUEST
Initialize メソッドは既に呼び出されています。
MF_E_NO_CAPTURE_DEVICES_AVAILABLE
キャプチャ デバイスは使用できません。
MF_E_UNSUPPORTED_CAPTURE_DEVICE_PRESENT
サポートされていないキャプチャ デバイスがシステムに存在します。 このエラーは、 pVideoSource パラメーターに NULL が指定され、システムがキャプチャ デバイスを選択する必要があることを示し、サポートされているキャプチャ デバイスが既にアタッチされていない場合にのみ返されます。 一般的なエラー メッセージではなく、このエラーが返された場合は、アプリでサポートされていない特定のキャプチャ デバイス メッセージをユーザーに表示することをお勧めします。

注釈

キャプチャ エンジンを使用する前に、このメソッドを 1 回呼び出す必要があります。 メソッドを 2 回目に呼び出すと 、MF_E_INVALIDREQUESTが返されます。

このメソッドは非同期です。 メソッドが成功コードを返した場合、呼び出し元は IMFCaptureEngineOnEventCallback::OnEvent メソッドを介してMF_CAPTURE_ENGINE_INITIALIZED イベントを受け取ります。 メソッドが成功した後、操作は非同期的に失敗する可能性があります。 その場合、エラー コードは OnEvent メソッドを介して伝達されます。

要件

要件
サポートされている最小のクライアント Windows 8 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2012 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー mfcaptureengine.h

こちらもご覧ください

IMFCaptureEngine