Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //written by @joseCao5
- //www.mixfuckedup.net
- //jan_2013
- //some rythms with a Gui
- //audioSample(this code does many more!): http://soundcloud.com/josecaos/crudoritmia
- s.boot;
- s.quit;
- s.scope;
- //TempoClock.default.tempo=60/60;//60,68,86,72,115,160
- (// *
- (
- SynthDef(\master,{|amp=1|
- var in,fx,env,prate;
- prate=Duty.kr(Drand([1,2,0.5],inf),0,Drand([1,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9,2,2.5,2.75,3],inf));
- in=In.ar(20);
- fx=PitchShift.ar(in,0.15,prate);
- fx=Compander.ar(fx,fx,0.5,0.7,0.7);
- fx=Limiter.ar(fx,amp);
- env=EnvGen.ar(Env.adsr(0.01,0.01,0.97,0.01),1);
- Out.ar(0,Pan2.ar(fx*env,[1, -1]));
- }).add;
- );
- (
- SynthDef(\bombo,{|gate=0,bw=0.1,amp=0.75,din2=1,out=#[0,20,20]|
- var sin,env,r,r2,r3;
- r=Duty.kr(Drand([0.25,0.5,2],inf),0,Dxrand([100,250,560,800]*2,inf));
- r2=Duty.kr(Dxrand([0.5,1,2,],inf),0,Drand([2,4,8,16],inf));
- r3=TChoose.kr(Impulse.kr(r2/2),[0.01,0.25,0.5,1]);
- sin=Limiter.ar(PitchShift.ar(RHPF.ar(LFTri.ar(Pulse.ar(r2,r2/32,60,62),bw,0.8),Line.kr(r,r**r3,r3),0.2),0.1,1),amp)+
- Limiter.ar(SinOsc.ar(Mix(60,120,480),0,0.5)+LFTri.ar(Pulse.ar(r2,r2/16,60,62),0,0.75),din2);
- sin=Compander.ar(sin,sin,0.7,0.4,0.4);
- env=EnvGen.ar(Env.perc(0.01,r3*2),gate,doneAction:2);
- Out.ar(out,Pan2.ar(sin*env,[-1,1]));
- }).add;
- );
- (
- SynthDef(\tarolax,{|gate=0,bw=0.1,din=0.5,out=#[0,20]|
- var sin,env,r,r2,r3;
- r=Duty.kr(Drand([0.25,0.5,2],inf),0,Dxrand([250,370,560,840,1840],inf));
- r2=Duty.kr(Dxrand([0.5,1,2,],inf),0,Drand([2,4,8,16],inf));
- r3=TChoose.kr(Impulse.kr(r2/2),[0.01,0.05,0.1,0.25,0.5,1]);
- sin=Limiter.ar(RHPF.ar(PinkNoise.ar(Pulse.ar(r2/2,r2/32,1,1)),XLine.kr(r,r*r3,r3),0.5)
- +LFTri.ar(Mix(330,480,880),0,0.1),din);
- sin=Compander.ar(sin,sin,0.9,0.5,0.8);
- env=EnvGen.ar(Env.perc(0.01,0.15),gate,doneAction:2);
- Out.ar(out,Pan2.ar(sin*env,[1,-0.97]));
- }).add;
- );
- (
- Tdef(\bomba,{
- var t1=Pwrand([0.75,0.75,0.5],[0.5,0.4,0.09],inf).asStream;
- var t2=Prand([0.125,0.25],inf).asStream;
- var t3=Pseq([0.25,0.5,0.5,0.5,0.25,0.125,0.125,0.5,0.125,0.25,0.125],inf).asStream;
- var t4=Prand([0.5,0.75,1],inf).asStream;
- var t5=Pwrand([0.125,0.25,0.5,0.75,1,1.5],[0.06,0.28,0.32,0.1,0.12,],inf).asStream;
- var t=t3;
- ~mast=Synth(\master);
- inf.do({
- ~k=Synth(\bombo);
- ~k.set(\gate,1);
- ~popup.action={|index|
- index.value.postln;
- switch(index.value,
- 0,{t=t1},
- 1,{t=t2},
- 2,{t=t3},
- 3,{t=t4},
- 4,{t=t5}
- );
- };
- t.resume.wait;
- })
- });
- );
- (
- Tdef(\tarolo,{
- var acc=Pseq([0.001,0.25],inf).asStream;
- var timerand=[0.125,0.25,0.5,0.75,1,1.5];
- var time=0.5;
- inf.do({
- var tarola=Synth(\tarolax);
- var insane=0.75;
- tarola.set(\gate,1);
- tarola.set(\din,acc.next);
- ~popup1.action={|index|
- index.value.postln;
- switch(index.value,
- 0,{time=insane},
- 1,{time=0.25},
- 2,{time=0.5},
- 3,{time=1},
- 4,{time=timerand.choose}
- );
- };
- time.wait;
- })
- });
- );
- );
- (//Gui
- var canvas,fader,num;
- canvas=Window("2013",Rect(910,380,150,211)).front;
- canvas.view.background=Color(0,0,0,0.9);//.rand.postcln;
- //numBox+slider (not Qt)
- num=NumberBox(canvas,Rect(100,0,50,20)).background_(Color(0.5,0.5,0.5));
- fader=Slider(canvas,Rect(100,20,50,191)).background_(Color(0.76,0.37,0.34,1));
- fader.action={~mast.set(\amp,fader.value.postln);num.value_(fader.value)};
- //play
- StaticText(canvas,Rect(0,140,100,25)).string_("PLAY/STOP:").align_(\center).background_(Color(0.76,0.37,0.34,0.75));
- ~bot=Button(canvas,Rect(0,160,100,50));
- ~bot.states=[["play =>",Color.white,Color.green],
- ["stop []",Color.black,Color.red]];
- ~bot.action={|val|if(val.value==0,{Tdef(\bomba).stop;Tdef(\tarolo).stop;"->stoped<-".postcln},
- {Tdef(\bomba).play;Tdef(\tarolo).play;"->running<-".postcln})};
- //popUp
- StaticText(canvas,Rect(0,70,100,20)).string_("KICK_STEPS:").align_(\center).background_(Color(0.76,0.37,0.34,0.75));
- ~popup=PopUpMenu(canvas,Rect(0,90,100,50)).background_(Color(0.76,0.37,0.34,1));
- ~popup.items=["k->insane","k->fast","k->nice","k->slow","k->rand.val"];
- //
- StaticText(canvas,Rect(0,0,100,20)).string_("SNARE_STEPS:").align_(\center).background_(Color(0.76,0.37,0.34,0.75));
- ~popup1=PopUpMenu(canvas,Rect(0,20,100,50)).background_(Color(0.76,0.37,0.34,1));
- ~popup1.items=["t->insane","t->fast","t->nice","t->slow","t->rand.val"];
- )
- //
- Help.gui;
- //
- s.record;
- s.stopRecording;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement