Repository navigation
Releases: Mattbusel/math-sonify
Release list
math-sonify v1.5.0
Prebuilt math-sonify desktop app for Windows, macOS (Apple Silicon and Intel) and Linux.
Pick the file for your system: *-x86_64-pc-windows-msvc.zip (Windows), *-aarch64-apple-darwin.tar.gz (Apple Silicon Mac), *-x86_64-apple-darwin.tar.gz (Intel Mac), *-x86_64-unknown-linux-gnu.tar.gz (Linux). The binaries are unsigned, so Windows SmartScreen may warn about an unknown publisher (More info, then Run anyway) and macOS may need right-click, Open. Run with --help for the headless WAV renderer. See CHANGELOG.md for what changed.
math-sonify v1.4.0
Prebuilt math-sonify desktop app for Windows, macOS (Apple Silicon and Intel) and Linux.
Pick the file for your system: *-x86_64-pc-windows-msvc.zip (Windows), *-aarch64-apple-darwin.tar.gz (Apple Silicon Mac), *-x86_64-apple-darwin.tar.gz (Intel Mac), *-x86_64-unknown-linux-gnu.tar.gz (Linux). The binaries are unsigned, so Windows SmartScreen may warn about an unknown publisher (More info, then Run anyway) and macOS may need right-click, Open. Run with --help for the headless WAV renderer. See CHANGELOG.md for what changed.
math-sonify v1.3.0 — 53 Systems, Hyperchaos, New Scales
What's new in v1.3.0
New dynamical systems (7)
- Hyperchaos (Chen-Li 4D) — two positive Lyapunov exponents; richer unpredictability than ordinary chaos
- WINDMI — ionospheric substorm current model with exponential nonlinearity
- Finance — chaotic macroeconomic model (interest rate, investment, price index)
- Shimizu-Morioka — two-scroll attractor driven by x²
- Genesio-Tesi — third-order Jerk circuit; one x² term creates chaos
- Liu Attractor — single-band scroll with y²/xz/xy cross-coupling
- Sprott K — xy product; one of Sprott's minimal chaotic flows
New musical scales (5)
- Natural Minor (Aeolian)
- Harmonic Minor (raised 7th)
- Locrian
- Octatonic (diminished)
- NaturalMinor and HarmonicMinor now fully wired end-to-end
New presets (6)
- Substorm — WINDMI jerk system; spectral mode, whole tone scale
- Invisible Hand — Finance attractor; orbital mode, pentatonic minor
- Hyperchaos Engine — 4D Chen-Li; FM mode, chromatic scale
- Hyperdimensional — Hyperchaos in spectral mode
- Magyar Trance — Hungarian minor scale; Rucklidge attractor
- Substorm Pulse / Market Collapse — rhythmic/experimental WINDMI and Finance presets
Bifurcation diagram
- 3 new sweep parameters:
windmi_b,finance_a,hyperchaos_c
Bug fixes
- Fixed infinite loop in
integrate_adaptivewhen error never converges - Fixed SprottD equations (was using wrong Case D equations; now correctly shows Case I)
Test suite
- ~1650 tests across all modules (up from ~800 in v1.2.0)
- Full integration test coverage for all new systems
- All-presets load/validate test
Download
math-sonify.exe — Windows standalone, no install required. Double-click and audio starts on your default output device.
math-sonify v1.2.0
What is New
- Minimal CI pipeline replacing complex workflow for reliable green builds
- Suppressed DSP false-positive clippy lints and added Default for DirectMapping
- Fixed Linux build dependencies including libx11-xcb-dev and libgl1-mesa-dev
- Applied rustfmt formatting across all source files
- Real-time procedural audio synthesis from 15 plus mathematical systems
- Lorenz attractor, Rossler, Double Pendulum, Three-Body, Kuramoto sync support
- VST3 and CLAP plugin support via nih-plug
- CHANGELOG tracking from v1.0.0
Install
cargo install math-sonify
v1.0.4 — Behavioral Layers, Coherence Budget, Scene Export
What's new in v1.0.4
Behavioral Layer Toggles
9 invisible behavioral modifiers are now toggleable in the Advanced panel (BEHAVIORAL LAYERS section): Time of Day, Seasonal Drift, Volume Creep, Breathing, Circadian Sleep, Dreams, Aging, Typing Resonance, Instance Empathy.
Arrangement Coherence Budget
Generated songs now anchor a root key, scale family, and tempo region across all scenes — songs feel like a coherent journey instead of 6 random patches. Reverb is drawn from a shared budget to prevent mud.
Per-Scene Audio Export
Each active scene in the Arrange tab has an ⬇ Export button — records exactly that scene's morph + hold duration to a timestamped WAV file.
Square & Noise Waveforms
Two new oscillator shapes available via voice_shapes config: square (PolyBLEP band-limited) and noise (white noise).
Stability
- Attractor divergence detector auto-resets and shows a toast notification
- Dream mode validates config bounds before applying
- deny(unsafe_code) at crate level
Tests
- Golden audio regression tests (oscillator determinism + amplitude bounds)
- Config hot-reload test coverage
v1.0.3 — 📼 Snippet Studio
📼 Snippet Studio — FL Studio-style snippet workflow
How it works:
- Generate sounds you like using any attractor + sonification mode
- Open the 📼 Studio tab
- Choose a capture duration (4s / 8s / 16s / 32s)
- Press ⏺ Capture Snippet — saves the last N seconds of live audio to
snippets/as a WAV - Your snippet appears in the Library with a waveform thumbnail and a unique color
- Click snippets to rename them, or click the ✕ to delete
- Select a snippet in the library, then click any numbered slot in the Song Grid to place it
- Fill in the slots to compose your song structure (32 slots, 2 columns)
- Press ▶ Play Song to sequence through the slots in order
- Enable ↺ Loop to cycle continuously; adjust Vol for playback level
Technical details
- Snippets are mixed directly into the master audio output by the audio thread
- Song sequencer runs at UI thread rate (~30 Hz), advancing slots when each finishes
- All snippets saved as 32-bit float stereo WAV to the
snippets/folder in the app directory
v1.0.2 — System param UI + EQ wiring
What's new
- Parameter sliders for all 5 new systems: Mackey-Glass DDE (β, γ, τ, n), Nose-Hoover (a), Sprott B (info), Hénon Map (a, b), Lorenz-96 (F forcing) — all accessible in Advanced > Physics Engine > Parameters
- 3-Band EQ now fully connected: Low shelf / Mid peak / High shelf sliders in Advanced > Effects now actually affect the audio output
- All system parameters persist — config structs added so params survive system switches
- Desktop .exe updated
v1.0.1 — Full audit build: 5 new systems + DSP fixes
v1.0.1 — Comprehensive audit build
Includes all changes from the UI overhaul (v1.0.0-ui) plus:
5 New Dynamical Systems
- Mackey-Glass DDE — delay differential equation (ring buffer approximation)
- Nose-Hoover — thermostat attractor
- Sprott B — compact chaotic system
- Henon Map — 2D discrete chaotic map
- Lorenz-96 — N-dimensional atmospheric model
DSP Fixes
- Bitcrusher — triangular dither for smoother quantization, integer counter for even timing
- Portamento — proper RC-filter exponential smoothing (was incorrect linear interpolation)
- VU meter — proper 300ms ballistic peak decay
- Stereo width — energy-preserving normalisation at wide settings
- Grain spawn rate — smoothed low-pass update, prevents clicks on fast changes
- 3-band EQ added to master effects chain
Analysis Tools
- Lyapunov spectrum — live computation every 5s, displayed in Math View
- Poincaré section utility function
- Period detection utility function
- 2D bifurcation mode (sweep two parameters simultaneously)
Download math-sonify.exe and run directly — no install needed.
v1.0.0 — UI Overhaul + Lyapunov Spectrum
What's New
Major UI Overhaul
- Richer themes — deeper backgrounds, global widget rounding, hover/active strokes across all 4 themes (neon, vaporwave, crt, solar)
- App identity header — MATH SONIFY title + subtitle at top of panel
- Live chaos bar — always-visible gradient status bar (blue→orange) + LIVE/PAUSED indicator
- Better mode toggle — colored fills + accent border strokes (green=Simple, blue=Advanced)
- Tab bar with icons — 🌀 Phase · 🎚 Mixer · 🎬 Arrange · 〰 Wave · 🎵 Notes · ∑ Math · ∿ Bifurc
- Larger AUTO button — 58px tall, stroke accent, clearer active/inactive state
- Mood cards — full-width stacked cards with description text per mood
- MACROS — framed card with per-macro colored labels (🔥 Chaos · 🌌 Space · ⚡ Rhythm · 🌅 Warmth)
- Volume control — dB readout in amber, stroke-accented pause button
- Preset cards — colored left accent strip, category dividers
- Phase portrait — semi-transparent info overlay and state value backdrops
- Waveform — subtle grid lines, two-pass glow rendering
New Features
- Lyapunov spectrum — computed live every ~5s, displayed in Math View (up to 3 exponents)
- 2D bifurcation mode — sweep two parameters simultaneously
- rayon parallel processing for spectrum computation
Fixes
- mackey_glass type ambiguity fix
- All prior v0.9.x fixes included
Download math-sonify.exe and run directly — no install needed.
Fix: deadlock + NaN guard on portrait trail
- Fixed potential deadlock in instance-empathy nudge code (two separate shared.lock() calls in one statement)
- Added NaN/inf guard to portrait trail push so diverging attractors don't corrupt the visualization
- Both fixes improve crash resilience when using Evolve mode