[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sc-dev] new zombies on the block



On Nov 30, 2003, at 11:48 AM, Julian Rohrhuber wrote:

 when trying to release a synth within less than
 blocksize/samplerate they do not get released reliably.

Anytime a gate off message is scheduled in the same control period as the s_new, the EnvGen will never see the trigger.
possible solutions:

initialize gate to -1 < gate < 0. Then if EnvGen sees 0 on starting up it can assume that the EnvGen has been released by explicitly setting it to zero. gate must be > -1 because that is already used for the EnvGen voice stealing mode.
	pro: seems like the most minimal change.
cons: This would break existing patches that wait for a trigger, because all patches that start with 0 waiting for a trigger will go immediately into a done state. These patches would have to be changed to initialize gate < 0 and recompiled. Notationally inconvenient: would require explicitly initializing the gate argument of a SynthDef.

have a separate input for start trigger and release trigger.
cons: breaks all existing patches that use EnvGen. not as simple as a single gate. seems inelegant.


first solution seems the better. If we decide not to change it and make it a
user responsibility, there should be a check in NotePlayer for sustain time.
But again this might be problematic when there is tempo changes.
--








.