Dela via


Översikt över XAPOFX

XAPOFX är en samling ljudeffekter som implementerar XAPO- gränssnitt för användning i XAudio2. XAPOFX innehåller flera effekter och en vanlig mekanism för att skapa effektinstanser.

Inkluderade effekter

I följande tabell beskrivs de effekter som ingår i XAPOFX.

Effekt Beskrivning Parameterstruktur Parameterkonstanter Krav
FXECHO En ekoeffekt. FXECHO_PARAMETERS FXECHO Constants Stöder endast FLOAT32 ljudformat.
FXEQ En equalizer med fyra band. FXEQ_PARAMETERS FXEQ Constants Stöder endast FLOAT32 ljudformat. Exempelfrekvensen måste vara mellan 22 000 Hz och 48 000 Hz.
FXMasteringLimiter En volymbegränsning. FXMASTERINGLIMITER_PARAMETERS FXMASTERINGLIMIT Constants Stöder endast FLOAT32 ljudformat.
FXReverb En enkel reverb-effekt.
XAudio2 ger också en effekt som implementerar Princeton Digital Reverb som kan instansieras med XAudio2CreateReverb.
FXREVERB_PARAMETERS FXREVERB-konstanter Stöder endast FLOAT32 ljudformat. Dessutom stöder den endast monoindata till monoutdata och stereoindata till stereoutdata.

 

Skapa en instans av en effekt som ingår i XAPOFX

XAPOFX tillhandahåller funktionen CreateFX som en vanlig mekanism för att skapa effektinstanser. CreateFX- tar CLSID för en effekt och returnerar en IUnknown-gränssnittspekare till en instans av effekten.

Använda XAPOFX i XAudio2

Effekter som instansieras med CreateFX- används i XAudio2 genom att koppla dem till röster. Varje XAudio2-röst har en effektkedja som innehåller noll eller fler ljudeffekter. Ljuddata som skickas till en röst skickas genom varje effekt i kedjan innan de skickas till röstens utdatamål. Rösten tar utdata från varje effekt och matar in den i nästa effekt i kedjan tills inga effekter finns kvar i kedjan. Om du vill koppla en XAPOFX-effekt till en XAudio2-röst fyller du i en XAUDIO2_EFFECT_CHAIN struktur med effektens information och skickar den till IXAudio2Voice::SetEffectChain.

Mer information om XAudio2-effektkedjor finns i XAudio2 Audio Effects.

Ett exempel på hur du använder XAPOFX i XAudio2 finns i How to: Use XAPOFX in XAudio2.

Implicita effekter för XAudio2

Förutom biblioteket med XAPOs som tillhandahålls av XAPOFX har XAudio2 inbyggda ljudeffekter för reverb och volymmätning. Du kan skapa dessa inbyggda effekter med XAudio2CreateReverb och XAudio2CreateVolumeMeter. Se How to: Create an Effect Chain (Skapa en effektkedja) för ett exempel på hur du använder någon av dessa inbyggda effekter.

ljudeffekter