// title: Chaos Ambient - Unfinished Piece // author: rumush // description: // A unfinished noise piece. Based on two chaotic UGens and some granularization. // code: // Rumush // Facebook: https://www.facebook.com/rumushproduction // SoundCloud: https://soundcloud.com/rumushproduction // YouTube: https://www.youtube.com/channel/UCs_Cn1R4iFrYOyc8liFucSQ // Blog: https://mycelialcordsblog.wordpress.com/ // GitHub: https://github.com/RumushMycelialCords ( // Timing var tL = 360; // tL=totalLenght var src1Tim = Array.fill(8,{tL*rrand(1,8)}).normalize(tL/32,tL/8); var src2Tim = Array.fill(4,{tL*rrand(1,8)}).normalize(tL/16,tL/4); var src3Tim = Array.fill(6,{tL*rrand(1,8)}).normalize(tL/64,tL/6); var src4Tim = Array.fill(12,{tL*rrand(1,8)}).normalize(tL/32,tL/12); // Tuning var scale = Scale.minorPentatonic; var note = scale.degreeToFreq(0,48,1); var freq = Array.series(16,note,note*1.5); { var buf1 = Buffer.alloc(s,4e5); // Control Variables var melody = Duty.ar(1,0,(Drand([36,48],inf)+Dxrand(scale.degrees,inf)).midicps); var mainEnv = EnvGen.ar(Env.linen(0.0001,tL,10),doneAction:2); var src1Env = DemandEnvGen.ar(Dseq([0,0.25,1,0.25],inf),Dseq(src1Tim,1),5,-4); var src2Env = DemandEnvGen.ar(Dseq([0,0.25,1,0.25],inf),Dseq(src2Tim,1),5,-4); var src3Env = DemandEnvGen.ar(Dseq([0,0.25,1,0.25],inf),Dseq(src3Tim,1),5,-4); var src4Env = DemandEnvGen.ar(Dseq([0,0.25,1,0.25],inf),Dseq(src4Tim,1),5,-4); var trig = Impulse.ar(3); // Sound Sources var src1 = Splay.arFill(8, {arg i; MoogFF.ar(CuspL.ar(freq.choose,1,1.9,0),LFTri.ar(1/rrand(10,30),0,freq.choose,freq.choose/2),0) }, 1, 1/4)*src1Env; var src2 = Splay.arFill(16, {arg i; MoogFF.ar(StandardL.ar(freq.choose*(1+(i%3)),1,0.5,0),LFTri.ar(1/rrand(10,30),0,freq.choose,freq.choose/2),0) }, 1, 1/4)*src2Env; var src3 = Mix.fill(4,{arg i=1; var mod = melody/2+SinOsc.ar(0.25.rand,0,melody/8,melody/16); SyncSaw.ar(mod,melody*i+StandardL.ar(melody*TIRand.ar(1,12,trig),mul:XLine.ar(0.01,1000,tL)),0.25)!2 })*src3Env*0.1; var src4 = TGrains.ar(2,Dust.ar(320*src1Env),buf1,1,LFNoise1.ar(1)+1*4e5,0.1*LFSaw.ar(4,0,0.5,0.5),0.1,4)*src4Env*0.125; BufWr.ar(src2[0],buf1,LFNoise1.ar(0.2)+1*5e4); (src1+src2+src3+src4)*mainEnv }.play; )