Библиотека паттернов SuperCollider: как получить ссылку на идентификаторы узлов синтезаторов?

Вопрос библиотеки паттернов: как я могу получить ссылку на Synth, созданный Pbind? Например,

Pbind( \type, myCustomSynthDef, \midinote, Pseq([60, 62, 64], inf), \dur, 0.5 ).play

вызывает у меня повторяющуюся последовательность «до-ре-ми». Если я хочу изменить какой-либо параметр модуляции на синтезаторе, который играет «re», как я могу получить nodeID этого синтезатора в переменную?


person Dan Stowell    schedule 01.09.2015    source источник


Ответы (1)


Чтобы управлять «ре» синтезатором, вы обычно добавляете некоторые дополнительные параметры в Pbind, а затем просто используете их в синтезаторе, например. добавлять

\craziness, Pseq([0, 100, 0], inf)

в свой Pdef и добавьте что-нибудь в свой SynthDef, чтобы использовать его.

Если вы действительно очень хотите узнать nodeID (блех, не приятно), то вы не используете Pattern.play. Я думаю, вы могли бы повторить шаблон вручную (например, используя .next) и вручную вызвать .play для каждого Event в этой итерации. Когда вы вызываете Event .play, он возвращает событие, содержащее идентификатор узла внутри, сохраненный в ключе id.

person Dan Stowell    schedule 01.09.2015