«Monophonic SynthDef Sequence» by moncrey

on 14 Feb'17 17:16 in patternsequencingmonomonophonic

This was my creation as I learned how to work with PmonoArtic. Took way too long to realize "freq" and "gate" were naming conventions and I didnt need to build out additional functionality!

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
s.boot;
(
SynthDef(\bup, {
	arg out=0,freq=440,ffreq=440,famp=1,fq=1,
	    fatk = 0.01, fdec = 0.1,
	    aatk = 0.01, adec = 0.1,
	    amp=0.5,gate=1, len=0.2,lag=0.1;

	var synth,ampEnv,filtEnv;

	filtEnv = EnvGen.kr(
		       Env.adsr(fatk,fdec,releaseTime:0.05),
                       gate,
		       freq*famp,
		       ffreq);
	ampEnv = EnvGen.kr(
		       Env.adsr(aatk,adec,releaseTime:0.05),
		       gate,
                       doneAction:2);
	synth = Mix.new([
		LFSaw.ar(Lag.kr([freq*2,freq],lag),[0,pi],amp),
		LFTri.ar(Lag.kr([freq,freq*2],lag),[pi,0],amp)
	]);
	synth = Pan2.ar(synth) * ampEnv;
	synth = RLPF.ar(synth,filtEnv,fq);
	Out.ar(out,synth);
}).add;
)
TempoClock.default = TempoClock.new(180/120);
(
p=PmonoArtic(
	\bup,
	\dur,Pseq((0.25!3)++(0.125!2),inf),
	\ffreq, Pseq([1,2,3,4,5]*500,inf),
	\fq,    Pseq([2,2,1,1,1,2,1,1,0.65,0.52],inf),
	\legato, Pseq([0.3,1,0.83,1],inf),
	\degree, Pseq([0,2,4,7,9]+.t[0,4,9],inf),
	\scale, Scale.dorian,
	\octave, Pseq([1,3]+.t[0,2],inf),
	\mtranspose, Pseq((0!20)++(2!20)++(4!20)++(5!20),2)
).play;
)
raw 1106 chars (focus & ctrl+a+c to copy)
reception
comments