Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Anmerkung
Diese Dokumentation richtet sich an eine Entwicklergruppe. Informationen zur Unterstützung von Endbenutzern für die Aktivierung von räumlichem Sound auf Ihrem Gerät finden Sie unter
Microsoft Spatial Sound ist die Plattformebenenlösung Microsoft für räumliche Klangunterstützung für Xbox, Windows und HoloLens 2, wodurch Sowohl Surround- als auch Höhenhinweise (über oder unterhalb des Zuhörers) ermöglicht werden. Räumlicher Sound kann von Windows Desktop-Apps (Win32)-Apps sowie von Universelle Windows-Plattform (UWP) Apps auf unterstützten Plattformen genutzt werden. Mit den räumlichen Sound-APIs können Entwickler Audioobjekte erstellen, die Audio von Positionen im 3D-Raum ausgeben. Mit dynamischen Audioobjekten können Sie Audio von einer beliebigen Position im Raum ausgeben, die sich im Laufe der Zeit ändern kann. Sie können auch angeben, dass Audioobjekte Sound von einem von 17 vordefinierten statischen Kanälen (8.1.4.4) ausgeben, die echte oder virtualisierte Lautsprecher darstellen können. Das tatsächliche Ausgabeformat wird vom Benutzer ausgewählt und kann aus Microsoft Spatial Sound-Implementierungen abstrahiert werden. Audio wird vorhandenen Lautsprechern, Kopfhörern und Heimkinoempfängern angezeigt, ohne dass Code oder Inhaltsänderungen erforderlich sind. Die Plattform unterstützt die Echtzeit-Dolby Atmos-Codierung sowohl für HDMI- als auch Stereo-Kopfhörerausgabe, DTS:X für Kopfhörer und Windows Sonic for Headphones-Codierung für Stereo-Kopfhörer. Schließlich werden Microsoft Spatial Sound-Apps von der Systemmischrichtlinie eingehalten, und ihre Audiodaten werden auch mit nicht räumlichen Apps gemischt. Microsoft Spatial Sound-Unterstützung ist auch in Media Foundation integriert. Apps, die Media Foundation verwenden, können Dolby Atmos-Inhalte ohne zusätzliche Implementierung erfolgreich wiedergeben.
Räumlicher Sound mit Microsoft Spatial Sound unterstützt Fernseher, Heimkinos und Soundbars, die Dolby Atmos unterstützen. Raumklang kann auch in Verbindung mit jedem Kopfhörerpaar verwendet werden, das der Verbraucher besitzt, wobei das Audio von der Plattform mit Windows Sonic for Headphones, Dolby Atmos for Headphones oder DTS Headphone:X gerendert wird.
Microsoft räumlichen Klang aktivieren
Unabhängig davon, ob es sich um Entwickler oder Verbraucher handelt, muss ein Benutzer Microsoft räumlichen Sound auf dem Gerät aktivieren, um räumlichen Sound zu hören.
Windows
Auf Windows PCs erfolgt dies über die Eigenschaftenseite für ein bestimmtes Soundausgabegerät. Wählen Sie im Sound Systemsteuerung ein Ausgabegerät aus, und klicken Sie auf Geräteeigenschaften. Wenn das Gerät räumlichen Sound unterstützt, können Sie im Räumlichen Sound Abschnitt der Seite eines der verfügbaren Formate aus dem Räumlichen Soundformat Dropdown auswählen.
Sie können auch Microsoft Räumlichen Sound aktivieren, indem Sie in der Taskleiste mit der rechten Maustaste auf das symbol Volume klicken.
aktivieren
Xbox
Auf Xbox sind Microsoft Spatial Sound-Funktionen für den Verbraucher immer verfügbar und über die Windows-Einstellungen unter General -> Volume & audio output aktiviert.
Die HDMI-Audiotaste wird mit allen Formaten gefüllt, die vom Audio-Videoempfänger (AVR) oder soundbar oder dem Fernsehgerät unterstützt werden, das direkt mit Ihrer Xbox Konsole verbunden ist. Die Option "Optisches Audio" ist nur auf älteren Xbox Konsolen und nicht auf Xbox Series X|S und höher verfügbar.
Beachten Sie, dass die Auswahl der Optionen "Dolby Atmos für Heimkino (nur HDMI)" oder "DTS:X für Heimtheater (nur HDMI)" in HDMI-Audio den Benutzer auffordert, Dolby Access oder DTS Sound Unbound-Apps herunterzuladen und zu installieren, falls noch nicht installiert
Wählen Sie Dolby Atmos für Kopfhörer, DTS Headphone:X oder Windows Sonic for Headphones aus dem Headset-Format dropdown unter Headset audio
Wenn Microsoft Räumlicher Sound nicht verfügbar ist (z. B. bei der Wiedergabe an eingebetteten Laptop-Stereolautsprechern oder wenn der Benutzer Microsoft Räumlichen Sound pro oben nicht explizit aktiviert hat), ist die Anzahl der verfügbaren dynamischen Objekte, die von ISpatialAudioClient::GetMaxDynamicObjectCount an eine Anwendung zurückgegeben werden, 0.
HoloLens 2
Auf HoloLens 2 ist Microsoft Spatial Sound standardmäßig aktiviert und verwendet hardwarebasiertes DSP-Offload speziell für Windows Sonic for Headphones.
Microsoft Spatial Sound and Audio Middleware
Viele App- und Spieleentwickler verwenden Lösungen des Audiorenderingmoduls von Drittanbietern, die häufig komplexe Erstellungs- und Auditingtools enthalten. Microsoft hat sich mit mehreren dieser Lösungsanbieter zusammengetan, um Microsoft Spatial Sound in ihren vorhandenen Erstellungsumgebungen zu implementieren. Dies bedeutet häufig, dass die hier beschriebenen APIs von der Ansicht der App abstrahiert werden; sie werden als DSP-Plug-Ins (Digital Signal Processing) eingebettet, die von der App instanziiert werden können. Der Audioimplementierer der App kann diese verwenden, um entweder ein Microsoft Spatial Sound-Kanalbett oder einen Submix zu erstellen oder nach Bedarf einzelne Stimmen an Plug-Ins für dynamische Objektinstanzen zu senden. Wenden Sie sich an Ihren Audio-Middleware-Lösungsanbieter, um die Unterstützung für Microsoft Spatial Sound zu erhalten.
Microsoft Räumlicher Sound für Audiorenderer
Viele Audiorenderer zielen auf eine Windows Audiositzungs-API (WASAPI) IAudioClient Endpunkt ab, in dem die Anwendung Puffer gemischter und formatkonformer Audiodaten in eine WASAPI-Audiosenke einspeist. Die bereitgestellten Puffer werden dann zum Mischen mit anderen Clients, der endgültigen Verarbeitung auf Systemebene und zum Rendern verwendet.
Die räumlichen Endpunkte für Microsoft Spatial Sound werden als ISpatialAudioClient implementiert, der viele Ähnlichkeiten mit IAudioClient aufweist. Es unterstützt statisches Soundobjekt, die ein Kanalbett bilden, mit Unterstützung für bis zu 8.1.4.4 Kanäle (8 Kanäle rund um den Hörer – Links, Rechts, Mitte, Seitlich links, Seitlich rechts, Hinten links, Hinten rechts und Rückcenter; 1 Niedrigfrequenzeffekten Kanal; 4 Kanäle über dem Hörer; 4 Kanäle unter dem Hörer). Und es unterstützt dynamischen Soundobjekte, die beliebig im 3D-Raum positioniert werden können.
Das allgemeine Implementierungscodierungsmuster für ISpatialAudioClient- lautet:
- Erstellen Sie statische und/oder dynamische Audioobjekte.
- Füttere jede Objekt-Audiopuffer mit jedem Frame, damit das System es rendern kann.
- Aktualisieren Sie die 3D-Positionen dynamischer Objekte bei Bedarf – so häufig (oder selten) wie die App wünscht.
Beachten Sie, dass das aktuelle Ausgabeformat (Lautsprecher oder Kopfhörer; Windows Sonic for Headphones, Dolby Atmos oder DTS Headphone:X) aus der obigen Implementierung abstrahiert wird – der App-Entwickler kann sich auf räumlichen Sound konzentrieren, ohne basierend auf dem Format pivotieren zu müssen. Apps, die ihr Verhalten basierend auf dem Ausgabeformat unterscheiden möchten, können das verwendete Format abfragen, die Abstraktion bedeutet jedoch, dass eine App nicht für die Verarbeitung dieser Formate erforderlich ist.
Microsoft Räumliche Soundintegration in Audiorenderer
Da ISpatialAudioClient eine Audiosenke ist, die Daten verbraucht, bietet ein Audiorenderer mehrere Optionen für die Interaktion mit und zum Übermitteln von Audiodaten. Es gibt drei häufig verwendete Integrationstechniken (und für Titel mit Audio-Middleware werden möglicherweise entsprechende Plug-Ins angezeigt, die basierend auf diesen Optionen zur Verfügung gestellt werden):
- 7.1.4 Panner und Mastering-Stimme: Renderer, die bereits 7.1-Endpunkte unterstützen, können einfach die vier zusätzlichen Höhenkanäle unterstützen, die das statische Kanalspektrum von ISpatialAudioClient unterstützt. Alle zuvor durchgeführten Kanalverschiebungen (wahrscheinlich bereits unter Verwendung von x-, y-, z-Koordinaten) können aktualisiert werden, um nun auch diese Höhenkanäle einzuschließen. Dies bietet häufig die geringste Unterbrechung für Renderer- und App-Audioworkflows sowie Signal-, Signalfluss- und Mix-Steuerung. Beachten Sie über Kopfhörer, dass der vollständige App-Mix räumlich dargestellt wird, wodurch sogar Stereomusik vom Zuhörer als "extern" wahrgenommen werden kann.
- Den vorhandenen Endpunkt beibehalten und einen 7.1.4-Bus (sowie Panner) hinzufügen: Einige Titel können zwei Endpunkte beibehalten: ihren vorhandenen Stereo-WASAPI-Endpunkt (für Inhalte "direkt auf die Ohren", die nicht räumlich dargestellt werden sollen) zusammen mit einem ISpatialAudioClient, der ein statisches Kanalbett mit 7.1.4 (oder sogar bis zu 8.1.4.4) unterstützt. Das Verwalten von Interaktionen zwischen zwei Mischungen stellt natürlich zusätzliche Herausforderungen für Inhaltsersteller dar, obwohl die Synchronisierung beibehalten wird, da sowohl WASAPI- als auch ISAC-Instanzen, die zu einem bestimmten Zeitpunkt aktiv sind, dieselbe Puffergröße und die gleiche Zeit für die Verarbeitung verwenden.
- Verwenden Sie dynamische Soundobjekte für bestimmte Stimmen oder Submixe: Diese Technik bietet möglicherweise die detaillierteste/genauste Positionierung, kann jedoch möglicherweise die Transparenz im Mix beeinträchtigen. Dabei werden ISpatialAudioClient dynamische Soundobjekte verwendet. Beachten Sie, dass die Metadaten plus Audiopuffer an den Renderer übermittelt werden, sodass diese Sounds für den Rest der App-Mischung undurchsichtig sind. Da es nur eine begrenzte Anzahl von verfügbaren dynamischen Soundobjekten gibt, muss der Renderer darüber hinaus die Implementierung von Priorisierungstechniken in Betracht ziehen – Culling, Sound-Ko-Lokation, Vermischung mit dem statischen Kanalbett usw. Spiele haben diese Technik häufig für einzelne "Hero"-Sounds verwendet, z. B. einen Hubschrauber, der sich über dem Listener bewegt.
Renderer können diese Ansätze auch kombinieren und abgleichen.
Microsoft Spatial Sound Runtime: Ressourcenauswirkungen
Bei Windows und Xbox variiert die Anzahl der verfügbaren Stimmen je nach verwendetem Format. Dolby Atmos-Formate unterstützen 32 aktive Objekte insgesamt (wenn also ein 7.1.4 Kanalbett verwendet wird, können 20 zusätzliche dynamische Soundobjekte aktiv sein). Windows Sonic für Headphones unterstützt insgesamt 128 aktive Objekte, wobei der LFE-Kanal (Low Frequency Effects) nicht tatsächlich als Objekt gezählt wird . Wenn also ein 8.1.4.4 Kanalbett verwendet wird, können 112 dynamische Soundobjekte aktiv sein.
Für Universelle Windows-Plattform Anwendungen, die auf Xbox One Spielkonsolen ausgeführt werden, erfolgt die Echtzeitcodierung (für Dolby Atmos for Home Theater, Dolby Atmos for Headphones, DTS:X for Home Theater, DTS Headphone:X und Windows Sonic for Headphones) ohne CPU-Kosten in Hardware.
Ab dem 2303 Xbox Betriebssystemupdate und dem Game Development Kit (GDK) werden die Ressourcengrenzwerte für Xbox auf die folgenden Werte aktualisiert:
| Format | Maximale statische Objekte (Kanalbett) | Maximale Dynamische Objekte Xbox Series X|S, UWP-Apps & |
Maximale dynamische Objekte Xbox Series X|S, XDK & |
Maximale Anzahl dynamischer Objekte Xbox One |
|---|---|---|---|---|
| Dolby Atmos für Home Theater (HDMI) | 12 (7.1.4) | 20 | 20 | 20 |
| DTS:X für Home Theater (HDMI) | 17 (8.1.4.4) | 20 | 20 | 16 |
| Dolby Atmos (Kopfhörer) | 17 (8.1.4.4) | 128 | 20 | 16 |
| DTS Headphone:X (Kopfhörer) | 17 (8.1.4.4) | 200 | 20 | 16 |
| Windows Sonic (Kopfhörer) | 17 (8.1.4.4) | 220 | 20 | 15 |
Ab der Wartungsversion vom Mai für Windows Build 22621 werden die Ressourcenbeschränkungen für Windows auf die folgenden Werte aktualisiert:
| Format | Maximale statische Objekte (Kanalboden) | Maximale Dynamische Objekte Windows |
Maximale dynamische Objekte HoloLens 2 |
|---|---|---|---|
| Dolby Atmos Heimtheater (HDMI) | 12 (7.1.4) | 20 | N/A |
| DTS:X für Heimtheater (HDMI) | 17 (8.1.4.4) | 32 | N/A |
| Dolby Atmos (Kopfhörer) | 17 (8.1.4.4) | 128 | N/A |
| Dolby Atmos (integrierte Lautsprecher) | 17 (8.1.4.4) | 128 | N/A |
| DTS Headphone:X (Kopfhörer) | 17 (8.1.4.4) | 128 | N/A |
| DTS:X Ultra (integrierte Lautsprecher) | 17 (8.1.4.4) | 128 | N/A |
| Windows Sonic (Kopfhörer) | 17 (8.1.4.4) | 128 | 31 |
Für frühere Windows, Xbox und HoloLens Versionen gelten die folgenden Ressourcengrenzwerte.
| Format | Maximale statische Objekte (Kanalbett) | Max. Dynamische Objekte Xbox One |
Maximale Dynamische Objekte Windows |
Maximale Dynamische Objekte HoloLens 2 |
|---|---|---|---|---|
| Dolby Atmos für Heimtheater (HDMI) | 12 (7.1.4) | 20 | 20 | N/A |
| DTS:X für Heimtheater (HDMI) | 17 (8.1.4.4) | 16 | 32 | N/A |
| Dolby Atmos (Kopfhörer) | 17 (8.1.4.4) | 16 | 16 | N/A |
| Dolby Atmos (integrierte Lautsprecher) | 17 (8.1.4.4) | N/A | 16 | N/A |
| DTS Headphone:X (Kopfhörer) | 17 (8.1.4.4) | 16 | 32 | N/A |
| DTS Ultra (integrierte Lautsprecher) | 17 (8.1.4.4) | N/A | 32 | N/A |
| Windows Sonic für Kopfhörer | 17 (8.1.4.4) | 15 | 112 | 31 |
Apps sollten auch die folgenden Ressourcenauswirkungen berücksichtigen:
- Speicher-/Datenträgerbandbreite: Linearer Inhalt, der auf 7.1.4 erstellt wurde, ist in der Regel größer als 7.1 linearer Inhalt (obwohl wahrnehmungsorientierte Codecs bereits häufig die Kanalkorrelation nutzen, sodass diese viel weniger als die tatsächlich 50% mehr Kanäle von Audiodaten einnehmen)
- Andere digitale Signalverarbeitungskosten: Einige zuvor globale Effekte können jetzt pro dynamisches Soundobjekt instanziert werden. Darüber hinaus möchten einige Inhaltsersteller möglicherweise einige DSP-Effekte aktualisieren, um zusätzliche Kanäle zu unterstützen oder sie eindeutig zu verwenden.
Microsoft Raumklang und Hinweise zur Klangräumlichkeit
Microsoft Räumlicher Sound konzentriert sich auf die Soundpositionierungssimulation auf einer idealisierten Kugel um den Zuhörer. Windows Sonic für Kopfhörer, DTS Headphone:X und Dolby Atmos implementieren die Zuordnung von Lautsprechern und die Virtualisierung für Kopfhörer. Es ist jedoch zu beachten, dass viele andere Aspekte der klangräumlichen Simulation, die bereits typischerweise in einer von Inhaltserstellern unterstützten Art implementiert sind, den bestehenden Engines überlassen bleiben. Inhaltsersteller verwenden weiterhin die vorhandenen Spieltools und -prozesse, die sie zuvor für solche räumlichen Hinweise wie Doppler, distanzbasierte Dämpfung und Filterung, Okklusion und Behinderung sowie Umgebungsnachhall hatten.
Zusätzliche Ressourcen
- Microsoft Spatial Sound samples github repository
- Dolby bietet eine Reihe von Supportressourcen im Zusammenhang mit Dolby Atmos und der Dolby Access-App, einschließlich der App Development Knowledge Base und der Dolby Access-Unterstützung .
Räumliche Klangschnittstellen
| Schnittstelle | Beschreibung |
|---|---|
| ISpatialAudioClient- | Ermöglicht einem Client das Erstellen von Audiostreams, die Audiodaten von einer Position im 3D-Raum ausgeben. |
| ISpatialAudioObject | Stellt ein Objekt dar, das Audiodaten bereitstellt, die von einer Position im 3D-Raum relativ zum Benutzer gerendert werden sollen. |
| ISpatialAudioObjectRenderStream | Stellt Methoden zum Steuern eines räumlichen Audioobjektrenderdatenstroms bereit, einschließlich Start, Beenden und Zurücksetzen des Datenstroms. |
| ISpatialAudioObjectRenderStreamNotify | Stellt Benachrichtigungen für räumliche Audioclients bereit, um auf Änderungen im Zustand eines ISpatialAudioObjectRenderStreams zu reagieren. |
Anmerkung
Bei Verwendung der ISpatialAudioClientschnittstellen in einem Xbox One Development Kit (XDK)-Titel, Sie müssen zuerst EnableSpatialAudio aufrufen, bevor Sie IMMDeviceEnumerator::EnumAudioEndpoints oder IMMDeviceEnumerator:: GetDefaultAudioEndpoint. Sollte dies nicht der Fall sein, gibt der Aufruf von Activate einen E_NOINTERFACE-Fehler zurück. EnableSpatialAudio ist nur für XDK-Titel verfügbar und muss weder für Universelle Windows-Plattform Apps aufgerufen werden, die auf Xbox One ausgeführt werden, noch für Nicht-Xbox One-Geräte.
Räumliche Klangstrukturen
| Struktur | Beschreibung |
|---|---|
| SpatialAudioObjectRenderStreamActivationParams | Stellt Aktivierungsparameter für einen räumlichen Audiorenderstream dar. |
| SpatialAudioClientActivationParams | Stellt optionale Aktivierungsparameter für einen räumlichen Audiorenderstream dar. |
Räumliche Klang-Aufzählungen
| Aufzählung | Beschreibung |
|---|---|
| AudioObjectType | Gibt den Typ eines ISpatialAudioObject an. |