XAudio2
-
high-level audio engine built on top of WASAPI.
Features
-
Multi-voice mixing
-
Submix graph
-
DSP chains per voice or submix
-
Sample-rate conversion
-
Channel mapping
-
3D audio (X3DAudio)
-
HRTF (Windows Sonic)
-
Real-time effects
-
Sample-accurate timing
-
Streaming buffers
-
Low-latency control
-
Custom DSP effects (COM-based)
-
Voice sends
-
Audio routing graph
-
Async buffer submission
-
Hardware acceleration (historically)
-
Tight WASAPI integration
Cons
-
No Cross-platform support
-
No Built-in decoding (same as OpenAL)
-
No modern API ergonomics (COM, verbose)
-
No active evolution (API is stable, not evolving fast)
WASAPI (Windows Audio Session API)
-
Modern Windows audio API (Vista+).
-
Direct interface to Windows audio engine.
-
Two modes:
-
Shared mode (through system mixer)
-
Exclusive mode (low latency, bypass mixer)
-
-
Event-driven or polling.
-
Sample-accurate timing possible.
-
Closest to βmetalβ on Windows.
DirectSound
-
DirectX-era audio API (DirectX 3β9).
-
Windows Vista+ β emulated on top of WASAPI.
-
Typical use today
-
Legacy games
-
Compatibility layers
-
WinMM (Windows Multimedia API)
-
Old Windows audio API (1990s).