Presentation is loading. Please wait.

Presentation is loading. Please wait.

XAudio2: Audio Building Blocks for the Future Brian Schmidt Program Manager XNA Professional Game Platform Microsoft.

Similar presentations


Presentation on theme: "XAudio2: Audio Building Blocks for the Future Brian Schmidt Program Manager XNA Professional Game Platform Microsoft."— Presentation transcript:

1

2 XAudio2: Audio Building Blocks for the Future Brian Schmidt Program Manager XNA Professional Game Platform Microsoft

3 Game Audio Pipelines

4

5

6 XAudio2

7 (XACT 3) Xbox 360 Game XAudio2 Xbox 360 Audio Output Hardware (XACT 3) Windows Game XAudio2 WASAPI (Vista)/DirectSound (XP) XMA Decoder Drivers/Audio Output Hardware

8 Bit of History… 1995: DirectSound released Bleeding Edge CPU: Pentium, 133 MHz (no MMX) DirectSound3D API introduced (1997) ISA sound cards w/ on-board memory wave file is a sound

9 Fast Forward to 2008 Multicore, 3+ GHz CPUs HD motherboard audio Surround Sound High fidelity SIMD floating-point architectures High-level audio tools Complex sounds and processing

10 XAudio2 is… A new API for code-driven, low-level audio processing for games Replacement for DirectSound for gaming applications for Windows XP and Windows Vista Replacement for XAudio for Xbox 360 games Based on Xbox 360 XAudio architecture XAudio2 API will be familiar to XAudio developer, but not just a recompile Incorporates feedback on XAudio API

11 XAudio2 Design Goals Focus exclusively on game scenarios Simple – Just a few methods cover basic scenarios Greater emphasis on digital signal processing (DSP FX) Write and integrate your own DSP FX easily Submixing Allow more flexibility for 3D Support Microsoft gaming platforms

12 XAudio2 Features Separation of sound data from voice Point XAudio2 at some sound data and Play() Submixing Multirate processing Arbitrary loop point Per-voice filtering Programmable voices Effects processing, SRC Software DSP Enhanced Surround Sound support Native Compressed Data Support XMA on Xbox 360 xWMA on Windows and Xbox 360 ADPCM on Windows Extensible

13 XAudio2 Components Source Voice Reads data from XMA decoder /ADPCM or PCM xWMA Sample Rate Conversion, Volume, loop, N-way Pan Can insert arbitrary FX Multichannel support Submix Voice(s) Input from one or more voices & submixes them together N-way Pan Can insert arbitrary FX Can send to additional submix voices Mastering Voice Takes final N channel mix as input Can insert arbitrary FX (compression, etc.) Outputs data to system

14 XAudio2 Overall Architecture

15 XAudio2 Source Voice XAudio2 Submix Voice

16 Submix Voices Useful for summing sounds and applying single DSP and/or 3D panning on the aggregate mix Also used for shared send to effects Reverb, etc. Can be used to reduce CPU usage by creating a low rate submix

17 Example: Submixing Voices

18 Mastering Voice Submix Voice with Global Reverb Submix Voice with Global Reverb Submix Voice Source Voice Example: Reverb Sends

19 Example: Low Rate Submix

20 3D/Surround Sound 3D Audio handled differently from DirectSound3D XAudio2 provides enhanced Surround support Explicit multichannel panning/mapping 3D handled as a separate, replaceable library XAudio2 takes multichannel speaker volumes X3DAudio library transforms source/listener coordinates into speaker volumes and other synthesis parameters

21 -5.1 Speaker Volumes -DSP Data -Intermediate calculations -5.1 Speaker Volumes -DSP Data Game Object Geometry Data Game Engine XAudio2 X3DAudio

22 DSP Audio Effects XAudio2 uses new cross-platform DSP model, xAPO (Audio Processing Object) Simplification of APO model used for Windows Vista system effects Can use supplied xAPOs or write your own

23

24 Additional Enhancements Beyond Xbox 360 XAudio API Built-in filter per voice Can set overall sampling rate Submixes can have their own sampling rate Reduce CPU usage Non-blocking API Deferred commands Not limited to 6-channel source data Improved DSP architecture

25 Libraries Built on XAudio2 Several libraries are built on top of XAudio2 These are updated as well Follow same Beta/RTM schedule XACT 3 XACT running on XAudio2 Windows and Xbox XMedia2 (XMV) Xbox 360 movie player running on XAudio2 XHV2 Xbox 360 voice library running on XAudio2

26 Release Schedule XAudio2 is available now Beta/Unapproved in November SDK/XDK RTM/Approved in March 2008 Update in June 2008 SDK/XDK

27 Summary XAudio2 provides all-software audio pipeline for Windows and Xbox 360 Provides consistent experience across hardware configurations Based on Xbox 360 XAudio API, with enhancements Addresses long-standing issues with DirectSound Buffer/Data/Allocations Flexible DSP, submixing, signal processing Cross-pollination of Xbox 360 and Windows Technologies

28 Call to action Windows Games Move your DirectSound game to XAudio2 Xbox 360 Games Move your XAudio game to XAudio2 Everybody! Please give us feedback Use connect.microsoft.com for status, newsgroups, etc.

29 © 2008 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.


Download ppt "XAudio2: Audio Building Blocks for the Future Brian Schmidt Program Manager XNA Professional Game Platform Microsoft."

Similar presentations


Ads by Google