packages feed

hsc3-0.1: Help/UGen/Oscillator/twChoose.help.lhs

twChoose trig array weights normalize

The output is selected randomly on recieving a trigger from an
array of inputs.  The weights of this choice are determined from
the weights array.  If normalize is set to 1 the weights are
continuously normalized, which means an extra calculation overhead.
When using fixed values the normalizeSum method can be used to
normalize the values.  TWChoose is a composite of TWindex and
Select

> let twChoose t a w n = select (twindex t n w) a
>     x = mouseX KR 1 1000 Exponential 0.1
> d <- dust AR x
> let a = MCE [sinOsc AR 220 0,
>              saw AR 440,
>              pulse AR 110 0.1]
> audition (out 0 (twChoose d a (MCE [0.5, 0.35, 0.15]) 0 * 0.1))

Note: all the ugens are continously running. This may not be the
most efficient way if each input is cpu-expensive.