PFNKSFILTERPROCESS callback function (ks.h)

An AVStream minidriver's AVStrMiniFilterProcess routine is called when the filter is meant to process frames. It is used to perform Filter-Centric Processing.

Syntax

PFNKSFILTERPROCESS Pfnksfilterprocess;

NTSTATUS Pfnksfilterprocess(
  [in] PKSFILTER Filter,
       PKSPROCESSPIN_INDEXENTRY Index
)
{...}

Parameters

[in] Filter

Pointer to the KSFILTER structure that must process frames.

Index

Pointer to an array of KSPROCESSPIN_INDEXENTRY structures that AVStream orders by pin ID.

Return value

Return STATUS_SUCCESS to continue processing. Return STATUS_PENDING to stop processing until the next triggering event. The minidriver may return an error code, but this will be treated as described for STATUS_PENDING.

Remarks

The minidriver specifies this routine's address in the Process member of its KSFILTER_DISPATCH structure.

The routine is called at either IRQL = DISPATCH_LEVEL or PASSIVE_LEVEL depending on the preference expressed in the filter descriptor. Filter descriptors that specify KSFILTER_FLAG_DISPATCH_LEVEL_PROCESSING may have their process callback at DISPATCH_LEVEL; filter descriptors that do not specify this flag will have their process callback at PASSIVE_LEVEL.

For more information, see Filter-Centric Processing and Restarting Processing in AVStream.

This routine is optional.

Requirements

Requirement Value
Minimum supported client Available in Microsoft Windows XP and later operating systems and DirectX 8.0 and later DirectX versions.
Target Platform Desktop
Header ks.h (include Ks.h)
IRQL (See Remarks section)

See also

KSFILTER_DISPATCH

KSPROCESSPIN_INDEXENTRY