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, auf dem 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 Verteiler wird garantiert, wenn dies TRUEist; Synchrone Verarbeitungssendungen unterliegen jedoch den unten beschriebenen Bedingungen.

Rückgabewert

Nichts

Bemerkungen

Wenn der Minidriver KsFilterAttemptProcessing aufruft, wenn alle zum Verarbeiten von Daten erforderlichen Bedingungen erfüllt sind, tritt eine Verarbeitungsverteilung auf. 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 offenen Zustand befinden. Im Gegensatz zur pinzentrierten Verarbeitung hat die filterorientierte Verarbeitung viele Bedingungen, die sich auf das Prozesssteuerungsgate auswirken. Weitere Informationen zu diesen Anforderungen finden Sie unter Filter-Centric Verarbeitung und Pin-Centric Verarbeitung.

Wenn das Prozesssteuerungsgate geöffnet ist, erfolgt eine Verarbeitungsverteilung entweder synchron oder asynchron. Wenn der Aufrufer TRUE- im Parameter "Asynchrones" angibt, tritt der Verarbeitungsverteiler immer asynchron in einer Arbeitsaufgabe auf. Wenn der Aufrufer jedoch eine synchrone Verarbeitungsverteilung anfordert, erfolgt die Versendung nur synchron, wenn sich das System derzeit an einem IRQL befindet, mit dem der Minidriver die Verarbeitung verarbeiten kann. Wenn das System bei PASSIVE_LEVEL ist, wird der Versand garantiert synchron erfolgen. Wenn sich das System dagegen an DISPATCH_LEVEL befindet, erfolgt die Versendung synchron, wenn KSFILTER_FLAG_DISPATCH_LEVEL_PROCESSING für den Filter angegeben wird. Andernfalls wird eine Arbeitsaufgabe in die Warteschlange gestellt, um die Verarbeitung auszuführen.

Beachten Sie, dass dies nur ein Versuch bei der Verarbeitung ist; Das Aufrufen dieser Funktion garantiert nicht, dass die Verarbeitung beginnt. Die Verarbeitung erfolgt nur, wenn das Prozesssteuerungsgate "offen" ist. Weitere Informationen finden Sie unter Restarting Processing in AVStream und Flow Control Gates in AVStream.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar in Microsoft Windows XP und höheren Betriebssystemen und DirectX 8.0 und höher directX-Versionen.
Zielplattform- Universal
Header- ks.h (enthalten Ks.h)
Library Ks.lib
IRQL- <=DISPATCH_LEVEL

Siehe auch

KSFILTER_DISPATCH

KSGATE-

KsGateCaptureThreshold

KsPinAttemptProcessing-