xtc/docs/decisions/0001-modular-engine-first.md

29 lines
777 B
Markdown
Raw Permalink Normal View History

2026-11-06 15:20:20 +01:00
# Decision 0001: Modular Engine First
2026-10-26 22:51:25 +01:00
**Status:** Accepted
2026-11-06 15:20:20 +01:00
---
2026-10-26 22:51:25 +01:00
## Context
The project aims to preserve energyXT's combination of a simple workflow and a
flexible modular routing model.
2026-11-06 15:20:20 +01:00
---
2026-10-26 22:51:25 +01:00
## Decision
2026-11-06 15:20:20 +01:00
Use one unified processing graph for sources, instruments, effects, mixers, and
outputs. The sequencer is a timeline/event source integrated with that graph.
The default GUI is simple and sequencer-oriented, while a graph editor exposes
routing when needed.
---
2026-10-26 22:51:25 +01:00
## Consequences
- Graph validation, scheduling, buffer allocation, and safe graph replacement
are foundational requirements.
- Initial audio graph rejects cycles.
- Graph execution plans are prepared off the audio thread.
- The UI must not create a separate routing model disconnected from the engine.