Audio Workbench v0.9.3: Microtonal Engine, Tonnetz Harmonic Lattice, AutoArp, and Pachinko
Audio Workbench version 0.9.3 adds five major systems to the modular environment: an arbitrary-temperament Microtonal Tuning Engine, a Tonnetz Harmonic Lattice, an algorithmic AutoArp device with chord-boundary synchronization, a 2D rigid-body Pachinko sequencer, and a SoundFont (SF2) multi-sample instrument player with lock-free sample streaming. Below is the technical specification and functional breakdown of the changes in this build.
Highlights
Universal Microtonal Engine: Supports arbitrary equal divisions of the octave (including 19-EDO, 22-EDO, 31-EDO, and 53-EDO) and non-octave temperaments including Bohlen-Pierce (13-EDT) and Wendy Carlos scales.
Microtonal Adapter Device: Real-time pitch remapping for standard MIDI inputs using Nearest Snap, Linear Ladder, and Harmonic Fold mapping algorithms.
Tonnetz Device: A 2D harmonic lattice for chord exploration, parsimonious chording, and a 32-step chord path sequencer with undo and redo support.
AutoArp Device: Algorithmic arpeggiation with 6 traversal modes and selectable chord-boundary synchronization (Instant, Beat, or Cycle) to maintain metrical alignment across chord transitions.
Pachinko Sequencer: 2D rigid-body physics simulation mapping particle collisions and collection bins to dual note streams, kinetic velocities, and scale quantization.
SoundFont Instrument Device: Multi-sample SF2 playback using MeltySynth, featuring lock-free preset loading, automated MIDI channel routing, pitch bend RPN 0 support, and microtonal tracking.
Universal Microtonal and Non-Octave Engine
Arbitrary Equal Divisions of the Octave (EDO): Calculates exact frequency and cents offsets for arbitrary divisions, including 19-EDO (meantone), 22-EDO (porcupine), 24-EDO (quarter-tone), 31-EDO (quarter-comma meantone approximation), and 53-EDO (Mercator scale / Pythagorean system).
Non-Octave Temperaments: Supports scale systems where the interval of equivalence differs from the 2:1 octave:
Bohlen-Pierce Scale (13-EDT): Divides a 3:1 frequency ratio (tritave) into 13 logarithmically equal steps, producing consonant harmonic relationships aligned with odd integer harmonics (3 : 5 : 7).
Wendy Carlos Scales: Includes presets for Carlos Alpha, Beta , and Gamma.
Microtonal Adapter Device: Operates between MIDI sources, sequencers, or the Piano Roll and destination synthesizers. Remaps incoming note numbers using selectable algorithms:
NearestSnap: Quantizes standard note pitches to the nearest available scale frequency.
LinearLadder: Maps consecutive semitones directly to sequential microtonal scale degree indices.
HarmonicFold: Folds notes outside the scale range back into the base period using logarithmic modulo operations.
Per-note pitch control: Pitch data is transferred as explicit floating-point base frequencies inside note events, avoiding standard 7-bit MIDI note range limits and maintaining exact pitch accuracy across scale degrees above 127.
System-Wide Microtonal Support: The Comb Filter converts filter frequencies to continuous MIDI values to track microtonal input. The Piano Roll renders pitch rows corresponding to the active temperament and supports live note auditioning.
Tonnetz Harmonic Lattice Device
The Tonnetz Device implements Leonhard Euler's tone network as an interactive 2D surface. Musical intervals are mapped along directional axes on a triangular and hexagonal grid, representing chords as geometric triangles.
Multi-Tuning Lattice Support: Renders geometric lattices for 12-EDO, 19-EDO, 22-EDO, 24-EDO, 31-EDO, 53-EDO, Bohlen-Pierce 13-EDT, and Wendy Carlos Alpha, Beta, and Gamma.
Voice-Leading Transformations: Computes parsimonious transitions between triad structures using standard Neo-Riemannian operations. This keeps the chord phrasing within the vicinity of the octave played.
Chord Path Sequencer: Stores up to 32 chord steps selected directly on the lattice. Includes forward, loop, reverse, and single-step playback controls. All chord assignments and sequence modifications are recorded in the central undo/redo history stack.
AutoArp Algorithmic Arpeggiator
The AutoArp device sequences held chords into melodic patterns with deterministic note traversal and configurable boundary synchronization.
Traversal Algorithms:
AsPlayed: Preserves the chronological order of received note-on events.
Up / Down: Sorts input notes by ascending or descending pitch.
UpDown: Cycles upward then downward without repeating top and bottom boundary notes.
Converge: Alternates from outer extremes inward (lowest, highest, second lowest, second highest).
Random: Evaluates note selection pseudorandomly across the buffer.
Octave Range Modes: Configurable register multipliers supporting Up, Down, PingPong, and Interleaved (alternates consecutive steps across octave registers).
Chord Switch Synchronization:
Instant: Resets the sequence immediately upon receiving a new chord input.
Beat: Postpones chord changes until the subsequent downbeat or clock interval.
Cycle: Continues the existing arpeggio sequence until the full octave and note pattern completes before applying new chord notes.
CV Pitch Modulation: Modulates running sequences via an external CV pitch input without requiring new note-on triggers.
Pachinko 2D Physics Sequencer
The Pachinko device uses a 2D rigid-body physics simulation to generate non-deterministic trigger and pitch sequences from falling particles colliding with pin arrays and catch bins.
Dual Note Stream Outputs: Separates events into two discrete output channels:
Pins Stream: Generates note events when particles collide with pin obstacles.
Bins Stream: Generates note events when particles enter collection bins at the bottom of the enclosure.
Spatial Pitch Modes:
TopToBottom: Maps vertical impact coordinate directly to pitch height.
BottomUp: Inverts vertical coordinate mapping.
Sideways: Maps horizontal deflection across the array to scale degrees.
Monotone: Emits a fixed root pitch with velocity scaled by kinetic momentum.
Kinetic Velocity Dynamics: Derives output note velocity directly from particle velocity and impact force.
Harmonic Quantization and Auto-Drop: Quantizes generated pitches to selected scales and chords. Particle emission can be triggered via external gate pulses or by enabling the internal timer.
SoundFont (SF2) Instrument Player
The SoundFont device integrates SF2 multi-sample soundbanks into the modular rack.
MeltySynth Playback Engine: Sample-accurate audio rendering configured for 64-sample processing blocks.
Multi-Timbral Channel Routing: Directs standard melodic presets to MIDI Channel 0 and Bank 128 percussion sets to MIDI Channel 9.
Lock-Free Command Queue: Decouples preset selection and sample loading from the real-time audio thread to prevent buffer underruns.
Microtonal and Pitch Bend Support: Implements continuous pitch bend with range control via MIDI RPN 0, tracking microtonal base frequencies and vibrato.
Audio Engine and Workflow Updates
Velocity Sensitivity Knobs: Added dedicated Vel attenuation controls to both Sub Synth and FM Synth to scale output amplitude by incoming note velocity.
Search Indexing: Added metadata aliases to the device creation menu. Users can locate Pachinko by searching "pinball", Tonnetz by searching "euler", and SoundFont by searching "sf2".
Usage Examples
Bohlen-Pierce Odd Harmonic Synthesis: Insert a Microtonal Adapter, select Bohlen-Pierce (13-EDT), and set the key mapping to the Lambda preset. Route the output to Sub Synth configured with a square waveform. Because the Bohlen-Pierce temperament divides a 3:1 frequency ratio rather than a 2:1 octave, its harmonic basis corresponds to odd integer harmonics (3, 5, 7). Square waves contain exclusively odd harmonics (1, 3, 5, 7, etc.), which causes chord intervals in this tuning to align with the spectral partials of the synthesizer.
Metrical Continuity in Arpeggiation: Connect a MIDI keyboard or Piano Roll to AutoArp and set the Chord Switch parameter to Cycle. When new chord inputs arrive mid-measure, the engine defers the new pitch set until the active traversal pattern completes its full cycle. This preserves rhythmic predictability during chord changes.
Decoupled Generative Sequencing with Pachinko: Send a clock gate into Pachinko. Quantize the Pins output to a pentatonic scale and route it to FM Synth. Route the Bins output to Sub Synth tuned to low octave registers. The physical simulation generates high-frequency melodic scatter from pin deflections while bin arrivals provide periodic root-note triggers.
