{
   "labels" : [
      "substractive synth"
   ],
   "code" : "(\r\nSynthDef(\"partial2\",{|gate=1,att,dec,rel,freq,cut,req,fenv,amp|\r\n\tvar a = Mix.new(LFSaw.ar([freq,freq*3],[0,pi],mul:[0.5,0.5])*EnvGen.kr(Env.adsr(att,dec,releaseTime:rel),gate,levelScale:0.3,doneAction:2));\r\n\tvar b = RLPF.ar(a,SinOsc.kr(fenv,mul:cut/2,add:cut/2)*EnvGen.kr(Env.perc,gate,doneAction:2),req);\r\n\tOut.ar(0,b*amp!2);\r\n}).add();\r\n)\r\n\r\n~f={|deg,freq,root=50| Scale.minorPentatonic.degreeToFreq(deg,root.midicps,1)*freq}\r\n\r\nPbind(\\instrument,\\partial2,\\amp,0.3,\\scale,Scale.minorPentatonic,\\dur,Pseq([1.5,1,0.5,1],inf),\\mtranspose,-10,\\degree,Pseq([Pseq([[1,7],[4,6],[2,5],[3,1]],3),Pseq([[6,5],[2,7],[1,3],[8,2]],1)],inf),\\cut,Prand(Array.fill(8,{|i| ~f.value(rrand(1,7),i+1)}),inf),\\req,Prand([0.7,0.5],inf),\\att,Pseq([0.02,0.04],inf),\\dec,Prand([0.1],inf),\\rel,Pseq([1],inf),\\fenv,Pseq([0.01,2,0.05,4],inf)).play;",
   "is_private" : null,
   "id" : "1-4Vg",
   "name" : "First substractive synth",
   "author" : "pierrealain.bourdil",
   "ancestor_list" : [],
   "description" : "In the process of learing abstract algorithm\r\nhttps://soundcloud.com/pierrealainbourdil/substractive-synthesis"
}
