1CLASS:: MeanTriggered
2summary:: Mean of recent values, triggered
3categories:: UGens>Filters
4
5DESCRIPTION::
6Calculates the mean of the most recent length values, but only paying attention to values input while the trigger is greater than zero. One application of this is to calculate a running mean of values coming from FFT analysis.
7
8While trig<=0, the last-measured mean is held constant.
9
10The length argument is set at initialisation, and cannot be modulated. The length is directly reflected in the amount of real-time memory taken by this UGen, so please think carefully before using large values of length. Values in the low single- or double-figures are expected.
11
12
13EXAMPLES::
14
15code::
16s.boot;
17// Simple polling of mean values - you could do this without a UGen!
18x = {|val=1, t_trig=0| MeanTriggered.kr(val, t_trig, 3).poll(t_trig, "Mean of recent 3 values"); }.play;
19x.set(\val, 10.rand.postln, \t_trig, 1); // Execute this repeatedly
20
21x.free;
22
23// Using it as an audio filter - compare the sounds of these:
24x = {WhiteNoise.ar(0.1)}.play;
25x.free;
26x = {MeanTriggered.ar(WhiteNoise.ar(0.1), 1, 3)}.play; // Note that ".sum" would be more efficient here...
27x.free;
28x = {MeanTriggered.ar(WhiteNoise.ar(0.1), 1, 11)}.play; // Note that ".sum" would be more efficient here...
29x.free;
30::
31
32