Share via


IEncoderAPI::GetParameterRange Method

Note  The IEncoderAPI interface is deprecated. Use ICodecAPI instead.
The GetParameterRange method retrieves the valid range of values that the parameter supports, in cases where the parameter supports a stepped range as opposed to a list of specific values.

Syntax

HRESULT GetParameterRange(
  [in]   const GUID *Api,
  [out]  VARIANT *ValueMin,
  [out]  VARIANT *ValueMax,
  [out]  VARIANT *SteppingDelta
);

Parameters

  • Api [in]
    Pointer to a GUID that specifies the parameter.

  • ValueMin [out]
    Pointer to a VARIANT type that receives the minimum value of the parameter.

  • ValueMax [out]
    Pointer to a VARIANT type that receives the maximum value of the parameter.

  • SteppingDelta [out]
    Pointer to a VARIANT type that receives the stepping delta, which defines the valid increments from ValueMin to ValueMax.

Return Value

If the method succeeds, it returns S_OK. If it fails, it returns an HRESULT error code.

Remarks

If Api equals ENCAPIPARAM_BITRATE_MODE, the method returns E_NOTIMPL, because the bitrate mode constants are a list of specific values.

The valid range for the parameter is [ValueMin...ValueMax], with increments of SteppingDelta. If a parameter supports a stepped range of values, it must use one of the following variant types:

  • Unsigned types : VT_UI8, VT_UI4, VT_UI2, VT_UI1
  • Signed types : VT_I8, VT_I4, VT_I2
  • Float types : VT_R8, VT_R4

By definition, the parameter will return a specific type.

Any stepping value is valid. If the range has no stepping delta (that is, you can increment by any value), the encoder should return an empty value (VT_EMPTY) for SteppingDelta.

Requirements

Header Declared in Strmif.h; include Dshow.h.
Library Use Strmiids.lib.

See Also

Encoder API
IEncoderAPI Interface

Send comments about this topic to Microsoft

Build date: 12/4/2008