ICodecAPI::GetParameterValues 方法 (strmif.h)
[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayer、 IMFMediaEngine 和 音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
GetParameterValues 方法获取编解码器属性的可能值列表。
此方法仅适用于支持可能值列表的属性,而不是线性范围。
语法
HRESULT GetParameterValues(
[in] const GUID *Api,
[out] VARIANT **Values,
[out] ULONG *ValuesCount
);
参数
[in] Api
指向 GUID 的指针,该 GUID 指定要查询的属性。 有关标准编解码器属性的列表,请参阅 编解码器 API 属性。
[out] Values
接收指向 VARIANT 类型的数组的指针。 数组包含编码器为此属性支持的值列表。 调用方必须通过调用 VariantClear 释放每个 VARIANT。 调用方还必须通过调用 CoTaskMemFree 释放数组。
[out] ValuesCount
接收 Values 数组中的元素数。
返回值
此方法可以返回其中一个值。
返回代码 | 说明 |
---|---|
|
方法成功。 |
|
无效的参数。 |
|
属性支持值范围,而不是列表。 |
备注
如果 属性支持值范围,而不是列表,则 方法返回 VFW_E_CODECAPI_LINEAR_RANGE。 在这种情况下,请调用 ICodecAPI::GetParameterRange 来获取值范围。
要求
最低受支持的客户端 | 具有 SP2 的 Windows XP [桌面应用 |UWP 应用] |
最低受支持的服务器 | Windows Server 2003 R2 [桌面应用 |UWP 应用] |
目标平台 | Windows |
标头 | strmif.h (包括 Dshow.h) |
Library | Strmiids.lib |