XAudio2CreateVolumeMeter 函数 (xaudio2fx.h)

(APO) 创建新的音量计音频处理对象,并返回指向它的指针。

语法

HRESULT XAudio2CreateVolumeMeter(
  [in, out] IUnknown     **ppApo,
  [in]      UINT32 Flags DEFAULT
);

参数

[in, out] ppApo

包含创建的卷计量 APO。

[in] DEFAULT

指定 APO 行为的标志。 此参数的值必须为 0。

返回值

如果此函数成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

注解

有关创建用于 XAudio2 的新效果的信息,请参阅 XAPO 概述

Windows
由于 XAudio2CreateVolumeMeter 在 Windows 上调用 CoCreateInstance,因此应用程序必须在调用 XAudio2CreateVolumeMeter 之前调用 CoInitializeEx 方法。 XAudio2Create 具有相同的要求,这意味着在调用 XAudio2CreateVolumeMeter 之前,通常会调用 CoInitializeEx

Windows 上的典型调用模式如下所示:

#ifndef _XBOX
CoInitializeEx(NULL, COINIT_MULTITHREADED);
#endif
IXAudio2* pXAudio2 = NULL;
HRESULT hr;
if ( FAILED(hr = XAudio2Create( &pXAudio2, 0, XAUDIO2_DEFAULT_PROCESSOR ) ) )
    return hr;
...
IUnknown * pVolumeMeterAPO;
XAudio2CreateVolumeMeter(&pVolumeMeterAPO);

 

xaudio2fx.h 标头将 AudioVolumeMeter 类 GUID 定义为 XAPO) (跨平台音频处理对象。

class __declspec(uuid("4FC3B166-972A-40CF-BC37-7DB03DB2FBA3")) AudioVolumeMeter;

XAudio2CreateVolumeMeter 将此对象作为指向 ppApo 参数中 IUnknown 的指针返回。 尽管可以从此 IUnknown 查询 IXAPOIXAPOParameters 接口,但通常永远不会直接使用这些接口。 而是在创建语音以将其添加为效果链的一部分时使用它们。

当 XAPO 绑定到音频图时,音量计使用通过 IXAudio2Voice::GetEffectParameters 方法访问的 XAUDIO2FX_VOLUMEMETER_LEVELS 参数结构。

注意XAudio2CreateVolumeMeter 是 xaudio2fx.h 中调用 CreateAudioVolumeMeter 的内联函数:“”语法

XAUDIO2FX_STDAPI CreateAudioVolumeMeter (Outptr IUnknown** ppApo) ;__inline HRESULT XAudio2CreateVolumeMeter (Outptr IUnknown** ppApo, UINT32 /Flags/ DEFAULT (0) ) { return CreateAudioVolumeMeter (ppApo) ; }


</div>
<div> </div>
<h3><a id="Platform_Requirements"></a><a id="platform_requirements"></a><a id="PLATFORM_REQUIREMENTS"></a>Platform Requirements</h3>
Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); DirectX SDK (XAudio 2.7)

## Requirements
| Requirement | Value |
| ---- |:---- |
| **Target Platform** | Windows |
| **Header** | xaudio2fx.h |
| **Library** | Xaudio2.lib |

## See also

<a href="/windows/desktop/xaudio2/how-to--create-an-effect-chain">How to: Create an Effect Chain</a>



<a href="/windows/desktop/api/xaudio2/nf-xaudio2-ixaudio2voice-seteffectparameters">IXAudio2Voice::SetEffectParameters</a>



<a href="/windows/desktop/api/xaudio2fx/ns-xaudio2fx-xaudio2fx_volumemeter_levels">XAUDIO2FX_VOLUMEMETER_LEVELS</a>



<a href="/windows/desktop/xaudio2/functions">XAudio2 Functions</a>