KsAcquireCachedMdl-Funktion (ks.h)
Diese Funktion wird verwendet, um die vom KS-Porttreiber zwischengespeicherte MDL zu erhalten. Die Funktion wird von einem Kernelmodustreiber verwendet, um die MDL für ein von einem Avstream-Treiber generiertes Pipelinebeispiel zu erhalten.
Syntax
KSDDKAPI NTSTATUS KsAcquireCachedMdl(
PIRP Irp,
REFGUID Guid,
PFNKSCANCELPINNEDMDL CancelRoutine,
PVOID CancelContext,
PMDL *MdlAddr,
PVOID *ReleaseContext
);
Parameter
Irp
Das vom Benutzermodus übergebene IRP, das den Beispielpuffer für den Benutzermodus enthält.
Guid
Die GUID, die aus dem attributelement MFSampleExtension_MDLCacheCookie des IMFSample extrahiert, das von der Pipeline übergeben wird.
CancelRoutine
Cancel routine, a callback function supplied by the Avstream miniport driver. Diese Funktion wird aufgerufen, wenn der Zustand des Pins, der das Beispiel generiert, in den STOP-Zustand versetzt wird. Die Signatur der Abbruchroutine lautet wie folgt:
_IRQL_requires_max_(DISPATCH_LEVEL)
typedef
VOID
(*PFNKSCANCELPINNEDMDL)(
_In_ GUID,
_In_ PVOID,
_In_ PVOID
);
GUID-
GUID, die vom Avstream-Miniporttreiber in der KsAcquireCachedMdl Funktion übergeben wird.
PVOID-
Abbrechen des Kontexts, der vom Avstream-Miniporttreiber im KsAcquireCachedMdl Funktionsaufruf bereitgestellt wird.
PVOID-
Releasekontext. Dies ist die Ausgabe der funktion KsAcquireCachedMdl.
CancelContext
Der Kontext, der an den Avstream-Treiber in der Cancel-Routine übergeben wurde. Dieser Kontext wird vom Avstream-Treiber verwendet, um in den Treiberkontext zu gelangen.
MdlAddr
Rückgabewert: Die resultierende MDL, wenn KS die für den Beispielpuffer gespeicherte MDL findet.
ReleaseContext
Rückgabewert: Der kontext, der vom Avstream-Treiber gespeichert werden soll. Dieser Kontext sollte an KS übergeben werden, wenn die vom KsAcquireCachedMdl Aufruf abgerufene MDL freigegeben wird.
Rückgabewert
Gibt STATUS_SUCCESS für Erfolgsbedingungen zurück.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Universal |
Header- | ks.h (enthalten Ks.h) |
Library | Ks.lib |