phase information removal.
This commit is contained in:
parent
a869f38a76
commit
dd32143bf8
45 changed files with 325 additions and 330 deletions
26
docs/IDEA.md
26
docs/IDEA.md
|
|
@ -598,9 +598,9 @@ Sanitizers and diagnostic logging should not be enabled in production real-time
|
|||
|
||||
## 14. Development roadmap and acceptance criteria
|
||||
|
||||
Implement phases in order. Do not jump ahead merely because a later feature is exciting.
|
||||
Implement these milestones in order. Do not jump ahead merely because a later feature is exciting.
|
||||
|
||||
### Phase 0 — Repository and design baseline
|
||||
### Repository and design baseline
|
||||
|
||||
- Inspect the repository and available toolchain.
|
||||
- Create or update architecture documentation and the Makefile.
|
||||
|
|
@ -610,7 +610,7 @@ Implement phases in order. Do not jump ahead merely because a later feature is e
|
|||
|
||||
**Acceptance:** clean build on the target Linux environment; no audio engine assumptions hidden in GUI code.
|
||||
|
||||
### Phase 1 — C core and offline processing
|
||||
### C core and offline processing
|
||||
|
||||
- Create the C library/API.
|
||||
- Define node, port, connection, and graph data structures.
|
||||
|
|
@ -621,7 +621,7 @@ Implement phases in order. Do not jump ahead merely because a later feature is e
|
|||
|
||||
**Acceptance:** automated test proves oscillator → gain → meter/output produces expected samples without hardware.
|
||||
|
||||
### Phase 2 — Real-time backend
|
||||
### Real-time backend
|
||||
|
||||
- Add the first Linux audio backend.
|
||||
- Implement start/stop, device configuration, and error handling.
|
||||
|
|
@ -631,7 +631,7 @@ Implement phases in order. Do not jump ahead merely because a later feature is e
|
|||
|
||||
**Acceptance:** stable playback for a sustained test; no known callback allocations or blocking calls; failures are reported clearly.
|
||||
|
||||
### Phase 3 — FLTK shell
|
||||
### FLTK shell
|
||||
|
||||
- Create main window, menus, transport, status area, and view switching.
|
||||
- Call the C API through the public header.
|
||||
|
|
@ -640,7 +640,7 @@ Implement phases in order. Do not jump ahead merely because a later feature is e
|
|||
|
||||
**Acceptance:** GUI can start/stop the engine, report backend errors, and close without leaks or hangs.
|
||||
|
||||
### Phase 4 — Modular graph editor
|
||||
### Modular graph editor
|
||||
|
||||
- Draw nodes and ports.
|
||||
- Add/select/move nodes.
|
||||
|
|
@ -650,7 +650,7 @@ Implement phases in order. Do not jump ahead merely because a later feature is e
|
|||
|
||||
**Acceptance:** graph shown by the GUI matches the graph used by the engine; invalid connections are rejected without corrupting active playback.
|
||||
|
||||
### Phase 5 — Project and sequencer foundation
|
||||
### Project and sequencer foundation
|
||||
|
||||
- Add project persistence and stable IDs.
|
||||
- Add tracks and clip objects.
|
||||
|
|
@ -659,7 +659,7 @@ Implement phases in order. Do not jump ahead merely because a later feature is e
|
|||
|
||||
**Acceptance:** save/load a project with clips and reproduce the same arrangement.
|
||||
|
||||
### Phase 6 — Audio clips and recording
|
||||
### Audio clips and recording
|
||||
|
||||
- Add audio file import and clip playback.
|
||||
- Add recording through a safe producer/consumer buffer path.
|
||||
|
|
@ -668,7 +668,7 @@ Implement phases in order. Do not jump ahead merely because a later feature is e
|
|||
|
||||
**Acceptance:** record, save, reopen, and play a basic audio project without callback file I/O.
|
||||
|
||||
### Phase 7 — MIDI and a simple instrument
|
||||
### MIDI and a simple instrument
|
||||
|
||||
- Add MIDI input and clip events.
|
||||
- Add a basic internal synthesizer or test instrument.
|
||||
|
|
@ -677,7 +677,7 @@ Implement phases in order. Do not jump ahead merely because a later feature is e
|
|||
|
||||
**Acceptance:** record or draw MIDI notes, play them in time, save the project, and reopen it.
|
||||
|
||||
### Phase 8 — Mixer, automation, and editing polish
|
||||
### Mixer, automation, and editing polish
|
||||
|
||||
- Add mixer channels, gain/pan, meters, mute/solo.
|
||||
- Add automation lanes and interpolation.
|
||||
|
|
@ -686,7 +686,7 @@ Implement phases in order. Do not jump ahead merely because a later feature is e
|
|||
|
||||
**Acceptance:** basic composition and mixing can be completed without editing project files manually.
|
||||
|
||||
### Phase 9 — Extensibility and release preparation
|
||||
### Extensibility and release preparation
|
||||
|
||||
- Define and document the native node/instrument/effect API.
|
||||
- Evaluate external plugin hosting only after core lifecycle handling is robust.
|
||||
|
|
@ -699,7 +699,7 @@ Implement phases in order. Do not jump ahead merely because a later feature is e
|
|||
|
||||
## 15. Initial implementation task for the agent
|
||||
|
||||
Start with **Phase 0 only**.
|
||||
Start with the **repository and design baseline** only.
|
||||
|
||||
1. Inspect the current repository and report its state.
|
||||
2. Identify the available C/C++ compilers, FLTK version, audio backend development packages, `pkg-config`, and test tools.
|
||||
|
|
@ -710,7 +710,7 @@ Start with **Phase 0 only**.
|
|||
7. Build it and run its tests.
|
||||
8. Report exact commands, results, assumptions, and any missing dependencies.
|
||||
|
||||
After Phase 0 is reviewed, continue with Phase 1. Keep each phase independently buildable and testable.
|
||||
After the baseline is reviewed, continue with the C core and offline processing. Keep each milestone independently buildable and testable.
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue