XAudio2-Schlüsselkonzepte
In dieser Übersicht werden einige wichtige Konzepte für die Verwendung von XAudio2 vorgestellt.
XAudio2-Engine
Die IXAudio2-Schnittstelle bildet den Kern des XAudio2-Moduls. Das Erstellen einer instance der IXAudio2-Schnittstelle ermöglicht es dem Client, die verfügbaren Audiogeräte aufzulisten, globale API-Eigenschaften zu konfigurieren, Stimmen zu erstellen und die Leistung zu überwachen. Die Hilfsfunktion XAudio2Create führt Instanziierungs- und Initialisierungsaufgaben für XAudio2 aus.
Sie können Instanzen von XAudio2 mehrmals innerhalb eines einzelnen Prozesses erstellen. Jedes XAudio2-Objekt arbeitet unabhängig und verfügt über einen eigenen Audioverarbeitungsthread. Nur die Debugeinstellungen werden freigegeben. Dies ist unter Windows wichtig, wo mehrere verschiedene Komponenten in einem einzigen Prozess geladen werden können. Internet-Explorer können beispielsweise mehrere XAudio2-Komponenten gleichzeitig verwenden. Obwohl es möglich ist, mehrere XAudio2-Engine-Objekte in einer einzelnen Clientanwendung zu erstellen, sollten Sie keine Informationen zwischen den jeweiligen Diagrammen übergeben.
Ein Beispiel für die Initialisierung der XAudio2-Engine finden Sie unter Vorgehensweise: Initialisieren von XAudio2.
Stimmen
Stimmen sind die Objekte, die XAudio2 zum Verarbeiten, Bearbeiten und Wiedergeben von Audiodaten verwendet. Es gibt drei Arten von Stimmen in XAudio2.
-
Quellstimmdaten stellen einen Stream von Audiodaten dar. Quellstimmdaten senden ihre Daten an andere Arten von Stimmen.
-
Submix-Stimmen führen eine gewisse Manipulation der empfangenen Audiodaten durch. Ein Beispiel für die Bearbeitung von Audiodaten kann die Konvertierung der Abtastrate sein. Nachdem eine Submix-Stimme Daten verarbeitet hat, übergibt sie diese Daten an eine andere Submixstimme oder an eine master Stimme.
-
Master-Stimmen empfangen Daten von Quellstimm- und Submixstimmstimden und senden diese Daten an die Audiohardware.
Eine Übersicht über XAudio2-Stimmen finden Sie unter XAudio2-Stimmen.
Audiograph
Ein Audiograph ist eine Sammlung von XAudio2-Stimmen. Audio beginnt auf einer Seite eines Audiodiagramms in Quellstimme, durchläuft optional eine oder mehrere Submixstimme und endet bei einer Masterstimme. Ein Audiodiagramm enthält eine Quellstimme für jeden aktuell wiedergegebenen Sound, null oder mehr Submixstimme und eine Masterstimme. Das einfachste Audiodiagramm und das Minimum, das zum Erstellen eines Rauschens in XAudio2 erforderlich ist, ist eine Single-Source-Stimme, die direkt an eine Masterstimme ausgegeben wird. Unter Vorgehensweise: Wiedergeben eines Sounds mit XAudio2 finden Sie ein Beispiel für die Mindestschritte, die zum Wiedergeben eines Sounds mit XAudio2 erforderlich sind.
Unter XAudio2 Audio Graph finden Sie eine Übersicht über XAudio2-Audiographen.
Rückrufe
Rückrufe sind der Mechanismus, den XAudio2 verwendet, um Clientcode zu signalisieren, dass ein Ereignis in einer Stimme oder im Modulobjekt aufgetreten ist. Da die Audiowiedergabe in der XAudio2-Engine asynchron ist, bieten Rückrufe die einzige Möglichkeit, zu bestimmen, wann ein Sound beendet ist.
Eine Übersicht über XAudio2-Rückrufe finden Sie unter XAudio2-Rückrufe.
Zugehörige Themen