IEncoderAPI::GetParameterRange 方法 (strmif.h)

[与此页面关联的功能 Microsoft TV Technologies 是一项旧功能。 Microsoft 强烈建议新代码不使用此功能。]

[IEncoderAPI 不再可供使用。 请改用 ICodecAPI。]

GetParameterRange 方法检索参数支持的有效值范围,如果参数支持一个阶梯范围,而不是特定值的列表。

语法

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

参数

[in] Api

指向指定 参数的 GUID 的指针。

[out] ValueMin

指向接收参数最小值的 VARIANT 类型的指针。

[out] ValueMax

指向接收参数最大值的 VARIANT 类型的指针。

[out] SteppingDelta

指向接收步进增量的 VARIANT 类型的指针,该增量定义从 ValueMinValueMax 的有效增量。

返回值

此方法可以返回其中一个值。

返回代码 说明
S_OK
方法成功。
E_NOTIMPL
属性支持可能值的列表,而不是线性范围。

注解

参数的有效范围是 [ValueMax...ValueMax], 增量为 SteppingDelta。 如果参数支持值阶梯范围,则必须使用以下变体类型之一:

  • 无符号类型:VT_UI8VT_UI4VT_UI2、VT_UI1
  • 签名类型:VT_I8VT_I4、VT_I2
  • 浮点数类型: VT_R8VT_R4
根据定义, 参数将返回特定类型。

任何单步执行值都有效。 如果范围没有步进增量 (即,则可以按任何值) 递增,则编码器应返回一个空值 (,VT_EMPTY) 为 SteppingDelta

如果 Api 等于 ENCAPIPARAM_BITRATE_MODE,则 该方法返回 E_NOTIMPL,因为比特率模式常量是特定值的列表。

要求

要求
目标平台 Windows
标头 strmif.h (包括 Dshow.h)
Library Strmiids.lib

另请参阅

编码器 API

IEncoderAPI 接口