Если я использую OSCdef для прослушивания изменений функции, таких как:
OSCdef('listen', {
arg msg;
~trigger = msg[5]; // This value is 0 when off, 1 when on
~amp = msg[3].linexp(0.0, 1.0, 0.7, 0.8 );
~dur = msg[4].linexp(0.1, 1.0, 1.0, 0.01);
~pitch = msg[4].linlin(0.0, 1.0, 80, 800);
}, '/ctrl');
Когда срабатывает ~trigger
, переменная становится равной 1. Я хочу воспроизвести синтезатор или открыть envчтобы изменить звук.
Однако, когда срабатывает ~trigger
, он срабатывает в течение 10 секунд случайным образом, поэтому у вас будет 1,1,0,1,0,0,0,1,0,01, 01,01,01,1,01 и т. Д. В течение 10 секунд.
Я хочу знать, возможно ли поймать первую 1, сыграть событие и проигнорировать оставшиеся триггеры в течение следующих 10 секунд