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. |