Patterns, gate and envelopes with "known" durations

Pattern Guide 08: Event Types and Parameters mentions, under “Timing control”:

\sendGate
The default behavior for releasing a note is to look in the SynthDesc for an argument called \gate. If it’s present, the event will send a node.set(\gate, 0) message to the server. If not, no release will be sent; it’s assumed that the SynthDef will release itself after a given length of time. \sendGate overrides this behavior: true means to force the release message to be sent, whether or not the argument exists, while false means to suppress the release message.

So, if the SynthDef defines a gate control input, but the envelope ignores the gate, then you can set \sendGate, false in the pattern.

If the envelope is hardcoded into the SynthDef, then, just omit gate. This situation could arise if you’re passing the envelope as an arrayed control. Then, the def structure doesn’t know whether it’s a timed or a gated envelope – hence, can’t delete gate.

hjh

1 Like