daniel
1fd38bbd57
Bound the automation hold to the window the model has not caught up on, and make that authority model stated, enforced and tested
2026-08-02 17:16:02 -04:00
daniel
de5654fb6f
Service both VST3 parameter channels, and promote pitch key-track and Trigger length so all 44 ids issue
...
The SDK's own single-component sample drains inputParameterChanges in
process() and implements setParamNormalized; automation was reading the
GUI channel alone. The audio thread now patches a block it solely owns.
2026-08-02 16:22:17 -04:00
daniel
bfaa0f2614
Report the instrument's automatable parameters to the host under a frozen id table, in signal-flow order, with real units
...
42 of 44 ids issued: pitch key-track and Trigger length stay reserved
pending a live path. Master gain reclassified Live — it never reloaded.
2026-08-02 15:14:16 -04:00
daniel
5c6525fb91
Decouple the instrument reload from VST3 activation, and make the master meter's accumulate exact
2026-08-02 14:02:26 -04:00
daniel
0627398bbb
Reflow the deck into two categorical rows plus a double-height MASTER bus deck
...
Row membership is now the group's own property, not a wrap outcome. FILTER's Band|Notch moves to its caption slack, which is what makes the sound row fit. MASTER gains the limiter toggle, the output meter and the GR lamp.
2026-08-02 13:52:33 -04:00
daniel
a7c3c7a828
Loop: an explicit enable, four named marks with grabbable caps, and the crossfade painted where it is actually heard
...
hasLoop becomes user-owned with the gestures as shortcuts onto it; no format change. START uses overlay/trace, not accent/primary, which is the waveform's own fill.
2026-08-02 13:52:32 -04:00
daniel
3baf4ee50b
Γ-W1-T2: the master bus — a true-peak limiter whose ceiling is a theorem, the meter's published half, and the plugin's first PDC report
2026-08-02 13:50:13 -04:00
daniel
f39fb1b145
Γ-W1-T3: staged contour traces draw the curve their exponent defines
...
New pure curve_tessellate joins the overlay's node vertices through curveMap,
one sample per pixel column; the knot no longer floats off its own trace.
2026-08-02 13:47:19 -04:00
daniel
19aeb92775
Bake window derives itself: %-knob fold, declick pad, Gate held to exhaustion, preview velocity; Hold is the one knob a loop needs
2026-08-01 20:26:04 -04:00
daniel
60308a3655
Ξ-W2-T1: the resample bake chain — instrument renders, extension banks, one click re-points and resets
2026-08-01 16:26:28 -04:00
daniel
2e09776342
fix: stroke arcs and splines analytically — opaque core, angle-independent weight
...
LICE_Arc never reaches opacity and ThickFLine's width is minor-axis. One
distance-to-polyline coverage mask, blended once, replaces both.
2026-08-01 13:18:21 -04:00
daniel
7f74b11dce
feat: legible ReaSampler 9000 editor — bigger knobs, ms time constants, per-ring double-click reset, and an antialiased draw pass
2026-08-01 09:16:30 -04:00
daniel
e44bd42dd9
instrument: spline EGs — hard points on the one shared spline, a drawn contour per envelope beside its staged state, payload v13
2026-07-31 21:33:59 -04:00
daniel
2fa1405b06
instrument: fix AHD node-tracking/tie-break/live-latch defects and close staged-envelope-curve test gaps
2026-07-31 09:52:17 -04:00
daniel
67215509cb
feat: run the per-voice filter between the pitch and amp stages, with its own deck
...
Params ride the one parameter set; payload v8 -> v9, off by default.
Deck composition moves to a pure deck_groups module in pitch -> filter -> amp order.
2026-07-30 15:26:14 -04:00
daniel
d04045be69
build: split the 1423-line root CMakeLists into per-directory files with shared target helpers
2026-07-30 12:19:18 -04:00