rope-audioengine is a C++20 real-time audio mixer for games. It opens a single output stream and mixes an arbitrary number of mono/stereo voices on a dedicated audio thread using lock-free command and event queues — no locking or allocation on the hot path. Per-voice gain, constant-power pan, and master volume are applied in the mixer; engine-to-app events (e.g. VOICE_FINISHED) are delivered via polling rather than callbacks into game code.
The backend abstraction separates the platform device layer from the mixer. miniaudio covers Windows, macOS, Linux, Android, and iOS by default; RtAudio adds ASIO on Windows. Audio decoding supports WAV, FLAC, MP3, and OGG/Vorbis via dr_libs and stb_vorbis.
The public surface is a stable, POD-only C ABI (`rope.h`) suitable for FFI from any language. Provided bindings include a Flutter/Flame FFI plugin and C# P/Invoke wrappers for Unity or Godot .NET. The mixer is tested headlessly via a Null backend, with a GoogleTest suite and CI across Windows, Linux, and macOS.
AudioVibrationKit
Unity A modular Unity toolkit that consolidates audio management and haptic feedback into a single ScriptableObject-based architecture. Provides audio pooling for 2D and 3D sounds, music playback with smooth transitions, and curve-based vibration control using AnimationCurve.
Includes Odin Inspector-powered editor tools that auto-generate type-safe enums for sounds, music tracks, and vibration patterns. The vibration system supports preset patterns, constant vibrations, emphasis modes, and custom curve-based playback with real-time updates and cancellation via UniTask.
Designed for Android deployment with runtime performance in mind. All audio and haptic configurations are managed through visual editors with real-time preview capabilities.
A Bevy plugin integrating the Kira audio library as an alternative to bevy_audio. Supports playback of ogg, mp3, flac, and wav formats across native and web builds. Provides granular control over audio instances and channels, including dynamic transitions for volume, panning, playback rate, and looping behavior.
Sound playback is organized into channels, each offering independent control over pause, stop, volume, speed, and panning for all sounds within that channel. Audio instances can be configured at start time or controlled individually during playback, with support for smooth transitions using tweens and various easing curves. Includes settings loader functionality for pre-configuring audio sources via ron files.
Offers basic spatial audio capabilities that automatically adjust volume and panning based on emitter and receiver positions in 3D space.