IApoAuxiliaryInputConfiguration::IsInputFormatSupported 方法 (audioenginebaseapo.h)
验证 APO 是否支持特定的辅助输入格式。
语法
HRESULT IsInputFormatSupported(
IAudioMediaType *pRequestedInputFormat,
IAudioMediaType **ppSupportedInputFormat
);
参数
pRequestedInputFormat
要验证的输入格式。
ppSupportedInputFormat
APO 使用最接近传入方法的格式的支持输入格式填充此参数。
返回值
HRESULT
HRESULT | 说明 |
---|---|
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 进行处理后,此格式不能也不会更改。
不能从实时处理线程调用此方法。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10内部版本 20348 |
标头 | audioenginebaseapo.h |