Skip to content

Commit 6d803cb

Browse files
committed
Some StkUGens documentation
1 parent 535dcf7 commit 6d803cb

File tree

3 files changed

+141
-0
lines changed

3 files changed

+141
-0
lines changed
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
TITLE:: StkFlute
2+
categories:: UGens>PhysicalModels>StkUGens
3+
related:: Classes/Stk, Classes/StkInst
4+
5+
CLASSMETHODS::
6+
7+
METHOD:: ar
8+
ARGUMENT:: freq
9+
ARGUMENT:: jetDelay
10+
ARGUMENT:: noisegain
11+
ARGUMENT:: jetRatio
12+
ARGUMENT:: mul
13+
ARGUMENT:: add
14+
15+
16+
EXAMPLES::
17+
code::
18+
( // Add SynthDef
19+
SynthDef(\helpStkFlute, {
20+
arg freq=440, jetDelay=49, noisegain=0.15, jetRatio=0.32, amp=0.2, gate=1, out=1;
21+
22+
var env = EnvGen.kr(Env.asr(0, 1, 0.1), gate, doneAction: 2);
23+
var sig = StkFlute.ar(freq, jetDelay: jetDelay, noisegain: noisegain, jetRatio: jetRatio);
24+
sig = sig * env * amp;
25+
26+
Out.ar(0, sig.dup);
27+
}).add;
28+
)
29+
30+
( // Play SynthDef
31+
Pbind(
32+
\instrument, \helpStkFlute,
33+
\degree, Pseq((0..7)),
34+
\octave, 6
35+
).play;
36+
)
37+
::
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
TITLE:: StkPluck
2+
categories:: UGens>PhysicalModels>StkUGens
3+
related:: Classes/Stk, Classes/StkInst
4+
5+
CLASSMETHODS::
6+
7+
METHOD:: ar
8+
ARGUMENT:: freq
9+
ARGUMENT:: decay
10+
ARGUMENT:: mul
11+
ARGUMENT:: add
12+
13+
14+
EXAMPLES::
15+
code::
16+
( // Add SynthDef.
17+
SynthDef(\helpStkPluck, {
18+
arg freq=440, decay=0.99, amp=0.2, gate=1, out=0;
19+
20+
var env = EnvGen.kr(Env.asr(0,1,0.1), gate, doneAction:2);
21+
var sig = StkPluck.ar(freq, decay);
22+
sig = sig * env * amp;
23+
24+
Out.ar(0, sig.dup);
25+
}).add;
26+
)
27+
28+
( // Play SynthDef
29+
Pbind(
30+
\instrument, \helpStkPluck,
31+
\degree, Pseq([0,2,4,8], 1),
32+
\dur, 1
33+
).play;
34+
)
35+
36+
( // Guitar tuning.
37+
var midinotes=[40, 45, 50, 55, 59, 64];
38+
Pbind(
39+
\instrument, \helpStkPluck,
40+
\midinote, Pseq(midinotes),
41+
\dur, 1
42+
).play;
43+
)
44+
45+
( // Guitar chords.
46+
var midinotes=[40, 45, 50, 55, 59, 64];
47+
var fretsE=[ 0, 2, 2, 1, 0, 0];
48+
var fretsA=[Rest(0), 0, 2, 2, 2, 0];
49+
Pbind(
50+
\instrument, \helpStkPluck,
51+
\midinote, midinotes + Pseq([Pn(fretsE, 8), Pn(fretsA, 8)], 2),
52+
\strum, Pseq([1, -1], inf) * Pwhite(0.0125, 0.035),
53+
\dur, Pseq([2, 2, 1, 1, 1/2, 1/2, 1/2, 1/2], inf)
54+
).play;
55+
)
56+
::
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
TITLE:: StkShakers
2+
categories:: UGens>PhysicalModels>StkUGens
3+
related:: Classes/Stk, Classes/StkInst
4+
5+
CLASSMETHODS::
6+
7+
METHOD:: ar
8+
9+
ARGUMENT:: instr
10+
An integer between 0 and 21, inclusive. Instruments can be found with link::#-directory::
11+
ARGUMENT:: energy
12+
ARGUMENT:: decay
13+
ARGUMENT:: objects
14+
ARGUMENT:: resfreq
15+
ARGUMENT:: mul
16+
ARGUMENT:: add
17+
18+
METHOD:: directory
19+
Returns a dictionary of shaker instrument numbers.
20+
RETURNS:: A link::Classes/Dictionary::
21+
code::
22+
StkShakers.directory;
23+
::
24+
25+
EXAMPLES::
26+
27+
code::
28+
(
29+
SynthDef(\helpStkShakers, {
30+
arg instr=0, energy=64, decay=64, objects=64, resfreq=64, amp=0.2, gate=1;
31+
32+
var env = EnvGen.kr(Env.asr(0, 1, 0.1), gate: gate, doneAction: 2);
33+
var sig = StkShakers.ar(instr, energy, decay, objects, resfreq);
34+
sig = sig * env * amp;
35+
36+
Out.ar(0, sig.dup);
37+
}).add;
38+
)
39+
40+
(
41+
Pbind(
42+
\instrument, \helpStkShakers,
43+
\instr, 11,
44+
\dur, Pseq([2, Rest(2), 2, Rest(2), 2]),
45+
\amp, 0.5
46+
).play;
47+
)
48+
::

0 commit comments

Comments
 (0)