KsPinGetAvailableByteCount-Funktion (ks.h)

Die KsPinGetAvailableByteCount-Routine gibt die Anzahl der Bytes der Eingabedaten vor dem führenden Edge und die Anzahl der Bytes des Ausgabepuffers vor dem führenden Edge aus, beides für die Warteschlange eines vom Aufrufer angegebenen Pins.

Syntax

KSDDKAPI NTSTATUS KsPinGetAvailableByteCount(
  [in]            PKSPIN Pin,
  [out, optional] PLONG  InputDataBytes,
  [out, optional] PLONG  OutputBufferBytes
);

Parameter

[in] Pin

Ein Zeiger auf eine KSPIN-Struktur , für die diese Warteschlangenparameter berechnet werden sollen.

[out, optional] InputDataBytes

Ein Zeiger auf einen LONG-Wert, in dem die Routine die Anzahl der Eingabedatenbytes vor dem führenden Edge zurückgibt. Der Aufrufer legt auf NULL fest, wenn dieser Wert nicht angefordert wird.

[out, optional] OutputBufferBytes

Ein Zeiger auf einen LONG-Wert, in dem die Routine die Anzahl der Ausgabepufferbytes vor dem führenden Edge zurückgibt. Der Aufrufer legt auf NULL fest, wenn dieser Wert nicht angefordert wird.

Rückgabewert

Gibt STATUS_SUCCESS zurück, wenn die angeforderte(n) Anzahl(en) abgerufen wurden. Eine nicht erfolgreiche rückgabe status gibt an, dass pin keine zugeordnete Warteschlange enthält.

Hinweise

Nicht platzierte Pins sollten InputDataBytes für Eingabepins und OutputBufferBytes für Ausgabepins verwenden.

Die Ergebnisse dieses Aufrufs sind nicht sicher, es sei denn, der Verarbeitungsmutex wird zur Anrufzeit gehalten oder der Aufrufer hat vor dem Aufrufen der Routine privat synchronisiert. Stellen Sie für die private Synchronisierung sicher, dass der Pin nicht von Acquire zu Beenden wechselt, während die Routine ausgeführt wird. Weitere Informationen finden Sie unter Verarbeiten von Mutex in AVStream.

Beachten Sie auch, dass die direkte Transformation Eingabe- und Ausgabeanzahlen liefern kann.

In Windows XP und DirectX 8.0 ist die InputDataBytes-Anzahl nicht gültig, es sei denn, frames, die der Filter empfängt, sind voll.

Weitere Informationen finden Sie unter Führende und nachgestellte Edge-Stream Zeiger.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Microsoft Windows XP und höheren Betriebssystemen und DirectX 8.0 und höher DirectX-Versionen.
Zielplattform Universell
Header ks.h (einschließlich Ks.h)
Bibliothek Ks.lib

Weitere Informationen

AVStrMiniPinProcess

KSPIN_DESCRIPTOR_EX

KSPIN_DISPATCH

KSSTREAM_POINTER

KsFilterAcquireProcessingMutex

KsFilterReleaseProcessingMutex

KsPinAcquireProcessingMutex

KsPinGetLeadingEdgeStreamPointer

KsPinGetTrailingEdgeStreamPointer

KsPinReleaseProcessingMutex