KsAcquireCachedMdl 関数 (ks.h)
この関数は、KS ポート ドライバーによってキャッシュされた MDL を取得するために使用されます。 この関数は、Avstream ドライバーによって生成されるパイプライン指定のサンプルの MDL を取得するためにカーネル モード ドライバーによって使用されます。
構文
KSDDKAPI NTSTATUS KsAcquireCachedMdl(
PIRP Irp,
REFGUID Guid,
PFNKSCANCELPINNEDMDL CancelRoutine,
PVOID CancelContext,
PMDL *MdlAddr,
PVOID *ReleaseContext
);
パラメーター
Irp
ユーザー モードのサンプル バッファーを含むユーザー モードから渡された IRP。
Guid
パイプラインによって渡される IMFSample のMFSampleExtension_MDLCacheCookie属性項目から抽出された GUID。
CancelRoutine
キャンセル ルーチン。Avstream ミニポート ドライバーによって提供されるコールバック関数。 この関数は、サンプルを生成するピンの状態が STOP 状態になると呼び出されます。 キャンセル ルーチンのシグネチャは次のとおりです。
_IRQL_requires_max_(DISPATCH_LEVEL)
typedef
VOID
(*PFNKSCANCELPINNEDMDL)(
_In_ GUID,
_In_ PVOID,
_In_ PVOID
);
GUID
Avstream ミニポート ドライバーによって KsAcquireCachedMdl 関数で渡される GUID。
PVOID
KsAcquireCachedMdl 関数呼び出しで Avstream ミニポート ドライバーによって提供されるコンテキストを取り消します。
PVOID
リリース コンテキスト。 これは KsAcquireCachedMdl 関数の出力です。
CancelContext
キャンセル ルーチンで Avstream ドライバーに渡されるコンテキスト。 このコンテキストは、Avstream ドライバーがドライバー コンテキストに入るために使用されます。
MdlAddr
戻り値: KS がサンプル バッファー用に格納されている MDL を検出した場合に生成される MDL。
ReleaseContext
戻り値: Avstream ドライバーによって格納されるコンテキスト。 KsAcquireCachedMdl 呼び出しによって取得された MDL を解放するときに、このコンテキストを KS に渡す必要があります。
戻り値
成功条件のSTATUS_SUCCESSを返します。
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
Header | ks.h (Ks.h を含む) |
Library | Ks.lib |