On Dec 20, 2007, at 6:22 AM, ronald kuivila wrote:
That's basically it, yes. I think it would be better to keep it separate from lag, not so much for my own use since I mostly use custom event prototypes, more rather for users just picking up chucklib who will most likely use the default event prototype. Calling the key in the event "latency" might be confusing. Really, it's a scheduling correction. schedAdjust, maybe? Most users will probably not touch it. I would probably have it default to 0 in most cases, with the option of increasing it for the aforementioned case.
For #4 the release bundle should be surrounded by /error messages, in case a fixed length envelope terminates sooner than the message is sent.... wait a minute, how would this work actually? If the envelope supplied to EnvGen has a release node, the synth does not die until the gate input falls to 0. If the envelope doesn't have a release node, as far as I know the gate input has no effect. I've handled this by having a second envelope for quick release, but I would expect the default event to schedule anything on the second gate argument. Still, if you use DetectSilence to kill the synth before the gate'd envelope releases, the /error messages would be useful. You can't always assume the node will be there when the release message goes out. thisThread.sched ( time + sustain, { server.sendBundle(server.latency, #[error, -1], releaseBundle, #[error, -2]) }); For the other three, I agree it's better to give the choice to the user. hjh : H. James Harkins : jamshark70@xxxxxxxxxxxxxxxxx : http://www.dewdrop-world.net .::!:.:.......:.::........:..!.::.::...:..:...:.:.:.:..: "Come said the Muse, Sing me a song no poet has yet chanted, Sing me the universal." -- Whitman |