IAudioProcessingObject::IsOutputFormatSupported 方法 (audioenginebaseapo.h)

方法 IsOutputFormatSupported 用于验证特定输出格式是否受支持。

语法

HRESULT IsOutputFormatSupported(
  [in, optional]  IAudioMediaType *pOppositeFormat,
  [in, optional]  IAudioMediaType *pRequestedOutputFormat,
  [out, optional] IAudioMediaType **ppSupportedOutputFormat
);

参数

[in, optional] pOppositeFormat

指向 IAudioMediaType 接口的指针。 此参数指示输出格式。 此参数必须设置为 NULL ,以指示输出格式可以是任何类型。

[in, optional] pRequestedOutputFormat

指向 IAudioMediaType 接口的指针。 此参数指示要验证的输出格式。

[out, optional] ppSupportedOutputFormat

此参数指示最接近要验证的格式的支持输出格式。

返回值

如果调用成功完成,ppSupportedOutputFormat 参数将返回 pRequestedOutputFormat 指针,IsOutputFormatSupported 方法返回值 S_OK。 否则,此方法将返回以下错误代码之一:

返回代码 说明
S_FALSE
不支持输入/输出格式对的格式。 ppSupportedOutPutFormat 参数返回建议的新格式。
APOERR_FORMAT_NOT_SUPPORTED
不支持格式。 ppSupportedOutputFormat 的值不会更改。
E_POINTER
传递给函数的指针无效。 ppSupportedOutputFormat 的值不会更改。
其他 HRESULT 值
音频引擎会跟踪这些附加错误条件。

注解

不同 APOs 在方法的 IsOutputFormatSupported 实现方面存在差异。 例如,对于某些实现,仅当输入格式为 integer 类型时,输出才能为 float 类型。

要求

要求
最低受支持的客户端 适用于 Windows Vista 和更高版本的 Windows 操作系统。
目标平台 通用
标头 audioenginebaseapo.h
Library Audioenginebaseapo.idl
IRQL 所有级别

另请参阅

IAudioMediaType

IAudioProcessingObject