IVPConfig Interface

IVPConfig enables a video port (VP) or overlay mixer filter to communicate with a VP driver (decoder), to set and retrieve configuration information. This interface assumes that the mixer filter creates the video port. This interface derives from IVPBaseConfig. See also IVPBaseNotify and IVPNotify.

The Windows Driver Model (WDM) Ksproxy filter implements this interface so you won't need to implement it in most cases. Implement this interface when you need this functionality on a platform that does not support WDM, or when you need to alter the default behavior.

The Overlay Mixer filter uses this interface so you won't need to use it in most cases. Use this interface when you implement your own overlay mixer filter.

Methods in Vtable Order

IUnknown methodsDescription
QueryInterface Retrieves pointers to supported interfaces.
AddRef Increments the reference count.
Release Decrements the reference count.
IVPBaseConfig methodsDescription
GetConnectInfo Retrieves connection information structures.
SetConnectInfo Sets the index for the current video port connection information.
GetVPDataInfo Retrieves the current video port data information.
GetMaxPixelRate Retrieves the maximum pixels per second rate for a given width and height.
InformVPInputFormats Informs the device what video formats the video port supports.
GetVideoFormats Retrieves the video formats the decoder supports.
SetVideoFormat Sets the format that the video will use.
SetInvertPolarity Reverses the current polarity the decoder uses.
GetOverlaySurface Determines whether the overlay mixer should use the driver's overlay surface and if so retrieves a pointer to the surface.
SetDirectDrawKernelHandle Sets the DirectDraw® kernel handle for the decoder's minidriver to use.
SetVideoPortID Sets the port ID that the video will use.
SetDDSurfaceKernelHandle Sets the kernel handle that the DirectDraw surface will use.
SetSurfaceParameters Tells the capture driver about the surface created on its behalf by the Overlay Mixer or VBI surface filter.
IVPConfig methodsDescription
IsVPDecimationAllowed Given the context, retrieves whether scaling at the video port is possible.
SetScalingFactors Sets the factors by which the decoder should scale the video stream.

IVPConfig::IsVPDecimationAllowed

IVPConfig Interface

Given the context, retrieves whether scaling at the video port is possible.

Syntax

HRESULT IsVPDecimationAllowed(
    AMVP_CONTEXT amvpContext,
    LPBOOL pbIsDecimationAllowed
    );

Parameters

amvpContext
[in] Context (video or VBI) in which to query the VP decimation capability.
pbIsDecimationAllowed
[out] Pointer to the retrieved value indicating whether decimation is allowed.

Return Value

Returns an HRESULT value that depends on the implementation of the interface. HRESULT can include one of the following standard constants, or other values not listed.
E_FAIL Failure.
E_POINTER NULL pointer argument.
E_INVALIDARG Invalid argument.
E_NOTIMPL Method is not supported.
NOERROR No error.

Remarks

The Overlay Mixer filter uses this function to determine whether the driver needs the mixer to decimate video data at its own discretion. This function can be especially useful in a capture with preview situation in which you would not want the VP mixer filter to perform any scaling at the video port.

IVPConfig::SetScalingFactors

IVPConfig Interface

Sets the factors by which the decoder should scale the video stream.

Syntax

HRESULT SetScalingFactors(
    LPAMVPSIZE pamvpSize
    );

Parameters

pamvpSize
[in] Pointer to the new scaling size structure (AMVPSIZE) to use to specify the width and height.

Return Value

Returns an HRESULT value that depends on the implementation of the interface. HRESULT can include one of the following standard constants, or other values not listed.
E_FAIL Failure.
E_POINTER Null pointer argument.
E_INVALIDARG Invalid argument.
NOERROR The new scaling factors were set.

Remarks

If the decoder does not support the specified scaling factors, then it sets the values to the nearest factors it can support.


Top of Page Top of Page
© 2000 Microsoft and/or its suppliers. All rights reserved. Terms of Use.