home/ atoms/ chuck-stk-adsr-need-trigger

ChucK STK instruments stay silent until `.noteOn()`, and an ADSR stays closed until `keyOn()`

Patching an STK instrument to dac and setting its frequency is not enough to hear it: STK instruments are silent until struck with .noteOn(velocity) (and released with .noteOff()). Likewise an ADSR envelope produces silence until keyOn() opens it — .set(a,d,s,r) only configures the contour, it does not start the note; keyOff() enters the release stage. Forgetting the trigger is a frequent cause of a correctly-patched voice making no sound.

Examples

Rhodey r => dac; 220 => r.freq; // silent — never struck Rhodey r => dac; 220 => r.freq; r.noteOn(0.8); // sounds ADSR e; e.set(...); e.keyOn(); // envelope opens

Assessment

Explain why Rhodey r => dac; 220 => r.freq; is silent and add the one call that makes it sound. Then explain what keyOn() does that .set(a,d,s,r) does not.

“STK instruments are quiet until `.noteOn(velocity)`.** `Rhodey r => dac; 220 => r.freq;` alone is silent — you must strike it: `r.noteOn(0.8)`”
context/ · L1-instruments/chuck/gotchas.md · chunk 1