Hi Anne,

Do you want to scale the frequency linearly between 8000 and 13000 Hz or logarithmically?

For linear interpolation you could take your random number which is between 0, 1 and scale it using interpolateFrom:to: eg:

{| t |

t := (1 s randExp).

(t s random abs smooth: t s) interpolateFrom: 8000 to: 13000}

If you want it logarithmic you could use note numbers instead of Hz. So something like:

{| t |

t := (1 s randExp).

((t s random abs smooth: t s) interpolateFrom: 8000 hz nn to: 13000 hz nn) nn hz}

Here I'm converting from 8000 hz to the nn equivalent (which is about 120) and interpolating between that and the nn equivalent of 13000 hz. Then at the end I'm converting from nn back to hz. This would give a more "musical" distribution I think because the numbers would be more uniformly spread across the octave instead of being more perceptually up the high end, if you see what I mean.

You could then make another SoundToGlobalController for !Amp and use interpolateFrom:to: with 0.2 and 1.