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 Interface
IAMVideoProcAmp::GetRetrieves 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 Interface
IAMVideoProcAmp::GetRangeRetrieves 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 Interface
IAMVideoProcAmp::SetSets 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.