SBaGenX is a scriptable audio-generation toolkit for brainwave-style sessions: a command-line interface, a desktop GUI, a reusable C library (sbagenxlib), plotting/video tools, and an Android frontend built on the same engine.
- Build sessions from
.sbgsequence files or built-in programs such asdrop,sigmoid,slide, andcurve. - Design function-driven sessions with
.sbgfcurve files,solve, and reusable parameter sets. - Preview beat graphs, isochronic envelopes, and graph videos instead of flying blind.
- Reuse the same runtime through the CLI, the desktop GUI, and external frontends via
sbagenxlib. - Install the CLI and desktop GUI together from one Windows installer or one Ubuntu package.
- Download
sbagenx-windows-setup.exefrom the releases page. - Open a terminal.
- Run:
sbagenx -h
sbagenx -m river1.ogg -p drop 00ds+ mix/99
sbagenx -P -p sigmoid t30,30,0 00ls+:l=0.2:h=0sudo apt install ./sbagenx_*_amd64.deb
sbagenx -h
sbagenx -m river1.ogg -p drop 00ds+ mix/99sbagenx -p curve examples/basics/curve-sigmoid-like.sbgf 00ls:l=0.2:h=0- Stable: use the latest non-
alpharelease from the releases page if you want the safest install path. - Alpha: use
alphareleases if you want to test new engine, GUI, and packaging changes early. Alpha builds are for testers and early adopters, not for conservative installs.
- Core CLI, desktop GUI, and shared library: this repo
- Android frontend: SBaGenX-Android
- Website and docs: sbagenx.com
- GUI reference:
docs/GUI_REFERENCE.md - Core reference manual:
docs/SBAGENX.txt - Library API:
docs/SBAGENXLIB_API.md - Library quickstart:
docs/SBAGENXLIB_QUICKSTART.md - Examples:
examples/
sbagenx: the CLI frontend for authoring, playback, plotting, and exportgui/: the desktop GUI frontendsbagenxlib: the shared engine used by the CLI, GUI, and external integrations- build scripts for Windows, Ubuntu/Linux, macOS, and Android codec inputs
- examples, plots, and documentation intended to be usable immediately after install
- function-driven built-in programs, including
sigmoidandcurve - reusable
.sbgfcurve files withsolve customNN,spinNN, andnoiseNNfamiliesnoisepulseandnoisebeatgenerated-noise tone modes- expanded mix processing including
mixpulse,mixbeat, andmixam - one-cycle plot output, beat graphs, and graph-video export
- reusable
sbagenxlibheaders, shared/static libraries, and pkg-config metadata
- Unified Linux build:
bash linux-build-all.sh - Unified Windows build:
bash windows-build-all.sh - Docker build workflow: see
Dockerfileandcompose.yml
For detailed usage and build notes, use:
See CONTRIBUTING.md before opening a pull request.
Short version:
- use Discussions for open-ended ideas and presets
- use Issues for concrete bugs, documentation gaps, and feature proposals
- land behavior changes in
sbagenxlibfirst when they affect multiple frontends - include docs, tests, and examples where the change materially alters behavior
See COPYING.txt, NOTICE.txt, and the licenses/ directory.
SBaGenX continues the SBaGen lineage:
- original SBaGen by Jim Peters
- SBaGen+ fork by Ruan Klein
- current continuation and expansion in SBaGenX
The project is now explicitly library-first: sbagenxlib is the shared engine, while the CLI and GUI are frontends around it.

