Advertisement

Audio : XACT or XAudio2

Started by January 25, 2019 04:14 PM
1 comment, last by Shaarigan 5 years, 10 months ago

Can someone explain the differences between XACT and XAudio2 ?

I look to the demos : the XAudio you fill in the whole name .wav when playing, cant you load the wave file in advance ?

With XACT i dont see wave files ?, can it also play wavefiles ?

thanks

Quote

Cross-platform Audio Creation Tool (XACT) is an audio programming library and engine released by Microsoft as part of the DirectX SDK.[1] It is a high-level audio library for authoring/playing audio that is written to use Xaudio on the Xbox, DirectSound on Windows XP, and the new audio stack on Windows Vista and Windows 7. Xaudio is an Xbox-only API designed for optimal digital signal processing. XACT also includes X3DAudio, a spatialization helper library available on both platforms, Windows and the Xbox. XACT was originally developed for Xbox development, and was later modified to work for Microsoft Windows development as well.

The original release of XACT was in 2002 and shipped as part of the Xbox SDK only and was originally called the "Xbox Audio Creation Tool."

Source: Wikipedia

XAudio2 is the successor of the old DirectSound component from the DX SDK and now available on Windows 7/8/8.1 and 10 using the WASAPI audio interface built into Windows Vista and beyond. There also exists the good old WAVEAPI from Windows NT up to WIndows XP.

Those are for directly talking to the low level OS audio features and are embedded into several cross-platform libraries like PortAudio. Then you also have the choice to use the OpenAL audio driver.

Those are all more or less capable of playing wave files because this file format is the most plain you have these days without any heavy compression or sample frames.

If you have never heared of them and/or don't know what an audio mixer in system level is or even didn't try to google for a tutorial on how to play wav file using xaudio2, I would suggest to read about it and do a tutorial before doing any further steps. You can't code well on a platform you don't know about it's technology

This topic is closed to new replies.

Advertisement