I understand that poly~ expects list messages (eg ‘note 1’) in order to be able to do voice management. I’d like to trigger voices using a signal instead, to keep timing tight. In this case i’m talking about a simple drum synthesiser, which only needs a gate signal (0 or 1) to trigger a sound. Is there any way to use the voice management of poly~ but trigger its voices with audio signals instead of messages?
When you create a new poly~ voice, it will process sounds by chunks of samples (vectors). A poly~ voice cannot be instantiated and killed at audio rate, that wouldn’t really make sense. What you can do is ask for the poly~ voice to be created before the next evaluation of the audio net (the next vector signal) begins.
To do that use Scheduler in Audio Interrupt (in DSP Status). Then try and reduce your audio vector size, to see how small you can get it.
He was talking about triggering voices, not creating voices:
I would simply place a gate~ or sah~ in the input and have your own voice allocation based on that. I guess it should work. To make a voice busy would recquire a scheduler message, but you would open the gate for the next voice already and then it should play immediately as soon your signal is getting in (dependent on how you want to do it…) You just have to make sure that only one voice will receive the signal, all other gate~s have to be closed…