This week, AMD and Valve announced AMD TrueAudio Next (TAN) support for Steam Audio, introducing it with the newly released Steam Audio 2.0 beta 13. Introduced just about a year ago, Steam Audio is Valve’s cross-platform developer tool for VR spatial audio, implementing features like binaural rendering, sound occlusion, and 3D sound propagation. Although consumers do not directly use this SDK, TAN support allows developers to utilize additional audio processing capabilities for GCN-based AMD GPUs. In turn, games and VR applications built on Steam Audio may feature more complex and immersive VR audio on AMD’s GCN-based video cards.

As part of the LiquidVR initiative, the TrueAudio Next SDK was announced in 2016 as a physics-based real-time audio acoustics rendering technology, with the corresponding open-source library part of GPUOpen, and comparable to NVIDIA’s contemporaneous release of VRWorks Audio. Like the other LiquidVR pieces, the goal was to push for maximum VR immersion, of which accurate and immersive audio is a key part. To be clear, although the technology takes its namesake from AMD’s original TrueAudio introduced in 2013, TAN uses existing AMD GPU resources rather than dedicated DSP hardware.

For Steam Audio, two core features of TAN play into its implementation: resource reservation and GPU-based convolution compute. For the former, developers can reserve AMD GPU compute units (CUs) for dedicated audio processing, though the feature limits itself to 20 – 25% of all CUs. The feature can also be enabled or disabled on a scene-by-scene basis, where TAN might be disabled for a graphically intensive scene that demands maximum compute resources.

For audio convolution, where audio signals modifying or filtering in a specific manner, the TAN library offers algorithms that can run on CPUs and GPUs. Using the GPU, TAN can accelerate the versatile convolution reverb for indirect sound, where sound bounces off solid objects before reaching the listener. Valve notes that indirect sound simulation and rendering is the most computationally intensive part of Steam Audio, and because of the Ambisonics technology used for directional variation of indirect sound, more spatial detail and quality require many more convolutions per audio source.

With resource reservation and GPU-accelerated time-varying convolution reverb, Steam Audio can easily offload both tasks from the CPU, which can instead take on other tasks like physics simulations or AI calculations. The other benefit is the isolation between audio and graphics processing, which brings benefits in both directions: computationally and/or graphically intensive scenes will not cause audio clicks, pops, and glitching, while moments of heavy audio processing will not cause sudden framerate drops and stuttering. Valve stated that the performance impact on CU reservation was more-or-less linear, where reserving 10% of available CUs results in 10% lower average framerates. Excluding that resource reservation feature, AMD’s TrueAudio Next whitepaper states that only a relatively small amount of video memory bandwidth is shared.

Utilizing TAN for Steam Audio is completely optional, taking the form of optional higher detail settings for TAN-capable GPUs. TAN can also be used in the various Steam Audio plugins for FMOD Studio, Unreal Engine 4, and Unity, as well as directly through the Steam Audio C API. More details can be found on the Steam Audio 2.0 beta 13 release notes and TAN GPUOpen page. The Steam Audio SDK and integrated plugins can be downloaded from its Github page.