There should be an unmap-node-controls function
Why is there such a difference between the datastructure representing a ugen fn and the datastructure representing a ugen (SCUgen)? Seems that they should be identical except for the addition of an :args key for the SCUgen.
sc.synth currently places all synth instances into the synth-group by default, which is an Overtone specific feature that should probably be done in studio. Maybe we should have the creation of synthdefs be on overtone.sc.synth, but the live creation of them and specialization in studio? Discuss on list.
create a couple functions to append a ugen to the root of a synth, for attaching out, pan, etc...
inst and synth forms should evalute the defaults rather than expecting them to be numbers (to use equations, constant vars, etc...)
- rather than using a plain multiply for volume adjustment, we should have
a built-in helper that uses dbamp and multiply to adjust volume logarithmically,
corresponding to perception.
- use a range of 0 - 1.0, so it works automatically with GUI controls and other ugens.
have a mechanism to route sound to a preview channel for listening to something in headphones to try it out.
create a basic EQ that can be used on any track
implement a portamento helper on top of slew
view a table or tree of running synths with the ability to kill and maybe modify control params
allow for re-arranging nodes and groups using a tree/table view
figure out how best to attach meta-data to the [unary,binary]-op-ugen
Synths and Audio:
make midi->hz and friends multimethods (or use types and protocols?) so they operate immediately on numbers, but generate ugens on input proxy or ugen arguments.
add docs to Unary and Binary op ugens