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を返します。
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | 万国 |
ヘッダー | ks.h (Ks.h を含む) |
ライブラリ | Ks.lib |