AutoBach: Evolutionary Generative MIDI Sequencer
⚠️ WARNING: ALPHA QUALITY SOFTWARE
AutoBach is an evolutionary generative MIDI sequencer. A Genetic Algorithm evolves clips built from Euclidean Sequences; mutating and recombining them across generations. Music theory heuristics guide selection toward harmonic coherence and emergent patterns.
Quick Start
- Select your MIDI output device
- Press Play (Space) to loop the current best clip
- Press Start Evolving (CTRL+E) to begin automatic improvement
- Better clips automatically replace worse ones during evolution
Configuration
MIDI Configuration
- Output Port: MIDI output device (hardware synth, or virtual instrument)
- Clock Sync: Synchronizes MIDI devices to AutoBach's tempo
- Lane Mapping: Routes each of up to 4 lanes to any MIDI channel (1-16). Use the same channel to layer multiple lanes on one instrument.
Playback Control
- Play/Stop: Loop playback of current best clip
- Tempo: Tempo in beats per minute (20-960 BPM)
- Stash (CTRL+S): Save currently playing clip
- Queue (CTRL+Q): Schedule stashed clip to play next
Evolution Control
- Temperature: Mutation magnitude (higher = more exploration, lower = refinement)
- Number of Lanes: Active lanes (1-4) - each generates independent sequences
- Control Randomization: Configure randomizable control change (CC) messages
- Minimum Note Length: Quantization grid (1/1=whole to 1/64=64th note)
- Key & Scale: Per-lane root note (C1-B6) and scale (Major, Natural Minor, Harmonic Minor, Melodic Minor, Phrygian, Chromatic)
- Note Ranges: Per-lane minimum and maximum note boundaries. Constrains generated notes to a specific range. Min must be ≤ key, Max must be ≥ key.
All parameter changes marked with ↺ trigger population reset.
Keyboard Shortcuts
| Key | Action |
|---|---|
| Space | Play/Stop |
| CTRL+S | Stash clip |
| CTRL+Q | Queue clip |
| CTRL+E | Start/Stop Evolving |
| CTRL+R | Reset (clears population) |