GS_Audio

Audio management, event-based sound, music scoring, mixing, and Klatt voice synthesis for the GS_Play framework.

GS_Audio is the audio management gem for GS_Play. It provides event-based sound playback, a multi-layer music scoring system, mixing buses with effects chains, and a built-in Klatt formant voice synthesizer with 3D spatial audio. All audio features integrate with the GS_Play manager lifecycle and respond to standby mode automatically.

For architecture details, component properties, and extension patterns, see the GS_Audio API.


Quick Navigation

I want to…FeatureAPI
Manage the audio engine, load event libraries, or control master volumeAudio ManagerAPI
Play sounds with pooling, 3D spatialization, and concurrency controlAudio EventsAPI
Configure mixing buses with filters, EQ, and environmental influence effectsMixing & EffectsAPI
Layer music tracks dynamically based on gameplay stateScore ArrangementAPI
Generate text-to-speech with configurable voice parameters and 3D spatial audioKlatt VoiceAPI

Installation

GS_Audio requires GS_Core and the MiniAudio gem. Add both to your project’s gem dependencies.

For a complete guided setup, follow the Simple Project Setup guide.

 

Quick Installation Summary

  1. Enable the GS_Audio gem in your project configuration.
  2. Create an Audio Manager prefab and add it to the Game Manager’s Managers list.
  3. Create Audio Event Library assets for your sound effects.
  4. Place GS_AudioEventComponent on entities that need to play sounds.

Audio Manager

The Audio Manager is the singleton controller for the entire audio system. It initializes the audio engine, manages mixing buses, loads audio event libraries, and coordinates score playback. Like all GS_Play managers, it extends the Manager base class and plugs into the Game Manager’s startup sequence automatically.

Audio Manager API


Audio Events

Audio Events are the primary way to play sounds. Each event defines a pool of audio clips with selection rules (random or sequential), 2D or 3D playback mode, concurrent instance limiting, and repeat-hold behavior. Events are grouped into Audio Event Library assets that the Audio Manager loads at startup.

Audio Events API


Mixing & Effects

The mixing system provides named audio buses with configurable effects chains. Each bus can have filters applied — low pass, high pass, band pass, notch, peaking EQ, shelving, delay, and reverb. Audio Bus Influence Effects allow environmental zones to dynamically modify bus effects based on the listener’s position.

Mixing & Effects API


Score Arrangement

Score Arrangement Tracks are multi-layer music assets. Each arrangement defines a time signature, BPM, fade behavior, and a set of Score Layers — individual audio tracks that can be enabled or disabled independently. This allows dynamic music that adds or removes instrument layers based on gameplay state.

Score Arrangement API


Klatt Voice Synthesis

GS_Play includes a built-in text-to-speech system based on Klatt formant synthesis. The Klatt Voice component converts text to speech in real time with configurable voice parameters — frequency, speed, waveform, formants, and pitch variance. The system supports 3D spatial audio and inline KTT tags for expressive delivery.

Klatt Voice API


See Also

For the full API, component properties, and C++ extension guide:

For step-by-step project setup:


Get GS_Audio

GS_Audio — Explore this gem on the product page and add it to your project.