View this PageEdit this PageUploads to this PageHistory of this PageTop of the SwikiRecent ChangesSearch the SwikiHelp Guide

hamburg soft frog loops SC2

hamburg soft frog loops (SC3 version)




sc2 patches
/___________hamburg soft frog loop (corrected)
(
        {       var t,  p, mx, my, arr, arr2, arr3, arr4, arfill, n;
                n = 16;

                p = Impulse.ar(8);
                mx = MouseX.kr(0, 1);
                my = MouseY.kr(0, 10000);
                arfill = { arr = Array.fill(n div: 2, {180+180.5.rand2});
                arr2 = Array.fill(n, { rrand(1, pi) });
                arr3 = Array.fill(n, { 1300+100.rand2 });
                arr4 = Array.fill(n, { if(0.6.coin, { 0.5.rand } , { 0.1.rand })  });
                0.0
                };
                arfill.value;
                Sequencer.kr(arfill, (mx - 0.5)<0.01);
                t = TSpawn.ar({ arg sp, i;
                        var env, freq, out;
                        env = Env.linen(0.0011+0.001.rand2, 0.2+0.1.rand2, 0.01);
                        freq = arr3.wrapAt(i)+LFNoise2.kr(5, 10);
                        out = SinOsc.ar(
                                                freq,
                                                LFPulse.perform([\kr, \kr, \kr, \ar].wrapAt(i),
                                                arr.wrapAt(i) * mx.poll,
                                                0,

        Line.kr(arr2.wrapAt(i), 0,  0.3)),
                                                arr4.wrapAt(i)
                                );
                        Pan2.ar(BRF.ar(out, freq, 0.1), 1.rand2)*EnvGen.kr(env)
                        }, 2, nil, p);
                RLPF.ar(t, LFNoise2.kr(3, 700, 800+my), 0.5)

        }.play;
)




//___________hamburg soft frog loop: autopilot
(
{

                var t, p,  my, dt;

                dt = 16;
                p = Impulse.ar(8);
                my = MouseY.kr(0, 10000);
                t = OverlapTexture.ar({
                        var arr1, arr2, arr3, arr4, arr5, arfill, n, r,  m;
                                n = 32;
                                r = rrand(0.1, 0.5);

                                m = LFNoise1.kr(0.3, 0.2, rrand(0.2, 0.8));
                                arr1 = Array.fill(n div: 2, {180+180.5.rand2});
                                arr2 = Array.fill(n, { rrand(1, pi) });
                                arr3 = Array.fill(n, { 1300+100.rand2 });
                                arr4 = Array.fill(n, { if(r.coin, { 0.5.rand } , { 0.05.rand })  });
                                arr5 = Array.fill(n, { if(r.coin, { 1 } , { 0 })  });

                        TSpawn.ar({ arg sp, i;
                        var env, freq, out;
                        env = Env.linen(0.0011+0.001.rand2, 0.2+0.1.rand2, 0.01);
                        freq = arr3.wrapAt(i)+LFNoise2.kr(5, 10);
                        out = SinOsc.ar(
                                                freq,
                                                LFPulse.perform([\kr, \ar].at(arr5.wrapAt(i)),
                                                        arr1.wrapAt(i) * m,
                                                        0,

        Line.kr(arr2.wrapAt(i), 0,  0.3)
                                                ),
                                                arr4.wrapAt(i)
                                );
                        Pan2.ar(BRF.ar(out, freq, 0.1), 1.0.rand2)*EnvGen.kr(env)
                        }, 2, nil, p)
                }, dt, dt, 2);
                RLPF.ar(t, LFNoise2.kr(3, 700, 800+my), 0.5)

        }.play;
)


(by jrh)

Links to this Page