XAudio2-APIs

Übersicht über die XAudio2-APIs-Technologie.

Zum Entwickeln von XAudio2-APIs benötigen Sie die folgenden Header:

Programmieranleitungen für diese Technologie finden Sie unter:

Klasse

 
CXAPOBase

Standardimplementierung der IXAPO-Schnittstelle.
CXAPOParametersBase

Standardimplementierung der IXAPOParameters-Schnittstelle.

Enumerationen

 
HrtfDirectivityType

Gibt eines von mehreren Kursoritätsmustern an.
HrtfDistanceDecayType

Gibt einen entfernungsbasierten Zerfallstyp an, der auf einen Sound angewendet wird.
HrtfEnvironment

Gibt einen von mehreren Stock-Umgebungstypen an.
XAPO_BUFFER_FLAGS

Beschreibt den Inhalt eines Streampuffers.
XAUDIO2_FILTER_TYPE

Gibt den Filtertyp an.

Functions

 
AddRef

Fügt einen Verweis auf das XAudio2-Objekt hinzu.
BeginProcess

Gibt die aktuellen Prozessparameter zurück.
CalcInputFrames

Gibt die Anzahl der Eingabeframes zurück, die zum Generieren der angegebenen Anzahl von Ausgabeframes erforderlich sind.
CalcOutputFrames

Gibt die Anzahl der Ausgabeframes zurück, die aus einer bestimmten Anzahl von Eingabeframes generiert werden.
Commitchanges

Wendet atomar eine Reihe von Vorgängen an, die mit einem bestimmten Bezeichner gekennzeichnet sind.
CreateFX

Erstellt eine instance des angeforderten XAPOFX-Effekts.
CreateHrtfApo

Erstellt eine instance der IXAPO-Schnittstelle für die Verarbeitung von Head-Related Transfer Function (HRTF).
CreateMasteringVoice

Erstellt und konfiguriert eine Masterstimme.
CreateSourceVoice

Erstellt und konfiguriert eine Quellstimme.
CreateSubmixVoice

Erstellt und konfiguriert eine Submixstimme.
CXAPOBase

Erstellt eine instance der CXAPOBase-Klasse.
CXAPOParametersBase

Erstellt eine instance der CXAPOParametersBase-Klasse.
DestroyVoice

Zerstört die Stimme. Beendet ggf. die Stimme und entfernt sie aus dem XAudio2-Diagramm.
DisableEffect

Deaktiviert den Effekt an einer bestimmten Position in der Effektkette der Stimme.
Diskontinuität

Benachrichtigt eine XAudio2-Stimme, dass nach dem letzten, der sich derzeit in der Warteschlange befindet, keine Puffer mehr eingereiht werden.
EnableEffect

Aktiviert den Effekt an einer bestimmten Position in der Effektkette der Stimme.
EndProcess

Benachrichtigt CXAPOParametersBase, dass das XAPO den Zugriff auf die aktuellen Prozessparameter abgeschlossen hat.
ExitLoop

Beendet die Schleife der Stimme, wenn sie das Ende des aktuellen Schleifenbereichs erreicht.
FlushSourceBuffers

Entfernt alle ausstehenden Audiopuffer aus der Sprachwarteschlange.
GetChannelMask

Gibt die Kanalmaske für diese Stimme zurück.
GetChannelVolumes

Gibt die Lautstärken für die Stimme pro Kanal zurück.
GetEffectParameters

Gibt die aktuellen effektspezifischen Parameter eines bestimmten Effekts in der Effektkette der Stimme zurück.
GetEffectState

Gibt den Ausführungszustand des Effekts an einer angegebenen Position in der Effektkette der Stimme zurück.
GetFilterParameters

Ruft die Filterparameter der Stimme ab.
GetFrequencyRatio

Gibt das Frequenzanpassungsverhältnis der Stimme zurück.
GetOutputFilterParameters

Gibt die Filterparameter aus einer der Sendevorgänge dieser Stimme zurück.
GetOutputMatrix

Ruft die Lautstärke der einzelnen Kanäle der endgültigen Ausgabe für die Stimme ab. Diese Kanäle werden den Eingabekanälen einer angegebenen Zielstimme zugeordnet.
GetParameters

Ruft die aktuellen Werte für alle effektspezifischen Parameter ab.
GetPerformanceData

Gibt Details zur aktuellen Ressourcennutzung zurück, z. B. verfügbarer Arbeitsspeicher oder CPU-Auslastung.
GetRegistrationProperties

Gibt die Registrierungseigenschaften eines XAPO zurück.
GetRegistrationPropertiesInternal

Gibt einen Zeiger auf die XAPO_REGISTRATION_PROPERTIES-Struktur zurück, die die Registrierungseigenschaften enthält, mit denen XAPO erstellt wurde.
GetState

Gibt die aktuellen Cursorpositionsdaten der Stimme zurück.
GetVoiceDetails

Gibt Informationen zu den Erstellungsflags, Eingabekanälen und der Abtastrate einer Stimme zurück.
GetVolume

Ruft die aktuelle Gesamtlautstärke der Stimme ab.
Initialisieren

Führt jede effektspezifische Initialisierung aus.
IsInputFormatSupported

Fragt ab, ob ein bestimmtes Eingabeformat für ein bestimmtes Ausgabeformat unterstützt wird.
IsLocked

Fragt ab, ob das XAPO gesperrt ist.
IsOutputFormatSupported

Fragt ab, ob ein bestimmtes Ausgabeformat für ein bestimmtes Eingabeformat unterstützt wird.
LockForProcess

Wird von XAudio2 aufgerufen, um die Eingabe- und Ausgabekonfigurationen eines XAPO zu sperren, sodass es eine endgültige Initialisierung durchführen kann, bevor Process im Echtzeitthread aufgerufen wird.
OnBufferEnd

Wird aufgerufen, wenn die Sprachverarbeitung mit der Verarbeitung eines Puffers abgeschlossen ist.
OnBufferStart

Wird aufgerufen, wenn die Stimme mit der Verarbeitung eines neuen Audiopuffers beginnt.
OnCriticalError

Wird aufgerufen, wenn ein kritischer Systemfehler auftritt, der erfordert, dass XAudio2 geschlossen und neu gestartet wird.
OnLoopEnd

Wird aufgerufen, wenn die Stimme die Endposition einer Schleife erreicht.
OnProcessingPassEnd

Wird von XAudio2 aufgerufen, nachdem ein Audioverarbeitungsdurchlauf endet.
OnProcessingPassStart

Wird von XAudio2 aufgerufen, kurz bevor ein Audioverarbeitungsdurchlauf beginnt.
OnSetParameters

Wird von IXAPOParameters::SetParameters aufgerufen, um die überprüfung benutzerdefinierter Parameter zu ermöglichen.
OnStreamEnd

Wird aufgerufen, wenn die Stimme gerade die Wiedergabe eines zusammenhängenden Audiostreams beendet hat.
OnVoiceError

Wird aufgerufen, wenn während der Sprachverarbeitung ein kritischer Fehler auftritt.
OnVoiceProcessingPassEnd

Wird direkt nach dem Ende des Verarbeitungsdurchlaufs für die Stimme aufgerufen.
OnVoiceProcessingPassStart

Wird während jedes Verarbeitungsdurchlaufs für jede Stimme aufgerufen, kurz bevor XAudio2 Daten aus der Pufferwarteschlange der Stimme liest.
ParametersChanged

Gibt an, ob IXAPOParameters::SetParameters seit dem letzten Verarbeitungsdurchlauf aufgerufen wurde.
Process

Führt den DSP-Code (Digital Signal Processing) des XAPO auf den angegebenen Eingabe- und Ausgabepuffern aus.
ProcessThru

Wird von einer IXAPO::P rocess-Implementierung aufgerufen, wenn ein XAPO für die Durchlaufzeitverarbeitung deaktiviert ist.
QueryInterface

Fragt eine bestimmte COM-Schnittstelle für das XAudio2-Objekt ab.
RegisterForCallbacks

Fügt der Rückrufliste der XAudio2-Engine einen IXAudio2EngineCallback-Zeiger hinzu.
Release

Gibt einen Verweis auf das XAudio2-Objekt frei.
Zurücksetzen

Setzt Variablen zurück, die vom Frameverlauf abhängig sind.
ReverbConvertI3DL2ToNative

Inlinefunktion, die I3DL2-Parameter (Interactive 3D Audio Rendering Guidelines Level 2.0) in native XAudio2-Parameter konvertiert.
SetChannelVolumes

Legt die Lautstärkestufen für die Stimme pro Kanal fest.
SetDebugConfiguration

Ändert globale Debugprotokollierungsoptionen für XAudio2.
SetEffectChain

Ersetzt die Effektkette der Stimme.
SetEffectParameters

Legt Parameter für einen bestimmten Effekt in der Effektkette der Stimme fest.
SetEnvironment

Wählt die zu simulierende Akustikumgebung aus.
SetFilterParameters

Legt die Filterparameter der Stimme fest.
SetFrequencyRatio

Legt das Frequenzanpassungsverhältnis der Stimme fest.
SetOutputFilterParameters

Legt die Filterparameter für eine der Gesendeten dieser Stimme fest.
SetOutputMatrix

Legt den Lautstärkepegel jedes Kanals der enden Ausgabe für die Stimme fest. Diese Kanäle werden den Eingabekanälen einer angegebenen Zielstimme zugeordnet.
SetOutputVoices

Legt einen neuen Satz von Submix- oder Masterstimme fest, um die Ausgabe der Stimme zu empfangen.
Setparameters

Legt effektspezifische Parameter fest.
SetSourceGain

Legt den benutzerdefinierten Direkten Pfadgewinnwert für die aktuelle Quellposition fest. Gilt nur für Sounds, die mit dem benutzerdefinierten Verfallstyp HrtfDistanceDecayType wiedergegeben werden.
SetSourceOrientation

Legen Sie die Rotationsmatrix für die Quellausrichtung in Bezug auf das Koordinatensystem des Listeners fest.
SetSourcePosition

Legt die Position des Sounds relativ zum Listener fest.
SetSourceSampleRate

Konfiguriert die Stimme neu, um Quelldaten mit einer anderen Abtastrate als die beim Erstellen der Stimme angegebene Rate zu nutzen.
SetVolume

Legt die Gesamtlautstärke für die Stimme fest.
Starten

Startet die Nutzung und Verarbeitung von Audiodaten durch die Stimme. Liefert das Ergebnis an alle verbundenen Submix- oder Masterstimmstimden oder an das Ausgabegerät.
StartEngine

Startet den Audioverarbeitungsthread.
Beenden

Beendet die Audionutzung durch die aktuelle Stimme.
StopEngine

Beendet den Audioverarbeitungsthread.
SubmitSourceBuffer

Fügt der Sprachwarteschlange einen neuen Audiopuffer hinzu.
UnlockForProcess

Deallocates Variablen, die mit der LockForProcess-Methode zugeordnet wurden.
Aufheben der RegistrierungForCallbacks

Entfernt einen IXAudio2EngineCallback-Zeiger aus der Rückrufliste der XAudio2-Engine.
ValidateFormatDefault

Überprüft, ob ein Audioformat in die unterstützten Standardbereiche fällt.
ValidateFormatPair

Überprüft, ob die Konfiguration eines Eingabe- und Ausgabeformatpaars vom XAPO unterstützt wird.
X3DAudioCalculate

Berechnet DSP-Einstellungen in Bezug auf 3D-Parameter.
X3DAudioInitialize

Legt alle globalen 3D-Audiokonstanten fest.
XAPOAlloc

Von IXAPO-Methoden verwendete Speicherzuordnungsmakro, das Strukturen beliebiger Größe zuordnen muss, die anschließend an die Anwendung zurückgegeben werden.
XAPOFree

Makro, das zum Freigeben von Arbeitsspeicher verwendet wird, der mit dem XAPOAlloc-Makro zugeordnet ist.
XAudio2AmplitudeRatioToDecibels

Inlinefunktion, die einen Amplitudenverhältniswert in einen Dezibelwert konvertiert.
XAudio2Erstellen

Erstellt ein neues XAudio2-Objekt und gibt einen Zeiger auf seine IXAudio2-Schnittstelle zurück.
XAudio2CreateReverb

Erstellt ein neues Hall-Audioverarbeitungsobjekt (APO) und gibt einen Zeiger darauf zurück.
XAudio2CreateVolumeMeter

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

Inline-Funktion, die von Filtertrennfrequenzen, ausgedrückt in Hertz, in die Filterkoeffizienten konvertiert, die mit dem Frequency-Member der XAUDIO2_FILTER_PARAMETERS-Struktur verwendet werden.
XAudio2CutoffFrequencyToRadians

Inline-Funktion, die von Filter-Cutoff-Frequenzen, ausgedrückt in Hertz, in die Radienfrequenzwerte konvertiert, die im Frequency-Member der XAUDIO2_FILTER_PARAMETERS-Struktur verwendet werden.
XAudio2DecibelsToAmplitudeRatio

Inlinefunktion, die einen Dezibelwert in einen Amplitudenverhältniswert konvertiert.
XAudio2FrequencyRatioToSemitones

Inlinefunktion, die einen Frequenzverhältniswert in einen Halbtonwert konvertiert.
XAudio2RadiansToCutoffFrequency

Inline-Funktion, die von den in XAUDIO2_FILTER_PARAMETERS verwendeten Bogenmaßfrequenzen zurück in absolute Frequenzen in Hertz konvertiert.
XAudio2SemitonesToFrequencyRatio

Inlinefunktion, die einen Halbtonwert in einen Frequenzverhältniswert konvertiert.

Schnittstellen

 
IXAPO

Die Schnittstelle für ein Audioverarbeitungsobjekt, das in einer XAudio2-Effektkette verwendet wird.
IXAPOHrtfParameters

Die Schnittstelle, die zum Festlegen von Parametern verwendet wird, die steuern, wie die head-related transfer function (HRTF) auf einen Sound angewendet wird.
IXAPOParameters

Eine optionale Schnittstelle, die es einem XAPO ermöglicht, effektspezifische Parameter zu verwenden.
IXAudio2

IXAudio2 ist die Schnittstelle für das XAudio2-Objekt, das alle Audio-Engine-Zustände, den Audioverarbeitungsthread, das Stimmdiagramm usw. verwaltet.
IXAudio2EngineCallback

Die IXAudio2EngineCallback-Schnittstelle enthält Methoden, die den Client benachrichtigen, wenn bestimmte Ereignisse in der IXAudio2-Engine auftreten.
IXAudio2MasteringVoice

Eine Masterstimme wird verwendet, um das Audioausgabegerät darzustellen.
IXAudio2SourceVoice

Verwenden Sie eine Quellstimme, um Audiodaten an die XAudio2-Verarbeitungspipeline zu übermitteln.
IXAudio2SubmixVoice

Eine Submixstimme wird in erster Linie für Leistungsverbesserungen und die Verarbeitung von Effekten verwendet.
IXAudio2Voice

IXAudio2Voice stellt die Basisschnittstelle dar, von der IXAudio2SourceVoice, IXAudio2SubmixVoice und IXAudio2MasteringVoice abgeleitet werden. Die unten aufgeführten Methoden sind für alle Sprachunterklassen gemeinsam.
IXAudio2VoiceCallback

Die IXAudio2VoiceCallback-Schnittstelle enthält Methoden, die den Client benachrichtigen, wenn bestimmte Ereignisse in einem bestimmten IXAudio2SourceVoice auftreten.

Strukturen

 
FXECHO_INITDATA

Initialisierungsparameter für die Verwendung mit FXECHO XAPOFX.
FXECHO_PARAMETERS

Parameter für die Verwendung mit FXECHO XAPOFX.
FXEQ_PARAMETERS

Parameter für die Verwendung mit FXEQ XAPO.
FXMASTERINGLIMITER_PARAMETERS

Parameter für die Verwendung mit fxMasteringLimiter XAPO.
FXREVERB_PARAMETERS

Parameter für die Verwendung mit fxReverb XAPO.
HrtfApoInit

Gibt Parameter an, die zum Initialisieren räumlicher HRTF-Audiodaten verwendet werden.
HrtfDirectivity

Basisdirektivitätsmusterdeskriptor. Beschreibt den Typ der Directivity, die auf einen Sound angewendet wird.
HrtfDirectivityCardioid

Beschreibt ein Kardioid-Direktivitätsmuster.
HrtfDirectivityCone

Beschreibt eine Kegel-Direktivität.
HrtfDistanceDecay

Beschreibt ein entfernungsbasiertes Verfallsverhalten.
HrtfOrientation

Gibt die Ausrichtung eines HRTF-Direktivitätsobjekts an.
HrtfPosition

Stellt eine Position im 3D-Raum mit einem rechtshändigen Koordinatensystem dar.
X3DAUDIO_CONE

Gibt die Direktionalität für einen einkanaligen Nicht-LFE-Emitter an, indem das DSP-Verhalten in Bezug auf die Ausrichtung des Emitters skaliert wird.
X3DAUDIO_DISTANCE_CURVE

Definiert eine explizite stückweise Kurve, die aus linearen Segmenten besteht, und definiert das DSP-Verhalten direkt in Bezug auf den normalisierten Abstand.
X3DAUDIO_DISTANCE_CURVE_POINT

Definiert eine DSP-Einstellung in einem bestimmten normalisierten Abstand.
X3DAUDIO_DSP_SETTINGS

Empfängt die Ergebnisse eines Aufrufs von X3DAudioCalculate.
X3DAUDIO_EMITTER

Definiert eine Einzelpunkt- oder Mehrpunkt-3D-Audioquelle, die mit einer beliebigen Anzahl von Soundkanälen verwendet wird.
X3DAUDIO_LISTENER

Definiert einen Punkt des 3D-Audioempfangs.
XAPO_LOCKFORPROCESS_PARAMETERS

Definiert Streampufferparameter, die konstant bleiben, während ein XAPO gesperrt ist. Wird mit der IXAPO::LockForProcess-Methode verwendet.
XAPO_PROCESS_BUFFER_PARAMETERS

Definiert Streampufferparameter, die sich von einem Aufruf zum nächsten ändern können. Wird mit der Process-Methode verwendet.
XAPO_REGISTRATION_PROPERTIES

Beschreibt allgemeine Merkmale eines XAPO. Wird mit IXAPO::GetRegistrationProperties, CXAPOParametersBase::CXAPOParametersBase und CXAPOBase::CXAPOBase verwendet.
XAUDIO2_BUFFER

Stellt einen Audiodatenpuffer dar, der mit IXAudio2SourceVoice::SubmitSourceBuffer verwendet wird.
XAUDIO2_BUFFER_WMA

Wird mit IXAudio2SourceVoice::SubmitSourceBuffer beim Übermitteln von xWMA-Daten verwendet.
XAUDIO2_DEBUG_CONFIGURATION

Enthält die neue globale Debugkonfiguration für XAudio2. Wird mit der Funktion SetDebugConfiguration verwendet.
XAUDIO2_EFFECT_CHAIN

Definiert eine Effektkette.
XAUDIO2_EFFECT_DESCRIPTOR

Enthält Informationen zu einem XAPO zur Verwendung in einer Effektkette.
XAUDIO2_FILTER_PARAMETERS

Definiert Filterparameter für eine Quellstimme.
XAUDIO2_PERFORMANCE_DATA

Enthält Leistungsinformationen. (XAUDIO2_PERFORMANCE_DATA)
XAUDIO2_SEND_DESCRIPTOR

Definiert eine Zielstimme, die das Ziel eines Sendens von einer anderen Stimme ist, und gibt an, ob ein Filter verwendet werden soll.
XAUDIO2_VOICE_DETAILS

Enthält Informationen zu den Erstellungsflags, Eingabekanälen und der Abtastrate einer Stimme.
XAUDIO2_VOICE_SENDS

Definiert einen Satz von Stimmen, um Daten von einer einzelnen Ausgabestimme zu empfangen.
XAUDIO2_VOICE_STATE

Gibt die aktuellen Status- und Cursorpositionsdaten der Stimme zurück.
XAUDIO2FX_REVERB_I3DL2_PARAMETERS

Beschreibt I3DL2-Parameter (Interactive 3D Audio Rendering Guidelines Level 2.0) für die Verwendung in der ReverbConvertI3DL2ToNative-Funktion.
XAUDIO2FX_REVERB_PARAMETERS

Beschreibt Parameter für die Verwendung im Hall-APO.
XAUDIO2FX_VOLUMEMETER_LEVELS

Beschreibt Parameter für die Verwendung mit dem Volumemeter APO.