Compartilhar via


Função XAudio2CreateVolumeMeter (xaudio2fx.h)

Cria um novo objeto de processamento de áudio do medidor de volume (APO) e retorna um ponteiro para ele.

Sintaxe

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

Parâmetros

[in, out] ppApo

Contém o APO do medidor de volume criado.

[in] DEFAULT

Sinalizadores que especificam o comportamento do APO. O valor desse parâmetro deve ser 0.

Valor retornado

Se essa função for bem-sucedida, ela retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

Para obter informações sobre como criar novos efeitos para uso com XAudio2, consulte a Visão geral do XAPO.

Windows
Como XAudio2CreateVolumeMeter chama CoCreateInstance no Windows, o aplicativo deve ter chamado o método CoInitializeEx antes de chamar XAudio2CreateVolumeMeter. XAudio2Create tem o mesmo requisito, o que significa que CoInitializeEx normalmente será chamado muito antes de XAudio2CreateVolumeMeter ser chamado.

Um padrão de chamada típico no Windows seria o seguinte:

#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);

 

O cabeçalho xaudio2fx.h define o GUID da classe AudioVolumeMeter como um XAPO (objeto de processamento de áudio multiplataforma).

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

XAudio2CreateVolumeMeter retorna esse objeto como um ponteiro para um ponteiro para IUnknown no parâmetro ppApo . Embora você possa consultar as interfaces IXAPO e IXAPOParameters desse IUnknown, você normalmente nunca usa essas interfaces diretamente. Em vez disso, você as usa quando cria uma voz para adicioná-las como parte da cadeia de efeitos.

O medidor de volume usa a estrutura de parâmetros XAUDIO2FX_VOLUMEMETER_LEVELS que você acessa por meio do método IXAudio2Voice::GetEffectParameters quando o XAPO está associado ao grafo de áudio.

ObservaçãoXAudio2CreateVolumeMeter é uma função embutida em xaudio2fx.h que chama CreateAudioVolumeMeter: sintaxe '''

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>