Skip to content

Latest commit

 

History

History
72 lines (57 loc) · 3.84 KB

nf-ks-kspinattemptprocessing.md

File metadata and controls

72 lines (57 loc) · 3.84 KB
UID title description tech.root ms.date keywords ms.keywords req.header req.include-header req.target-type req.target-min-winverclnt req.target-min-winversvr req.kmdf-ver req.umdf-ver req.ddi-compliance req.unicode-ansi req.idl req.max-support req.namespace req.assembly req.type-library req.lib req.dll req.irql targetos req.typenames f1_keywords topic_type api_type api_location api_name
NF:ks.KsPinAttemptProcessing
KsPinAttemptProcessing function (ks.h)
The KsPinAttemptProcessing function is used to resume processing on a specific pin on a pin-centric filter. It attempts to initiate processing on Pin by sending a processing dispatch call to Pin's processing object.
stream
11/16/2022
KsPinAttemptProcessing function
KsPinAttemptProcessing, KsPinAttemptProcessing function [Streaming Media Devices], avfunc_e17d5ad8-b0e3-4b5e-ab4c-a552f1650ed4.xml, ks/KsPinAttemptProcessing, stream.kspinattemptprocessing
ks.h
Ks.h
Universal
Ks.lib
<=DISPATCH_LEVEL (See Remarks)
Windows
KsPinAttemptProcessing
ks/KsPinAttemptProcessing
APIRef
kbSyntax
LibDef
Ks.lib
Ks.dll
KsPinAttemptProcessing

-description

The KsPinAttemptProcessing function is used to resume processing on a specific pin on a pin-centric filter. It attempts to initiate processing on Pin by sending a processing dispatch call to Pin's processing object.

-parameters

-param Pin [in]

A pointer to a KSPIN structure that represents the AVStream pin object on which to attempt processing.

Warning

This parameter is mandatory. If you call KsPinAttemptProcessing with a Pin value of NULL, system instability may result.

-param Asynchronous [in]

This parameter indicates the minidriver's preference whether the processing should occur synchronously or asynchronously. If TRUE, processing is always asynchronous. However, synchronous processing only happens under certain circumstances. For more information, see the Remarks section below.

-remarks

A minidriver may need to call KsPinAttemptProcessing to resume processing in various situations. For example, if the client has shut off the processing control gate with KsGateTurnInputOff, call this function when ready to attempt processing. Note that this only causes a processing dispatch if the process control gate is in the open state. Another situation involves the minidriver having previously returning STATUS_PENDING to a processing dispatch. For more details, see Restarting Processing in AVStream and Flow Control Gates in AVStream.

The processing dispatch occurs either synchronously or asynchronously, and only if the processing control gate is open. The Asynchronous flag specifies the minidriver's preference. If the minidriver requests an asynchronous process dispatch, the dispatch is always asynchronous. However, even if the caller sets Asynchronous to FALSE, a synchronous dispatch only occurs if the system is currently running at an IRQL less than the maximum processing IRQL. In other words, if the minidriver does not specify dispatch level processing and the call is made at IRQL = DISPATCH_LEVEL, then the call occurs in an asynchronous work item at PASSIVE_LEVEL regardless of the value of Asynchronous. For more information, see Filter-Centric Processing and Pin-Centric Processing.

-see-also

KSFILTER_DISPATCH

KsFilterAttemptProcessing

KsGateCaptureThreshold