Soloud Versions Save

Free, easy, portable audio engine for games

RELEASE_20200207

4 years ago
  • Oops, it's over a year already, let's do a refresh
  • Hilights:
    • Python 3 migration
    • Updated dr_ and stb_ libraries
    • Changing volume while paused should now work
    • Filters can now be queried for live parameters and ranges
    • Set FPU flags in audio threads to ignore denorms, performance gain (can be disabled at runtime)
    • New feature: ability to move live sounds from one bus to another (annexSound)
    • New backend: JACK
    • New backend: Nosound
    • New backend: MiniAudio
    • New demo: annex
    • New demo: Filter Folio for playing with filters
    • New audio source: Noise
    • New filter: FreeVerb
    • New namespace: Misc, including pseudorandom generator and waveform generator
    • Monotone now has new waveforms
    • Rewritten robotize filter
    • Internal calls in Soloud class renamed to _internal to avoid confusion
    • sdl headers now loaded as "sdl.h" instead of "sdl/sdl.h"
    • Removed portmidi, using rtmidi instead (piano example)
    • Added const in several places due to peer pressure
    • WinMM backend no longer leaks resources if init fails
    • Several queue fixes
    • WASAPI backend fixes
    • deprecated usleep -> nanosleep
    • A lot of cppcheck, lgtm, pvs-studio and other static code analysis fixes
    • A pile of smaller bug fixes and inevitably new bugs.

Downloads on http://soloud-audio.com

RELEASE_20181119

5 years ago
  • First release after 2 year burnout hiatus
  • Hilights:
    • FLAC, MP3 and various wav file formats through dr_flac, dr_mp3 and dr_wav
    • Split SDL and SDL2 dll backends due to SDL2 doing stupid things unless told not to
    • Removed modplug, added libmodplug dll interface
    • Loop point support for all audio sources
    • Wav files can now load from raw data
    • Multi-speaker support
    • Queues
    • Many new small examples
    • Piano demo now has padsynth
    • Sanity test: over 200 tests to check if changes break playback
    • Asserts
    • playBackground helper interface to play audio without panning
    • countAudioSource call to see how many instances of an audio source are playing
    • PS Vita homebrew platform support
    • Wave shaper, robotize filters
    • Added more options to speech synth playback
    • Removed many dynamic allocations
    • Switched FFT implementations (again)
    • Countless bug fixes and tweaks

Downloads on http://soloud-audio.com

RELEASE_20150512

8 years ago
  • SoLoud "VLF" release
  • Hilights:
    • Virtual voices - play 1000 voices, SoLoud will figure out which ones you hear
    • Major documentation update
      • yEd graphs
      • New web layout
      • Many tweaks to PDF layout
      • PDF doc is now 141 pages (ULF release had 94)
      • Single-file HTML now contains images
    • New backend: ALSA for Linux
    • New filter: bassboost
    • New backend: Null driver
      • No audio device, call mix() to pull samples.
    • New demo: virtualvoices
    • New demo: null driver
    • New demo: enumerate
    • Added functions to query information on currently active back-end
    • Added get/setLooping for live sounds
    • Added default volume for audio sources
    • Added custom 3d attenuator interface
    • Added LEFT_HANDED_3D flag for left-handed 3d coordinate processing
    • Added setInaudibleBehavior
    • Split demo common code to a separate static lib
    • Upped filter count to 8
    • Some x64 fixes
    • "nondyn" naming removed, calling static libs static now
    • Removed modf in monotone because Linux clib didn't like it
    • Cleanup fix - call stop() from all audio source virtual dtors
    • Memory file bugfixes
    • Wav file loading was broken after move to File interface, fixed
    • Some div by zeros fixed in Sfxr
    • 3d processing done largely outside audio mutex
      • Plus side - 3d stuff is way more performant
      • Minus side - 3d stuff isn't thread safe
    • And a bunch of smaller bug fixes and tweaks

RELEASE_20150427

9 years ago

Hilights:

More demos moved to new framework, features added
Switched FFT implementations
'FFTFilter' is now base class for STFT filters
Generalized file i/o through File class
New interface to query info from live audio streams
Commodore plus/4 TED and Commodore 64 SID song support
As always, documentation updates and little bug fixes here and there.

RELEASE_20150419

9 years ago
  • Not a milestone release, just a refresher
  • Hilights:
    • Moved from premake4 to premake fork GENie for build file generation
    • SDL2 static linking support
    • MONOTONE tracker replayer
      • New demo: monotone
    • New filter: DC removal
    • New demo framework based on ImGui, simplifies demo code and makes demos prettier
    • More foreign interfaces
      • D
      • GameMaker:Studio
    • Updated versions of libmodplug and stb_vorbis
    • Documentation updates and little bug fixes here and there.

RELEASE_20140821

9 years ago
  • Hilights:
    • 3d (positional) audio interfaces
      • Including positions, doppler, etc
      • New demo: 3dtest, a simple test of the positional audio
    • More foreign interfaces
      • BlitzMax
      • Ruby
      • RPG Maker
      • c# (c sharp)
    • Lots more documentation and little bug fixes here and there.

RELEASE_20140622

9 years ago
  • Hilights:
    • New demo: "space", demonstrating visualization data from different parts of the pipeline
    • New demo: "pew pew", demonstrating difference between play() and playClocked()
    • New filter: flanger
    • New way to play sounds: playClocked() for rapidly-launched sounds, to make it so all sounds don't start from the beginning of a sound buffer
    • Loop count query added
    • Voice groups to command several voices in one atomic operation
  • A lot of variable type changes:
    • Defined error codes, and several functions return error codes now.
    • Time variable type changed from float to double
    • Typedefs for handles, time, result codes
    • Plenty of "int" -> "unsigned int" changes, some ints changed to bools
  • A lot of work on code generation and wrappers:
    • Codegen now also outputs soloud_codegen.py with all data needed to generate wrappers
    • Python wrapper generator
    • Python API
  • Other changes that affect your code:
    • stopSound() renamed to stopAudioSource(). Audio sources also got a new stop() function that stops all instances.
    • Echo filter now has an optional low pass filter to make more "natural" echoes
    • Default post-clip scaler upped from 0.5 to 0.95
    • New songs for multimusic, changed multimusic to use voice groups
  • Regarding builds:
    • Redesigned the mechanism by which different backends are included in the build, controlled mainly through premake
    • Many new premake options
    • "nondyn" SDL build added which links to SDL directly, for special needs such as emscripten
    • sdl2 dll may work now (mutex functions were renamed from SDL to SDL2, audio API should be almost the same)
  • And, under the hood:
    • Side project - resamplerlab - to make writing new resamplers easier, with some experimental resamplers
    • Some work towards osx, linux compatibility
    • FFT code moved to its own source so it can be more easily replaced in the future
    • Changed mixer fixed point from 16.16 to 12.20
    • Various small fixes, as usual.

RELEASE_20131109

10 years ago

Core functionality is now pretty decent, even if multi-speaker or 3d positional audio is still missing.

There's also a bunch of back-ends, mixer has some filtering (and interface for more). And let's not forget filters or mixing busses.

Still plenty to do going forward, but I feel this is a pretty usable release. Assuming there's no horrible bugs hiding there somewhere.

Binaries available from http://soloud-audio.com