Freigeben über


KsFilterAttemptProcessing-Funktion (ks.h)

Die KsFilterAttemptProcessing-Funktion versucht, die Verarbeitung für Filter zu initiieren.

Syntax

void KsFilterAttemptProcessing(
  [in] PKSFILTER Filter,
  [in] BOOLEAN   Asynchronous
);

Parameter

[in] Filter

Ein Zeiger auf eine KSFILTER-Struktur , die das AVStream-Filterobjekt darstellt, für das die Verarbeitung versucht werden soll.

[in] Asynchronous

Dieser Parameter enthält einen Hinweis darauf, ob der Verarbeitungsversand asynchron erfolgen soll oder nicht (sollte er auftreten). Eine asynchrone Verteilung ist garantiert, wenn dies TRUE ist. Synchrone Verarbeitungsverteilungen unterliegen jedoch den unten beschriebenen Bedingungen.

Rückgabewert

Keine

Bemerkungen

Wenn der Minitreiber KsFilterAttemptProcessing aufruft , wenn alle für die Verarbeitung von Daten erforderlichen Bedingungen erfüllt sind, erfolgt eine Verarbeitungsversendung. Weitere Informationen zum Prozessrückruf finden Sie unter KSFILTER_DISPATCH. Damit der Versuch zu einer tatsächlichen Versendung führt, muss sich das Prozesssteuerungsgate des Filters in einem geöffneten Zustand befinden. Im Gegensatz zur pinzentrierten Verarbeitung hat die filterzentrierte Verarbeitung viele Bedingungen, die sich auf das Prozesssteuerungsgate auswirken. Weitere Informationen zu diesen Anforderungen finden Sie unter Filterzentrierte Verarbeitung und pinzentrierte Verarbeitung.

Wenn das Prozesssteuerungsgate geöffnet ist, erfolgt eine Verarbeitungsverteilung, entweder synchron oder asynchron. Wenn der Aufrufer true im Asynchronous-Parameter angibt, erfolgt die Verarbeitungsverteilung immer asynchron in einem Arbeitselement. Wenn der Aufrufer jedoch eine synchrone Verarbeitungsverteilung anfordert, erfolgt die Verteilung nur synchron, wenn sich das System derzeit an einem IRQL befindet, an dem der Minitreiber die Verarbeitung verarbeiten kann. Wenn sich das System auf PASSIVE_LEVEL befindet, erfolgt die Verteilung garantiert synchron. Wenn sich das System dagegen auf DISPATCH_LEVEL befindet, erfolgt die Verteilung nur synchron, wenn KSFILTER_FLAG_DISPATCH_LEVEL_PROCESSING für den Filter angegeben ist. Andernfalls wird ein Arbeitselement in die Warteschlange gestellt, um die Verarbeitung auszuführen.

Beachten Sie, dass dies nur ein Verarbeitungsversuch ist. Der Aufruf dieser Funktion garantiert nicht, dass die Verarbeitung beginnt. Die Verarbeitung erfolgt nur, wenn das Prozesssteuerungsgate "offen" ist. Weitere Informationen finden Sie unter Neustarten der Verarbeitung in AVStream und Ablaufsteuerungsgates in AVStream.

Anforderungen

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

Weitere Informationen

KSFILTER_DISPATCH

KSGATE

KsGateCaptureThreshold

KsPinAttemptProcessing