Re: [linux-audio-user] Little chillout track

From: Mario Lang <mlang@email-addr-hidden>
Date: Mon Feb 28 2005 - 11:40:08 EET

Marc Lavallée <marc@email-addr-hidden> writes:

> Le 27 Février 2005 17:58, Frank Barknecht a écrit :
>> Hallo,
>>
>> Mario Lang hat gesagt: // Mario Lang wrote:
>> > Today morning, I recorded this little chill-out tune. Its really very
>> > simple and all, but I kind of fell in love with it, so I thought
>> > "share and enjoy".
>> >
>> > http://delysid.org/music/trance1.ogg
>>
>> Very nice! How about posting the 40 SC3 lines somewhere? ;)
>
> And it would be a nice tutorial for SC.
> :-)

Here is the code:

s.boot;
SynthDescLib.read;
(
SynthDef(\echo, { arg out=0, maxdtime=0.5, dtime=0.2, decay=2, gate=1;
        var env, in;
        env = Linen.kr(gate, 0.05, 1, 0.75, 2);
        in = In.ar(out, 2);
        XOut.ar(out, env, CombL.ar(in * env, maxdtime, dtime, decay, 1, in));
}, [\ir, \ir, 0.1, 0.1, 0]).store;
SynthDef(\wah, { arg out=0, gate=1, freq=3.33;
        var env, in;
        env = Linen.kr(gate, 0.05, 1, 0.4, 2);
        in = In.ar(out, 2);
        XOut.ar(out, env, RLPF.ar(in, LinExp.ar(LFNoise1.ar(freq), -1, 1, 500, 12000), 0.1) * 0.7);
}, [\ir, 0]).store;
)
(
Pdef(\melody,
        Pbind(\scale, (0..11),
                \degree, Pshuf([0,4,7,11],4),
                \amp, Pseq([0.08, 0.1, 0.09, 0.11], inf),
                \pan, Pxrand((-0.9,-0.75..0.9), inf),
                \octave, Pstutter(4,Prand([3,4,5],inf)),
                \dur, 0.25,
                \legato, 0.2));
Pdef(\wah, Pfx(Pdef(\melody), \wah, \freq, 1.66));
Pdef(\wah2, Pfx(Pn(Pdef(\melody),2), \wah, \freq, 3.66));
Pdef(\echo1, {
        Pfx(Pdef(\wah2), \echo, \dtime, thisThread.clock.tempo.reciprocal/8, \decay, 4)
});
Pdef(\echo2, {
        Pfx(Pdef(\wah), \echo, \dtime, thisThread.clock.tempo.reciprocal/4, \decay, 3)
});
Pdef(\echo3, {
        Pfx(Pfx(Pdef(\melody), \wah, \freq, 66),
                \echo, \dtime, thisThread.clock.tempo.reciprocal/3, \decay, 4)
});
Pdef(\line1, Pseq([Pdef(\echo1),Pdef(\echo2),Pdef(\echo1),Pdef(\echo3),Pdef(\echo2),Pdef(\echo3)], inf)).play;
)

Loops forever, and never stays the same :-)

-- 
CYa,
  Mario
Received on Mon Feb 28 12:15:16 2005

This archive was generated by hypermail 2.1.8 : Mon Feb 28 2005 - 12:15:17 EET