Share via


XAudio2CreateVolumeMeter-Funktion (xaudio2fx.h)

Erstellt ein neues Volume Meter Audio Processing Object (APO) und gibt einen Zeiger darauf zurück.

Syntax

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

Parameter

[in, out] ppApo

Enthält das erstellte Volumemeter-APO.

[in] DEFAULT

Flags, die das Verhalten des APO angeben. Der Wert dieses Parameters muss 0 sein.

Rückgabewert

Wenn diese Funktion erfolgreich ist, gibt sie S_OK zurück. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.

Hinweise

Informationen zum Erstellen neuer Effekte für die Verwendung mit XAudio2 finden Sie in der XAPO-Übersicht.

Windows
Da XAudio2CreateVolumeMeterCoCreateInstance unter Windows aufruft, muss die Anwendung die CoInitializeEx-Methode aufgerufen haben, bevor sie XAudio2CreateVolumeMeter aufruft. XAudio2Create hat die gleiche Anforderung, was bedeutet, dass CoInitializeEx in der Regel lange aufgerufen wird, bevor XAudio2CreateVolumeMeter aufgerufen wird.

Ein typisches Aufrufmuster unter Windows lautet wie folgt:

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

 

Der xaudio2fx.h-Header definiert die GUID der AudioVolumeMeter-Klasse als plattformübergreifendes Audioverarbeitungsobjekt (Cross-Platform Audio Processing Object, XAPO).

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

XAudio2CreateVolumeMeter gibt dieses Objekt als Zeiger auf einen Zeiger auf IUnknown im ppApo-Parameter zurück. Obwohl Sie die IXAPO - und IXAPOParameters-Schnittstellen von diesem IUnknown abfragen können, verwenden Sie diese Schnittstellen in der Regel nie direkt. Stattdessen verwenden Sie sie, wenn Sie eine Stimme erstellen, um sie als Teil der Effektkette hinzuzufügen.

Die Volumemessung verwendet die XAUDIO2FX_VOLUMEMETER_LEVELS Parameterstruktur, auf die Sie über die IXAudio2Voice::GetEffectParameters-Methode zugreifen, wenn das XAPO an das Audiodiagramm gebunden ist.

HinweisXAudio2CreateVolumeMeter ist eine Inlinefunktion in xaudio2fx.h, die CreateAudioVolumeMeter aufruft: Syntax '''

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>