IMFSequencerSource::GetPresentationContext メソッド (mfidl.h)
プレゼンテーション記述子を、関連付けられているシーケンサー要素識別子と、それが表すトポロジにマップします。
構文
HRESULT GetPresentationContext(
[in] IMFPresentationDescriptor *pPD,
[out] MFSequencerElementId *pId,
[out] IMFTopology **ppTopology
);
パラメーター
[in] pPD
プレゼンテーション記述子の IMFPresentationDescriptor インターフェイスへのポインター。
[out] pId
シーケンサー要素識別子を受け取ります。 この値は、アプリケーションが IMFSequencerSource::AppendTopology を呼び出すときに、シーケンサー ソースによって割り当てられます。 このパラメーターは省略可能であり、 NULL にすることができます。
[out] ppTopology
アプリケーションがシーケンサー ソースに追加した元のトポロジの IMFTopology インターフェイスへのポインターを受け取ります。 呼び出し元はインターフェイスを解放する必要があります。 シーケンサー ソースが次のプレゼンテーションに切り替わった場合、このパラメーターは NULL 値を受け取ることができます。 このパラメーターは省略可能であり、 NULL にすることができます。
戻り値
このメソッドは HRESULT を返します。 有効な値を次の表に示しますが、これ以外にもあります。
リターン コード | 説明 |
---|---|
|
メソッドが成功しました。 |
|
プレゼンテーション記述子が無効です。 |
|
このセグメントは取り消されました。 |
解説
ppTopology で返されるトポロジは、アプリケーションが AppendTopology で指定した元のトポロジです。 このトポロジのソース ノードには、ネイティブ ソースへのポインターが含まれています。 メディア セッションでこのトポロジをキューに登録しないでください。 代わりに、 IMFMediaSourceTopologyProvider::GetMediaSourceTopology を呼び出して、シーケンサー ソースの変更されたトポロジを取得します。 変更されたトポロジのソース ノードには、ネイティブ ソースではなく、シーケンサー ソースへのポインターが含まれています。
要件
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | mfidl.h |
Library | Mfuuid.lib |