Функция KsAcquireCachedMdl (ks.h)
Эта функция используется для получения MDL, кэшированного драйвером порта KS. Функция используется драйвером режима ядра для получения MDL для предоставленного конвейером примера, созданного драйвером Avstream.
Синтаксис
KSDDKAPI NTSTATUS KsAcquireCachedMdl(
PIRP Irp,
REFGUID Guid,
PFNKSCANCELPINNEDMDL CancelRoutine,
PVOID CancelContext,
PMDL *MdlAddr,
PVOID *ReleaseContext
);
Параметры
Irp
IRP, передаваемый из пользовательского режима, содержащего пример буфера пользовательского режима.
Guid
GUID, извлеченный из элемента атрибута MFSampleExtension_MDLCacheCookie , переданного конвейером IMFSample .
CancelRoutine
Отмена подпрограммы— функция обратного вызова, предоставляемая драйвером мини-порта Avstream. Эта функция вызывается, когда состояние закрепления, создающего пример, перейдет в состояние STOP. Сигнатура процедуры отмены выглядит следующим образом:
_IRQL_requires_max_(DISPATCH_LEVEL)
typedef
VOID
(*PFNKSCANCELPINNEDMDL)(
_In_ GUID,
_In_ PVOID,
_In_ PVOID
);
GUID
GUID, переданный в функцию KsAcquireCachedMdl драйвером мини-порта Avstream.
PVOID
Контекст отмены, предоставленный драйвером avstream miniport в вызове функции KsAcquireCachedMdl .
PVOID
Контекст выпуска. Это выходные данные функции KsAcquireCachedMdl .
CancelContext
Контекст, передаваемый драйверу Avstream в процедуре отмены. Этот контекст используется драйвером Avstream для получения сведений о контексте драйвера.
MdlAddr
Возвращаемое значение: результирующий MDL, если KS находит MDL, хранящийся для буфера образца.
ReleaseContext
Возвращаемое значение: контекст, хранимый драйвером Avstream. Этот контекст следует передать в KS при освобождении MDL, полученного вызовом KsAcquireCachedMdl .
Возвращаемое значение
Возвращает STATUS_SUCCESS для условий успешного выполнения.
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Верхняя часть | ks.h (включая Ks.h) |
Библиотека | Ks.lib |