MFCreatePMPMediaSession 関数 (mfidl.h)

保護されたメディア パス (PMP) プロセス内にメディア セッション のインスタンスを作成します。

構文

HRESULT MFCreatePMPMediaSession(
  DWORD           dwCreationFlags,
  IMFAttributes   *pConfiguration,
  IMFMediaSession **ppMediaSession,
  IMFActivate     **ppEnablerActivate
);

パラメーター

dwCreationFlags

セッション オブジェクトの作成方法を指定する MFPMPSESSION_CREATION_FLAGS 列挙体のメンバー。

pConfiguration

IMFAttributes インターフェイスへのポインター。 このパラメーターは、NULL でもかまいません。 「解説」を参照してください。

ppMediaSession

PMP メディア セッションの IMFMediaSession インターフェイスへのポインターを受け取ります。 呼び出し元はインターフェイスを解放する必要があります。 IMFMediaSession ポインターへの最後の参照を解放する前に、アプリケーションで IMFMediaSession::Shutdown メソッドを呼び出す必要があります。

ppEnablerActivate

IMFActivate インターフェイスまたは値 NULL へのポインターを受け取ります。 NULL 以外の場合、呼び出し元はインターフェイスを解放する必要があります。 「解説」を参照してください。

戻り値

関数は HRESULT を返します。 有効な値を次の表に示しますが、これ以外にもあります。

リターン コード 説明
S_OK
関数が正常に実行されました。

注釈

pConfiguration パラメーターを使用して、次のいずれかの属性を設定できます。

信頼されたバイナリが取り消されたためにこの関数で PMP メディア セッションを作成できない場合、 ppEnablerActivate パラメーターは IMFActivate インターフェイス ポインターを受け取ります。 アプリケーションでは、このポインターを使用してコンテンツ イネーブラー オブジェクトを作成し、更新されたバイナリをダウンロードするために使用できます。
  1. IMFContentEnabler インターフェイス ポインターを取得するには、インターフェイス識別子IID_IMFContentEnablerを使用して IMFActivate::ActivateObject を呼び出します。
  2. そのインターフェイスを使用して、更新されたバイナリをダウンロードします。
  3. MFCreatePMPMediaSession をもう一度呼び出します。
関数によって PMP メディア セッションが正常に作成された場合、 ppEnablerActivate パラメーターは値 NULL を受け取ります。

別のスレッドから送信されたウィンドウ メッセージを処理しているスレッドから PMP メディア セッションを呼び出さないでください。 現在のスレッドがこのカテゴリに分類されるかどうかをテストするには、 InSendMessage を呼び出します。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ | UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリ | UWP アプリ]
対象プラットフォーム Windows
ヘッダー mfidl.h
Library Mf.lib
[DLL] Mf.dll

こちらもご覧ください

MFCreateMediaSession

メディア ファンデーション機能

PMP メディア セッション

保護されたメディア パス