The Architecture of Audio Runtimes

This chapter explains how the components of an interactive audio system fit together and what additional sub-systems can be implemented cheaply to make the foundation more practically useful.

The design splits the implementation into two layers. The first is generic to all platforms, written in a portable subset of C++, providing a rich and consistent interface for the game or application audio programmer to work with. It wraps an inner physical layer which tailors the output of the platform-independent logical layer to the most suitable hardware or software interface provided by the platform vendor.

Audio system layering
Layers and threads of the audio runtime systems explained in the book