-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathCaosBass2.sc
62 lines (38 loc) · 1.62 KB
/
CaosBass2.sc
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
// written by @mixfuckedup
// Simple hard Bass
// Part of CaosPercLib 1.1
CaosBass2 : CaosEnv {
*new {
^super.new;
}
*ar {|att=0.1,rel=0.5,note=36,trig=1,filtminf=60,filtmaxf=6200,filtime=1,rq=0.5,bandw=0.5,iphase=0.25,gate=1,amp1=1,amp2=1,pan=0,doneAction=2|
var bass,env;
bass = this.signal(note,trig,filtminf,filtmaxf,filtime,rq,bandw,iphase,amp1,amp2);
env = this.envKR(att,rel,gate,doneAction);
^Pan2.ar(bass*env,pan)
}
ar {|att=0.1,rel=0.5,note=36,trig=1,filtminf=60,filtmaxf=6200,filtime=1,rq=0.5,bandw=0.5,iphase=0.25,gate=1,amp1=1,amp2=1,pan=0,doneAction=2|
var bass,env;
bass = this.signal(note,trig,filtminf,filtmaxf,filtime,rq,bandw,iphase,amp1,amp2);
env = this.envKR(att,rel,gate,doneAction);
^Pan2.ar(bass*env,pan)
}
*robot {|att=0.1,rel=0.5,note=36,trig=1,filtminf=60,filtmaxf=6200,filtime=1,rq=0.5,bandw=0.5,iphase=0.25,amp1=1,amp2=1,t=1,tp=0,pan=1,doneAction=0|
var bass,env;
bass = this.signal(note,trig,filtminf,filtmaxf,filtime,rq,bandw,iphase,amp1,amp2);
env = this.envKR(att,rel,Impulse.kr(t,tp),doneAction);
^Pan2.ar(bass*env,pan);
}
*signal {|note,trig,filtminf,filtmaxf,filtime,rq,bandw,iphase,amp1,amp2|
var bass,filtro;
bass=LFTri.ar(note.midicps,0,amp1/2)+LFPulse.ar(note.midicps,iphase,bandw,amp2/4);
filtro=RLPF.ar(bass,Phasor.kr(Impulse.kr(trig),filtime,filtminf,filtmaxf),rq);
^filtro;
}
signal {|note,trig,filtminf,filtmaxf,filtime,rq,bandw,iphase,amp1,amp2|
var bass,filtro;
bass=LFTri.ar(note.midicps,0,amp1/2)+LFPulse.ar(note.midicps,iphase,bandw,amp2/4);
filtro=RLPF.ar(bass,Phasor.kr(Impulse.kr(trig),filtime,filtminf,filtmaxf),rq);
^filtro;
}
}