File: DetectIndex.schelp

package info (click to toggle)
supercollider 1%3A3.10.0%2Brepack-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 45,496 kB
  • sloc: cpp: 283,513; lisp: 74,040; ansic: 72,252; sh: 23,016; python: 7,175; makefile: 1,087; perl: 766; java: 677; yacc: 314; lex: 175; ruby: 136; objc: 65; xml: 15
file content (42 lines) | stat: -rw-r--r-- 691 bytes parent folder | download | duplicates (6)
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
class:: DetectIndex
summary:: Search a buffer for a value
categories:: UGens>Buffer

description::
Search a buffer for a value.

classmethods::
method:: ar, kr

argument:: bufnum
index of the buffer
argument:: in
the input signal.
returns::
index

examples::
code::
(
var max = 300;
t = Array.series(max, 0, 1).curdle(0.06).scramble.flat;
b = Buffer(s, t.size, 1);

// alloc and set the values
s.listSendMsg( b.allocMsg( b.setnMsg(0, t) ) );


{
	var index, in, out, f0, fdiff;
	var bufnum = b;
	var input;
	input = MouseX.kr(0, max).round(1); // round to precision
	index = DetectIndex.kr(bufnum, input);
	index.poll;
	SinOsc.ar(index.linexp(0, max, 200, 700)) * 0.1
}.play;
)

b.free;
::