BowelyzerAnalyzer{ var Synth( name, [ sendReplyFreq: controls.at("sendReplyFreq"), amplitudeAttackTime: controls.at("amplitudeAttackTime"), amplitudeReleaseTime: controls.at("amplitudeReleaseTime"), hfHainsworth: controls.at("hfhainsworth"), hfFoote: controls.at("hfFoote"), hfThreshold: controls.at("hfThreshold"), hfWaitTime: controls.at("hfWaitTime"), pitchInitFreq: controls.at("pitchInitFreq"), pitchMinFreq: controls.at("pitchMinFreq"), pitchMaxFreq: controls.at("pitchMaxFreq"), pitchExecFreq: controls.at("pitchExecFreq"), pitchMaxBinsPerOctave: controls.at("pitchMaxBinsPerOctave"), pitchMedian: controls.at("pitchMedian"), pitchAmpThreshold: controls.at("pitchAmpThreshold"), pitchPeakThreshold: controls.at("pitchPeakThreshold"), pitchDownSample: controls.at("pitchDownSample") ], analyzerGroup ); ); }); } setSynthControl{ arg name, control; synths.at(name).set(control[0], control[1]); } startAnalysisSynth{ arg name; synths.at(name).run(true); } stopAnalysisSynth{ arg name; synths.at(name).run(false); } startAllAnalysisSynths{ analyzerGroup.run(true); } stopAllAnalysisSynths{ analyzerGroup.run(false); } }