DirectShow Animated Header -- IAMVideoProcAmp Interface DirectShow Animated Header -- IAMVideoProcAmp Interface* Microsoft DirectShow SDK
*Index  *Topic Contents
*Previous Topic: IAMVideoCutListElement Interface
*Next Topic: IAsyncReader Interface

IAMVideoProcAmp Interface


The IAMVideoProcAmp interface contains methods for controlling video quality such as brightness, contrast, hue, saturation, gamma, and sharpness. It defines a uniform range for these settings regardless of whether the adjustment is made in the analog or digital domain.

For analog video, this interface will typically be located on the same processing element as the IAMAnalogVideoDecoder interface.

When to Implement

Implement this interface when your filter needs to control video quality.

When to Use

Use this interface when your application needs to adjust video quality.

Methods in Vtable Order
IUnknown methods Description
QueryInterface Retrieves pointers to supported interfaces.
AddRef Increments the reference count.
Release Decrements the reference count.
IAMVideoProcAmp methods Description
GetRange Retrieves minimum, maximum, and default values for setting properties.
Set Sets video quality for a specified property.
Get Retrieves video quality for a specified property.


IAMVideoProcAmp::Get

IAMVideoProcAmp Interface

Retrieves video quality for a specified property.

HRESULT Get(
  long Property,
  long * lValue,
  long * Flags );

Parameters
Property
[in] Specific property to retrieve the setting of. Specify a member of the VideoProcAmpProperty enumerated type.
lValue
[out] Current value of the property.
Flags
[out] Pointer to a member of the VideoProcAmpFlags enumerated type.
Return Values

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.
Value Meaning
E_FAIL Failure.
E_POINTER Null pointer argument.
E_INVALIDARG Invalid argument.
E_NOTIMPL Method is not supported.
NOERROR No error.


IAMVideoProcAmp::GetRange

IAMVideoProcAmp Interface

Retrieves minimum, maximum, and default values for setting properties.

HRESULT GetRange(
  long Property,
  long * pMin,
  long * pMax,
  long * pSteppingDelta,
  long * pDefault,
  long * pCapsFlags );

Parameters
Property
[in] Specific property to determine the range of. Specify a member of the VideoProcAmpProperty enumerated type.
pMin
[out] Minimum setting range.
pMax
[out] Maximum setting range.
pSteppingDelta
[out] Step size.
pDefault
[out] Default value.
pCapsFlags
[out] Pointer to a member of the VideoProcAmpFlags enumerated type.
Return Values

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.
Value Meaning
E_FAIL Failure.
E_POINTER Null pointer argument.
E_INVALIDARG Invalid argument.
E_NOTIMPL Method is not supported.
NOERROR No error.


IAMVideoProcAmp::Set

IAMVideoProcAmp Interface

Sets video quality for a specified property.

HRESULT Set(
  long Property,
  long lValue,
  long Flags );

Parameters
Property
[in] Specific property to set. Specify a member of the VideoProcAmpProperty enumerated type.
lValue
[in] Value indicating the setting of the property.
Flags
[in] Member of the VideoProcAmpFlags enumerated type.
Return Values

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.
Value Meaning
E_FAIL Failure.
E_INVALIDARG Invalid argument.
E_NOTIMPL Method is not supported.
NOERROR No error.

© 1998 Microsoft Corporation. All rights reserved. Terms of Use.

*Top of Page