次の方法で共有


IMFWorkQueueServices::BeginRegisterTopologyWorkQueuesWithMMCSS メソッド (mfidl.h)

トポロジ作業キューをマルチメディア クラス スケジューラ サービス (MMCSS) に登録します。

構文

HRESULT BeginRegisterTopologyWorkQueuesWithMMCSS(
  [in] IMFAsyncCallback *pCallback,
  [in] IUnknown         *pState
);

パラメーター

[in] pCallback

コールバック オブジェクトの IMFAsyncCallback インターフェイスへのポインター。 呼び出し元は、このインターフェイスを実装する必要があります。

[in] pState

呼び出し元によって定義された状態オブジェクトの IUnknown インターフェイスへのポインター。 このパラメーターは、NULL でもかまいません。 このオブジェクトを使用して、状態情報を保持できます。 コールバックが呼び出されると、オブジェクトが呼び出し元に返されます。

戻り値

このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。

注釈

トポロジ内の各ソース ノードは、トポロジの 1 つのブランチを定義します。 ブランチには、そのノードからデータを受信するすべてのトポロジ ノードが含まれます。 アプリケーションは、トポロジの各ブランチに独自の作業キューを割り当ててから、それらの作業キューを MMCSS タスクに関連付けることができます。

このメソッドを使用するには、次の手順を実行します。

  1. トポロジを作成します。
  2. トポロジのソース ノードに次の属性を設定します。
  3. IMFMediaSession::SetTopology を呼び出してトポロジをキューに入れます。
  4. MF_TOPOSTATUS_READY状態の MESessionTopologyStatus イベントを待ちます。
  5. BeginRegisterTopologyWorkQueuesWithMMCSS を呼び出します。 このメソッドは、すべてのトポロジ作業キューを MMCSS に登録します。
BeginRegisterTopologyWorkQueuesWithMMCSS メソッドは非同期です。 操作が完了すると、コールバック オブジェクトの IMFAsyncCallback::Invoke メソッドが呼び出されます。 コールバック メソッド内で IMFWorkQueueServices::EndRegisterTopologyWorkQueuesWithMMCSS を呼び出して、非同期要求を完了します。 この操作が完了すると、メディア セッションは、メディア セッションでキューに登録されたすべての新しいトポロジの作業キューを自動的に登録します。 アプリケーションは、新しいトポロジに対して メソッドを再度呼び出す必要はありません。

MMCSS からトポロジ作業キューの登録を解除するには、 IMFWorkQueueServices::BeginUnregisterTopologyWorkQueuesWithMMCSS を呼び出します。

要件

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

こちらもご覧ください

IMFWorkQueueServices