This file is indexed.

/usr/share/SuperCollider/HelpSource/Classes/FFTTrigger.schelp is in supercollider-common 1:3.8.0~repack-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
class:: FFTTrigger
summary:: Outputs the necessary signal for FFT chains, without doing an FFT on a signal
categories:: UGens>FFT

classmethods::
private:: categories

method:: new
argument:: buffer
a buffer to condition for FFT use
argument:: hop
the hop size for timing triggers (defaults to 0.5)
argument:: polar
a flag. If 0.0, the buffer will be prepared for complex data, if > 0.0, polar data is set up.

examples::
code::
(
s.waitForBoot({
	b = Buffer.alloc(s, 512);
});
)
// Reminder: This isn't the intended typical usage! It's OK to do this though.
(
x = {
	var mags, phases, chain, sig;
	// Create simple undulating magnitudes
	mags = {FSinOsc.kr(ExpRand(0.1, 1)).range(0, 1)}.dup(100);
	// Then give them a "rolloff" to make the sound less unpleasant
	mags = mags  * ((1, 0.99 .. 0.01).squared);
	// Let's turn the bins on and off at different rates, I'm *sure* that'll sound interesting
	mags = mags * {LFPulse.kr(2 ** IRand(-3, 5)).range(0, 1)}.dup(100);
	// Let's ignore phase for now
	phases = 0.dup(100);
	chain = FFTTrigger(b, 0.5);
	// Now we can do the packing
	chain = PackFFT(chain, 512, [mags, phases].flop.flatten, 0, 99, 1);
	sig = IFFT(chain);
	Out.ar(0, sig.dup);
}.play(s);
)
x.free;
b.free;
::