IApoAuxiliaryInputConfiguration::IsInputFormatSupported 方法(audioenginebaseapo.h)

验证 APO 是否支持特定的辅助输入格式。

Syntax

HRESULT IsInputFormatSupported(
  IAudioMediaType *pRequestedInputFormat,
  IAudioMediaType **ppSupportedInputFormat
);

参数

pRequestedInputFormat

要验证的输入格式。

ppSupportedInputFormat

APO 使用最接近传入方法的格式的受支持输入格式填充此参数。

返回值

HRESULT

HRESULT Description
S_OK 成功完成。 APO 应添加对 pRequestedInputFormat 的引用,并在 ppSupportedInputFormat 中返回它
S_FALSE 不支持格式。 APO 应返回 ppSupportedInputFormat 中建议支持的格式
APOERR_FORMAT_NOT_SUPPORTED 不支持格式。 APO 不应修改 ppSupportedInputFormat
E_POINTER 传递给此函数的指针无效。
其他值 另一个组件导致故障。 系统会跟踪这些故障。

注解

如果 APO 可以接受所请求的格式,则应添加对请求格式的引用,将其作为支持的输出格式返回,并返回S_OK。

如果 APO 无法接受所请求的格式,则它可能会建议使用备用请求的格式。 在这种情况下,它应创建并返回建议的格式,并返回S_FALSE。

返回的支持格式应“最接近”所请求的格式,这意味着该格式应具有与以下属性相同的值(按优先级顺序指定)。

  • 示例格式
  • 位深度
  • 通道数
  • 采样率

仅当返回S_FALSE时,建议的格式可能与请求的格式不同。 返回任何失败时,建议的格式应保持不变。

可以随时调用此 API。 返回的结果将取决于可由外部用户界面作的 APO 的内部状态。 但是,一旦 APO 锁定进行处理,此格式将无法且不会更改。

不能从实时处理线程调用此方法。

要求

Requirement 价值
最低支持的客户端 Windows 10 内部版本 20348
Header audioenginebaseapo.h