Phase 1 plus some refactoring.

This commit is contained in:
Johannes Findeisen 2026-10-26 23:20:00 +01:00
commit 8075e1b79d
17 changed files with 465 additions and 266 deletions

View file

@ -15,7 +15,7 @@ make gui
```
`all` builds the static C library and startup check. `test` runs the existing
core test and startup check. `debug` builds and tests separately in
core and offline graph tests plus the startup check. `debug` builds and tests separately in
`build/debug`. `gui` builds the existing placeholder shell; it does not produce
audio. Generated files remain under `build` and header changes trigger rebuilds.
Compiler, flags, `BUILD_DIR`, `PKG_CONFIG`, `FLTK_CONFIG`, and installation
@ -49,9 +49,8 @@ are changed by these build commands.
## Next milestone
Phase 1 must replace insertion-order gain processing with a validated,
topologically scheduled offline plan, preallocated buffers, oscillator, gain,
meter and output nodes, and deterministic routing tests. The current gain
prototype is not a real-time engine. Public project persistence declarations
also remain unimplemented. Hardware playback and interactive GUI behavior are
outside this baseline.
Phase 1 implements compiled offline plans, preallocated buffers, oscillator,
gain, meter/output nodes and routing tests; see AUDIO_ENGINE.md. Phase 2 adds
a hardware backend and safe cross-thread plan publication/retirement. Public
project persistence declarations remain unimplemented. Hardware playback and
interactive GUI behavior are not verified by the offline tests.