in this situation, i use a "slow" metro, trigering a random with the correct 
scale, and filter the value with a line3 object
(the time of the line is the same than the metro time)
change "smoothness" with the metro tempo.

cyrille

Le 22/08/2010 21:17, Matteo Sisti Sette a écrit :
Hi,

In my patches (especially in visual ones) I often need some value to
randomly "oscillate", or change smoothly, between two extremes, at
regular intervals (e.g. change every frame).

For this purpose I often use filtered noise: [random] followed by a
filter of the kind
y[n]=a*y[n-1]+(1-a)*x[n]
with 0<a<1

This is fine when I don't need to have a very precise control over the
range and especially when it doesn't have to be controlled dinamically,
so I just adjust the "smoothness" and compensate the gain by trial and
error.
But when I need to easily control the minimum and maximum and have a
parameter that controls "smoothness" in a natural way, I am not very
satisfied with this approach.

Another technique I use is to have a random increment (which can be
positive or negative) added to the current value; then I can force it to
"bounce" when it reaches either extreme. Same as above: it works but is
often unsatisfying.


What do you usually use in these situations? I'd prefer a roughly
uniform distribution of the final result over a gaussian one, or at
least one that would have a minimum and a maximum without clipping (the
problem with a gaussian is that you either get a peak in probability of
the extreme values, or in order to avoid them, you get very low density
for any value near them)....

I know this is not a well-defined problem, that there are hundreds of
answers with advantages and disadvantages depending on the application;
but I guess many of you have often needed something similar and I'd like
to hear what are your favourite solutions.


thanks
m.

_______________________________________________
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management ->
http://lists.puredata.info/listinfo/pd-list


_______________________________________________
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list

Reply via email to