XAudio2


XAudio2 is a lower-level audio API for Microsoft Windows, Xbox 360 and Windows Phone 8, the successor to DirectSound on Windows and a supplement to the original XAudio on the Xbox 360.
XAudio2 operates through the XAudio API on the Xbox 360, through DirectSound on Windows XP, and through the low-level audio mixer WASAPI on Windows Vista and higher.
The RTM release of the XAudio2 library is included in the March 2008 DirectX SDK, enabling a programmer with Visual Studio to use XAudio2 in a Windows, Xbox 360 and Windows Phone 8 project. The latest version of XAudio2 is 2.9, released for Windows 10.
XAudio2 versions have shipped for use on Xbox 360 and versions of Windows, and for as old as Windows XP using redistributable DLLs, with newer versions adding features only compatible with newer operating systems. E.g. XAudio 2.8 shipped with Windows 8, and supports Windows Store apps, and isn't available for older Windows versions nor is it included in Windows Server 2012.
There are known issues with XAudio2 2.7 library that is "in the legacy DirectX SDK".
"XAudio2: High Performance Considerations" supports Windows 7.

Features

XAudio2 provides mixing and signal processing for high-level audio APIs such as XACT and as well provides the programmer with high-level functions related to spatial processing.
XAudio2 abstracts audio generation by separating sound data from "voice", allowing each voice to be filtered by programmable digital signal processing and effects processing functions. Voices can be "submixed" together into a single stream.
XAudio2 can natively decompress XMA on the Xbox 360, xWMA on Windows 10, and various ADPCM codecs on both platforms. XAudio2 2.8 supports Windows Store App development and can be used in C++/DirectX apps.