How aivandelindt/chronobent works
ChronoBent is a local audio time-and-pitch processing product: a C/C++ SDK powers an Instrument, an audio-track FX plugin, and the macOS Lab. The main user workflow is to supply audio, set pitch/time/timbre and analysis options, then play or render transformed audio; the Instrument adds sample preparation and MIDI voices, while FX can capture and replay a passage. Note Studio analyzes monophonic audio, exposes note edits, and produces corrected audio. The tree and excerpts support the SDK and plugin internals; Lab implementation details are sparsely sampled, so its internal wiring is left unspecified.
Main entry points: ChronoBentPlugin.cpp Instrument plugin · host Lab workspace · chronobent.hpp C/C++ API · ChronoBentFX.cpp FX plugin
Components 20
DSP SDK
- C/C++ API
include/chronobent/chronobent.hpp - Processor
src/processor.cpp - Vocoder DSP
src/vocoder.cpp
Instrument
- Instrument controls
plugin/resources/web/script.js - Instrument plugin
plugin/ChronoBentPlugin.cpp - Sample preparation
plugin/instrument.cpp - Voice rendering
plugin/instrument.cpp
FX
- FX controls
plugin/fx/resources/web/script.js - FX plugin
plugin/fx/ChronoBentFX.cpp - Live and capture engine
plugin/effect.cpp
Lab
- Lab workspace
host - Lab controls
host/mac_controls.hpp - WAV export
host/mac_wav_export.hpp
Note Studio
- Tuning API
include/chronobent/tuning.hpp - Pitch analysis
src/tuning.cpp - Tuning session
host/tuning_session.cpp
Other components
- Musician
- Audio source
- DAW host
- Audio output
Connections 25
- Musician → Instrument controls: sets controls
- Instrument controls → Instrument plugin: sends controls
- DAW host → Instrument plugin: hosts
- Audio source → Instrument plugin: loads sample
- Instrument plugin → Sample preparation: prepares sample
- Sample preparation → Voice rendering: publishes prepared data
- Instrument plugin → Voice rendering: starts voices
- Voice rendering → C/C++ API: renders audio
- C/C++ API → Processor: dispatches processing
- Processor → Vocoder DSP: processes frames
- Instrument plugin → Tuning session: opens Note Studio
- FX controls → FX plugin: sends controls
- DAW host → FX plugin: hosts audio
- FX plugin → Live and capture engine: processes blocks
- Live and capture engine → C/C++ API: renders audio
- FX plugin → Tuning session: opens Note Studio
- Musician → Lab workspace: explores audio
- Audio source → Lab workspace: loads audio
- Lab workspace → Lab controls: provides controls
- Lab workspace → WAV export: exports audio
- Lab workspace → C/C++ API: processes audio
- Tuning session → Tuning API: analyzes and edits
- Tuning API → Pitch analysis: dispatches analysis
- Tuning session → Audio source: accepts source audio
- C/C++ API → Audio output: returns processed audio