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 でもかまいません。

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

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

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

[in, optional] pVideoSource

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

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

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

既定のビデオ デバイスをオーバーライドするには、 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