ICodecAPI::GetParameterRange 方法 (strmif.h)
[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayer、 IMFMediaEngine 和 音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
GetParameterRange 方法获取编解码器属性的值范围。
此方法仅适用于其值构成线性范围的属性。
语法
HRESULT GetParameterRange(
[in] const GUID *Api,
[out] VARIANT *ValueMin,
[out] VARIANT *ValueMax,
[out] VARIANT *SteppingDelta
);
参数
[in] Api
指向 GUID 的指针,该 GUID 指定要查询的属性。 有关标准编解码器属性的列表,请参阅 编解码器 API 属性。
[out] ValueMin
指向接收属性最小值的 VARIANT 的指针。 调用方必须通过调用 VariantClear 释放 VARIANT。
[out] ValueMax
指向接收属性最大值的 VARIANT 的指针。 调用方必须通过调用 VariantClear 释放 VARIANT。
[out] SteppingDelta
指向接收步进增量的 VARIANT 的指针,该增量定义从 ValueMin 到 ValueMax 的有效增量。 调用方必须通过调用 VariantClear 释放 VARIANT。
如果 VARIANT 类型VT_EMPTY,则任何增量都有效。
返回值
此方法可以返回其中一个值。
返回代码 | 说明 |
---|---|
|
无效的参数。 |
|
方法成功。 |
|
属性支持可能值的列表,而不是线性范围。 |
注解
属性的有效范围是 [ValueMin... ValueMax], 增量为 SteppingDelta。 如果属性支持线性值范围,则属性必须使用以下变体类型之一:
- 无符号类型:VT_UI8、VT_UI4、VT_UI2、VT_UI1
- 签名类型:VT_I8、VT_I4、VT_I2
- 浮点类型: VT_R8、 VT_R4
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 具有 SP2 的 Windows XP [桌面应用 |UWP 应用] |
最低受支持的服务器 | Windows Server 2003 R2 [桌面应用 |UWP 应用] |
目标平台 | Windows |
标头 | strmif.h (包括 Dshow.h) |
Library | Strmiids.lib |