From e7379d38a28d965aea809b9fe41834c62d237543 Mon Sep 17 00:00:00 2001 From: MelekTaus Date: Sat, 10 Oct 2026 16:06:19 +0200 Subject: [PATCH] Describe the Envelope node as a device with its curve (#388) - Instruments: a paragraph on the device under Envelopes. - Architecture: EnvelopePanel, EnvelopeFace and envelopeView. - Development: 1963 checks. Co-Authored-By: Claude Opus 5.5 --- Architecture.md | 4 +++- Development.md | 2 +- Instruments.md | 16 ++++++++++++++++ 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/Architecture.md b/Architecture.md index db58510..f010e09 100644 --- a/Architecture.md +++ b/Architecture.md @@ -432,7 +432,9 @@ src/editor/soundfx/ SoundFxEditor (#311: the graph, a sound to try it on, Pla the Gain as an orange plate with one knob, `drawPlate` shared with the Compressor), ChipPanel + ChipFace + chipView (#386: the Chip of an instrument as a device, its wave and its pitch over a note worked out apart from the drawing, the - Compressor's `Lever` for "follow note"), nodeParamDrag (a knob's drag as one undo + Compressor's `Lever` for "follow note"), EnvelopePanel + EnvelopeFace + envelopeView + (#388: the Envelope as a device, its curve over a note with squeezed time worked + out apart from the drawing), nodeParamDrag (a knob's drag as one undo step, for the tab and the node), nodeTabs (which nodes open a tab of their own) src/editor/instrument/ InstrumentEditor (#331: the graph over the keys, Preset, Randomize, Mutate, Audition), PianoKeyboard + keys (the keys drawn, played by the pointer and the computer keyboard) diff --git a/Development.md b/Development.md index 8898762..f8b7dfe 100644 --- a/Development.md +++ b/Development.md @@ -19,7 +19,7 @@ php tests/php/accounts.test.php # the API's accoun php tests/php/snapshots.test.php # the snapshot store (#231), the same way php tests/php/releases.test.php # the release store (#266), the same way php tests/php/files.test.php # uploaded files in a folder per account (#344), the same way -node tools/seed-e2e.mjs && node tools/e2e.mjs # 1962 editor checks, screenshots in /tmp/gm-e2e-*.png +node tools/seed-e2e.mjs && node tools/e2e.mjs # 1963 editor checks, screenshots in /tmp/gm-e2e-*.png GM_STEPS=20 node tools/e2e.mjs # or 1-12, or 6,20 — a subset while working on one step ./e2e.sh start [GM_STEPS] # the same run detached, see below ./e2e.sh status # live progress, or the last run's result diff --git a/Instruments.md b/Instruments.md index 8fcf43e..c1ef583 100644 --- a/Instruments.md +++ b/Instruments.md @@ -153,6 +153,22 @@ sound as it is. at 0.65 s and 0.0005 at 0.8 s, released mid-attack at 0.05 s it fell from 0.5 to 0.05 at 0.15 s. A Gain moved from 0.25 to 1 by that curve was 0.5 halfway up. Live, a looped note of 0.2 s through an Envelope with a release of 1 s was gone 1.32 s after it started, read every 150 ms. +- **The node is a device** (#388), 520x280, a plate in pale sea green. The inputs are on the left, + `out` and `value` on the right, and everything is set right in the graph: + - a dark screen, **Level over a note**, draws the curve in amber: a letter above each stage + (A, D, S, R), its time below it, and the sustain in percent above its line. The time is + squeezed so a short attack still shows beside a long release: each stage is as wide as the + root of its seconds, the hold a fixed fifth. With *Sustain* 0 there is no hold and no release, + and the screen says *Note ends*. While a link takes `value`, the bezel says what it moves + between (`VALUE 400 TO 3500`); + - a **chrome knob** for *Attack*, *Decay*, *Sustain* and *Release*. A drag is one undo step, a + double-click goes back to the default, the wheel zooms the graph. The times give their first + second most of the turn (5 ms an eighth of the way, 1 s not quite half); + - **From** and **To** as fields, typed in or scrubbed sideways, since they have no range a knob + could turn through. + + The decay at *Sustain* 1 and From/To while nothing takes `value` are faded; a connected number is + greyed and can not be changed. The screen is drawn from the settings, not listened to. ## Chips