KsAcquireCachedMdl-Funktion (ks.h)
Diese Funktion wird verwendet, um die MDL zu erhalten, die vom KS-Porttreiber zwischengespeichert wird. Die Funktion wird von einem Kernelmodustreiber verwendet, um die MDL für ein von der Pipeline bereitgestelltes Beispiel zu erhalten, das von einem Avstream-Treiber generiert wurde.
Syntax
KSDDKAPI NTSTATUS KsAcquireCachedMdl(
PIRP Irp,
REFGUID Guid,
PFNKSCANCELPINNEDMDL CancelRoutine,
PVOID CancelContext,
PMDL *MdlAddr,
PVOID *ReleaseContext
);
Parameter
Irp
Die vom Benutzermodus übergebene IRP, die den Benutzermodus-Beispielpuffer enthält.
Guid
Die GUID, die aus dem MFSampleExtension_MDLCacheCookie Attributelement des von der Pipeline übergebenen IMFSample extrahiert wurde.
CancelRoutine
Cancel-Routine, eine Rückruffunktion, die vom Avstream-Miniporttreiber bereitgestellt wird. Diese Funktion wird aufgerufen, wenn der Status des Pins, der das Beispiel generiert, in den STATUS STOP wechselt. Die Signatur der Abbruchroutine lautet wie folgt:
_IRQL_requires_max_(DISPATCH_LEVEL)
typedef
VOID
(*PFNKSCANCELPINNEDMDL)(
_In_ GUID,
_In_ PVOID,
_In_ PVOID
);
GUID
GUID, die in der KsAcquireCachedMdl-Funktion vom Avstream-Miniporttreiber übergeben wird.
PVOID
Abbrechen des Kontexts, der vom Avstream-Miniporttreiber im Funktionsaufruf KsAcquireCachedMdl bereitgestellt wird.
PVOID
Releasekontext. Dies ist die Ausgabe der KsAcquireCachedMdl-Funktion .
CancelContext
Der Kontext, der in der Abbruchroutine an den Avstream-Treiber übergeben wird. 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 vom Avstream-Treiber zu speichernde Kontext. 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 | Universell |
Header | ks.h (ks.h einschließen) |
Bibliothek | Ks.lib |