// Kick Drum
({
var sin, pw;
sin= SinOsc.ar(freq: Line.kr(70,40,0.1,doneAction:2),
add: 0, mul: 0.3);
pw= Pulse.ar(freq: 40, add: 0,
mul: EnvGen.ar(Env.perc(0,0.07,0.2)));
Mix.new([sin,pw]);
}.play)
SynthDef(\kick,
{arg vol= 1, decay= 1, pitch= 1, filter= 1;
var sin, pw, kik, kikfilter;
sin= LFTri.ar(freq: Line.kr(40,20,0.1*decay,doneAction:2)*pitch,
add: 0, mul: 0.3*vol);
pw= Pulse.ar(freq: 40, add: 0,
mul: EnvGen.ar(Env.perc(0,0.07,0.3*vol)));
kik= Mix.new([sin,pw]);
kikfilter= LPF.ar(in: kik, freq: XLine.kr(200,30,0.1*decay)*filter);
Out.ar(0, kikfilter)}).load(s);
a= Synth(\kick);
b= Synth(\kick,[\vol,1,\decay,2,\pitch,2,\filter,2]);
c= Synth(\kick,[\vol,1,\decay,4,\pitch,2,\filter,115]);
d= Synth(\kick,[\vol,1,\decay,2,\pitch,9,\filter,10]);
// Snare Drum
SynthDef(\snare,
{arg vol= 1, decay= 1, pitch= 1, filter= 1, filter2= 1;
var noise, filtap, tri, snare, snaref, snaref2;
filtap= EnvGen.ar(Env.perc(0,0.2*decay,0.2*vol,1));
noise= WhiteNoise.ar(mul: filtap, add: Line.kr(-3.5,2,1));
tri= Pulse.ar(freq: Line.kr(60*pitch,228,0.3,doneAction:2),
mul: Line.kr(0.1,0.00,0.1)*vol);
snare= noise+tri;
snaref= HPF.ar(in: snare, freq: Line.kr(800,200,0.22)*filter);
snaref2= LPF.ar(in: snaref, freq: Line.kr(600,1000,0.81)*filter2);
Out.ar(0, snaref)}).play(s)
e= Synth(\snare,[\vol,1,\decay,1.5,\pitch,5]);
f= Synth(\snare,[\vol,1,\decay,1,\pitch,0,\filter,0.19]);
g= Synth(\snare,[\vol,1,\decay,1,\pitch,5,\filter2,0]);
// Hi-hats
SynthDef(\hats,
{arg vol= 1, decay= 1;
var noise, filter, envel, menv;
menv= EnvGen.ar(Env.perc(0.3,0.01,1,4));
noise= WhiteNoise.ar(mul: menv*vol*4, add: Line.kr(0,0,0.03*decay,doneAction:2));
envel= EnvGen.ar(Env.adsr(0,0.4*decay,0.7,0.2,2900));
filter= HPF.ar(in: noise, freq: envel);
Out.ar(0, filter)}).play(s)
h= Synth(\hats,[\vol,3,\decay,1]);
i= Synth(\hats,[\vol,1,\decay,2]);
// Cymbals...(not quite)
SynthDef(\cymbal,
{arg vol= 0.5, decay= 1, pitch= 1;
var sq1, sq2;
sq1= Pulse.ar(freq: Line.kr(623,223,0.2*decay,doneAction:2)*pitch, mul: 0.3*vol);
sq2= Pulse.ar(add: 0,
freq:EnvGen.ar(Env.triangle(0.8*decay,300)),
mul: 0.3*vol);
Out.ar(0, sq1*sq2)}).play(s)
j= Synth(\cymbal);
({
var sin, pw;
sin= SinOsc.ar(freq: Line.kr(70,40,0.1,doneAction:2),
add: 0, mul: 0.3);
pw= Pulse.ar(freq: 40, add: 0,
mul: EnvGen.ar(Env.perc(0,0.07,0.2)));
Mix.new([sin,pw]);
}.play)
SynthDef(\kick,
{arg vol= 1, decay= 1, pitch= 1, filter= 1;
var sin, pw, kik, kikfilter;
sin= LFTri.ar(freq: Line.kr(40,20,0.1*decay,doneAction:2)*pitch,
add: 0, mul: 0.3*vol);
pw= Pulse.ar(freq: 40, add: 0,
mul: EnvGen.ar(Env.perc(0,0.07,0.3*vol)));
kik= Mix.new([sin,pw]);
kikfilter= LPF.ar(in: kik, freq: XLine.kr(200,30,0.1*decay)*filter);
Out.ar(0, kikfilter)}).load(s);
a= Synth(\kick);
b= Synth(\kick,[\vol,1,\decay,2,\pitch,2,\filter,2]);
c= Synth(\kick,[\vol,1,\decay,4,\pitch,2,\filter,115]);
d= Synth(\kick,[\vol,1,\decay,2,\pitch,9,\filter,10]);
// Snare Drum
SynthDef(\snare,
{arg vol= 1, decay= 1, pitch= 1, filter= 1, filter2= 1;
var noise, filtap, tri, snare, snaref, snaref2;
filtap= EnvGen.ar(Env.perc(0,0.2*decay,0.2*vol,1));
noise= WhiteNoise.ar(mul: filtap, add: Line.kr(-3.5,2,1));
tri= Pulse.ar(freq: Line.kr(60*pitch,228,0.3,doneAction:2),
mul: Line.kr(0.1,0.00,0.1)*vol);
snare= noise+tri;
snaref= HPF.ar(in: snare, freq: Line.kr(800,200,0.22)*filter);
snaref2= LPF.ar(in: snaref, freq: Line.kr(600,1000,0.81)*filter2);
Out.ar(0, snaref)}).play(s)
e= Synth(\snare,[\vol,1,\decay,1.5,\pitch,5]);
f= Synth(\snare,[\vol,1,\decay,1,\pitch,0,\filter,0.19]);
g= Synth(\snare,[\vol,1,\decay,1,\pitch,5,\filter2,0]);
// Hi-hats
SynthDef(\hats,
{arg vol= 1, decay= 1;
var noise, filter, envel, menv;
menv= EnvGen.ar(Env.perc(0.3,0.01,1,4));
noise= WhiteNoise.ar(mul: menv*vol*4, add: Line.kr(0,0,0.03*decay,doneAction:2));
envel= EnvGen.ar(Env.adsr(0,0.4*decay,0.7,0.2,2900));
filter= HPF.ar(in: noise, freq: envel);
Out.ar(0, filter)}).play(s)
h= Synth(\hats,[\vol,3,\decay,1]);
i= Synth(\hats,[\vol,1,\decay,2]);
// Cymbals...(not quite)
SynthDef(\cymbal,
{arg vol= 0.5, decay= 1, pitch= 1;
var sq1, sq2;
sq1= Pulse.ar(freq: Line.kr(623,223,0.2*decay,doneAction:2)*pitch, mul: 0.3*vol);
sq2= Pulse.ar(add: 0,
freq:EnvGen.ar(Env.triangle(0.8*decay,300)),
mul: 0.3*vol);
Out.ar(0, sq1*sq2)}).play(s)
j= Synth(\cymbal);
Drum synthesis tutorials from 'The Dance Music Manual' -Snoman.
0 comments:
Post a Comment