Archive for the ‘Music’ Category

Workshop, performance and presentation at KiberPipa, Ljubljana, Slovenia

Saturday, January 8th, 2011

From February 25th until March 4th, 2011, I will be in Ljubljana, Slovenia, where I will host a SenseStage workshop, and do a presentation and performance at KiberPipa.

More news to follow!

Sonobotanics and Code LiveCode Live at MakeArt 2010

Sunday, October 17th, 2010

I will be presenting the Sonobotanic models of the Periperceptoida Triquetrus Nutandis and Dependis at the Make Art festival in Poitiers, France, between November 4 and 7.

I will also do the livecoding performance “Code LiveCode Live” there.

Sonobotanics

Sunday, May 30th, 2010

Right now there is an exhibit going on of new sonobotanic models, I created together with Elio Bidinost.

For more information, check out: http://www.sonobotanics.org

Sonobotanics
sonobotanics close up

The Olympic livecode games at the LAC

Thursday, May 13th, 2010

The first Olympic SuperCollider livecoding games were held at the Linux Audio Conference 2010 in Utrecht, with five participants…

A history here below.

To organise the games yourself, get the code from:


///////////////////////////////////////////////////
// History, as it was on Mon May 3 15:47:13 2010.
///////////////////////////////////////////////////

// - 0:0:0 - (host)
a.startHistory;

// - 0:0:2.49 - (host)
(
Tdef( \updateTimes, {
a.updateTime = 90;
(10*60).wait; // 10 minutes
a.updateTime = 60;
(10*60).wait; // 10 minutes
a.updateTime = 30;
(10*60).wait; // 10 minutes
a.stopGames;
} );
);

// - 0:0:6.72 - (host)
a.asHost;

// - 0:0:7.69 - (host)
a.startGames

// - 0:0:11.8 - (tim)
a.me.meter

// - 0:0:11.97 - (host)
OlympicGui.useDocClass = true; // by default it is false, so the GUI method

// - 0:0:15.58 - (host)
b= a.makeGameGui( \host );

// - 0:0:15.59 - (lijon)
a.startHistory;

// - 0:0:19.16 - (lijon)
a.startGames

// - 0:0:27.64 - (host)
TdefAllGui.new;

// - 0:0:29.27 - (lijon)
(
SynthDef( \jl_thing,
{ |out=0,amp=0.1,rate=0.1|
var a = Dust.ar(rate!2);
a = CombL.ar(a,1,0.01,0.1);
Out.ar( out, a);
}
).share;
)

// - 0:0:31.43 - (host)
Tdef('updateTimes').play;

// - 0:0:47.43 - (host)
(
SynthDef( \sinEnv,
{ |out=0,amp=0.1,freq=440, t_trig=1, dur=1|
Out.ar( out, SinOsc.ar( freq, 0, amp )*EnvGen.kr( Env.perc, t_trig, timeScale: dur, doneAction: 2 ) );
}
).share;
)

// - 0:0:53.29 - (host)
(
Pdef( \sinEnvs,
Pbind(
\instrument, \sinEnv,
\amp, 0.25,
\out, Prand( [0,1], inf),
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\dur, Pn( Pgeom( 0.05, 1.2, 10 ) ),
\octave, 6,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:0:55.3 - (host)
PdefAllGui.new;

// - 0:1:0.15 - (host)
Pdef('sinEnvs').play;

// - 0:1:4.25 - (tim)
(
SynthDef( \gray,
{ |out=0,amp=0.1|
Out.ar( out, LFClipNoise.ar(200) );
}
).share;
)

// - 0:1:7.78 - (host)
(
LFClipNoise Slope SharedOut Clip XFade IEnvGen Latch
welWindow theta hypot eq
);

// - 0:1:18.74 - (tim)
(
SynthDef( \lfc,
{ |out=0,amp=0.1|
Out.ar( out, LFClipNoise.ar(200) );
}
).share;
)

// - 0:1:18.88 - (lijon)
(
SynthDef( \jl_thing,
{ |out=0,amp=0.1,rate=0.1|
var a = Dust.ar(rate!2);
a = CombL.ar(a,1,0.01,0.1);
Out.ar( out, a*amp);
}
).share;
)

// - 0:1:28.11 - (tim)
x = Synth.new( \lfc, target: a.me );

// - 0:1:33.72 - (lijon)
x = Synth.new( \jl_thing, target: a.me );

// - 0:1:35.02 - (host)
(
Pdef( \sinEnvs,
Pmono(
\sinEnv,
\amp, 0.25,
\out, Prand( [0,1], inf),
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\dur, Pn( Pgeom( 0.05, 1.2, 10 ) ),
\octave, 6,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:1:51.03 - (host)
(
Pdef( \sinEnvs,
Pbind(
\instrument, \sinEnv,
\amp, 0.10,
\out, Prand( [0,1], inf),
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\dur, Pn( Pgeom( 0.05, 1.2, 10 ) ),
\octave, 6,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:2:4.9 - (lijon)
(
SynthDef( \jl_thing,
{ |out=0,amp=0.1,rate=0.1,decay=0.1|
var a = Dust.ar(rate!2);
a = CombL.ar(a,1,0.01,decay);
Out.ar( out, a*amp);
}
).share;
)

// - 0:2:9.21 - (lijon)
x.set(\amp,0.2,\decay,0.2)

// - 0:2:14.17 - (tim)
y = Synth.new( \lfc, target: a.me );

// - 0:2:20.52 - (lijon)
x.set(\amp,0.2,\decay,0.7)

// - 0:2:34.04 - (oiata)
(
SynthDef( \pulse, {|out=0,amp=1|
ReplaceOut.ar( out, In.ar * SinOsc.ar( LFNoise1.ar( 0.3, 400, 800 )))
}).share;
);

// - 0:2:37.78 - (host)
(
Pmono Ppoisson Pfinval Pchain
atan degrad lcm leftShift
);

// - 0:2:39.39 - (tim)
y = Synth.new( \lfc, target: a.me );

// - 0:2:40.86 - (lijon)
x.set(\amp,0.2,\decay,0.7,\rate,0.05)

// - 0:3:0.01 - (host)
(
SynthDef( \lfcn2,
{ |out=0,amp=0.1, freq=500|
Out.ar( out, LFClipNoise.ar(freq)*amp );
}
).share;
)

// - 0:3:6.66 - (lijon)
x = Synth.new( \jl_thing, target: a.host );

// - 0:3:11.68 - (host)
(
Pdef( \sinEnvs,
Pbind(
\instrument, \lfcn2,
\amp, 0.10,
\out, Prand( [0,1], inf),
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\dur, Pn( Pgeom( 0.05, 1.2, 10 ) ),
\octave, 6,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:3:17.32 - (lijon)
x.set(\amp,0.5,\decay,0.7,\rate,0.05)

// - 0:3:17.44 - (host)
(
Pdef( \sinEnvs,
Pbind(
\instrument, \lfcn2,
\amp, 0.01,
\out, Prand( [0,1], inf),
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\dur, Pn( Pgeom( 0.05, 1.2, 10 ) ),
\octave, 6,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:3:21.08 - (host)
Pdef('sinEnvs').stop;

// - 0:3:23.57 - (lijon)
x.free;

// - 0:3:30.4 - (host)
a.host.freeAll;

// - 0:3:33.86 - (lijon)
x = Synth.new( \jl_thing, target: a.me );

// - 0:3:41.79 - (host)
(
Pdef( \sinEnvs,
Pbind(
\instrument, \sinEnvs,
\amp, 0.0,
\out, Prand( [0,1], inf),
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\dur, Pn( Pgeom( 0.05, 1.2, 10 ) ),
\octave, 6,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:3:43.66 - (lijon)
x.set(\amp,0.5,\decay,0.7,\rate,0.05)

// - 0:3:44.26 - (host)
Pdef('sinEnvs').play;

// - 0:3:50.28 - (lijon)
x.set(\amp,0.5,\decay,0.7,\rate,10)

// - 0:3:54.06 - (host)
(
Pdef( \sinEnvs,
Pbind(
\instrument, \sinEnv,
\amp, 0.0,
\out, Prand( [0,1], inf),
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\dur, Pn( Pgeom( 0.05, 1.2, 10 ) ),
\octave, 6,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:3:55.54 - (oiata)
x = Synth.new( \pulse, target: a.host; );

// - 0:3:57.86 - (lijon)
x.set(\amp,0.5,\decay,0.8,\rate,10)

// - 0:4:1.48 - (lijon)
x.set(\amp,0.4,\decay,0.8,\rate,10)

// - 0:4:1.87 - (tim)
x = Synth.new( \lfc3, target: a.me );

// - 0:4:4.15 - (host)
(
Pdef( \sinEnvs,
Pbind(
\instrument, \sinEnv,
\amp, 0.01,
\out, Prand( [0,1], inf),
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\dur, Pn( Pgeom( 0.05, 1.2, 10 ) ),
\octave, 6,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:4:7.78 - (host)
(
DC Slew XOut RunningMax SelectX Linen TGrains
cpsmidi theta hypot ring4
);

// - 0:4:21.7 - (oiata)
(
SynthDef( \pulse, {|out=0,amp=0.1,in=0|
ReplaceOut.ar( out, In.ar(in) * SinOsc.ar( LFNoise1.ar( 0.3, 400, 800 )))
}).share;
);

// - 0:4:23.86 - (tim)
a.startGames

// - 0:4:25.34 - (oiata)
x.free;

// - 0:4:26.98 - (oiata)
x = Synth.new( \pulse, target: a.host; );

// - 0:4:30.23 - (tim)
a.me.meter

// - 0:4:35.59 - (host)
(
Pdef( \sinEnvs,
Pbind(
\instrument, \sinEnv,
\amp, 0.01,
\out, Prand( [0,1], inf),
\degree, Pn( Pxrand( (0..10), 5 ), inf),
\dur, Pn( Pgeom( 0.05, 1.2, 10 ) ).sin * 2 + 1,
\octave, 6,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:4:38.05 - (tim)
x = Synth.new( \lfc3, target: a.me );

// - 0:4:41.33 - (host)
(
Pdef( \sinEnvs,
Pbind(
\instrument, \sinEnv,
\amp, 0.05,
\out, Prand( [0,1], inf),
\degree, Pn( Pxrand( (0..10), 5 ), inf),
\dur, Pn( Pgeom( 0.05, 1.2, 10 ) ).sin * 2 + 1,
\octave, 6,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:4:48.51 - (host)
(
Pdef( \sinEnvs,
Pbind(
\instrument, \sinEnv,
\amp, 0.1,
\out, Prand( [0,1], inf),
\degree, Pn( Pxrand( (0..10), 5 ), inf),
\dur, Pn( Pgeom( 0.05, 1.2, 10 ) ).sin * 2 + 1,
\octave, 6,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:4:56.24 - (lijon)
(
SynthDef( \jl_thing,
{ |out=0,amp=0.1,rate=0.1,decay=0.1|
var a = Dust.ar(rate!2);
a = Splay.ar( CombL.ar(a,1,[0.01,0.005,0.0025],decay));
Out.ar( out, a*amp);
}
).share;
)

// - 0:5:0.77 - (host)
(
Pdef( \sinEnvs,
Pbind(
\instrument, \sinEnv,
\amp, 0.1,
\out, Prand( [0,1], inf),
\degree, Pn( Pxrand( (0..10), 5 ), inf),
\dur, Pn( Pgeom( 0.05, 1.2, 10 ) ).sin * 2 + 1,
\octave, Pxrand( [5,6,7],inf ),
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:5:13.89 - (lijon)
y.set(\amp,0.2)

// - 0:5:16.7 - (lijon)
x.set(\amp,0.2,\decay,0.8,\rate,10)

// - 0:5:19.04 - (lijon)
y = Synth.new( \jl_thing, target: a.me );

// - 0:5:30.29 - (lijon)
x.free;

// - 0:5:31.29 - (lijon)
y.set(\amp,0.2,\decay,0.8,\rate,10)

// - 0:5:35.38 - (oiata)
(
SynthDef( \ring, {|out=0,amp=0.1,in=0|
ReplaceOut.ar( out, Ringz.ar( In.ar(in), 500, 0.3 ))
}).share;
);

// - 0:5:36.46 - (lijon)
y.set(\amp,0.2,\decay,1.8,\rate,10)

// - 0:5:37.78 - (host)
(
Pbind Pxrand Prewrite Pgpar
sin frac amclip ring4
);

// - 0:5:40.53 - (lijon)
y.set(\amp,0.1,\decay,1.8,\rate,10)

// - 0:5:45.86 - (lijon)
y.set(\amp,0.1,\decay,3,\rate,10)

// - 0:5:48.64 - (lijon)
y.set(\amp,0.1,\decay,3,\rate,9)

// - 0:5:51.61 - (lijon)
y.set(\amp,0.1,\decay,3,\rate,8)

// - 0:5:57.8 - (host)
(
SynthDef( \jl_thing2,
{ |out=0,amp=0.1,rate=0.1,decay=0.1|
var a = Dust.ar(rate!2);
a = CombL.ar(a,1,0.01,decay);
Out.ar( out, a*amp*SinOsc.kr( 0.5, 0, 0.5 ));
}
).share;
)

// - 0:6:0.03 - (lijon)
y.set(\amp,0.1,\decay,8,\rate,8)

// - 0:6:3.04 - (oiata)
(
SynthDef( \ring, {|out=0,amp=0.1,in=0|
ReplaceOut.ar( out, Ringz.ar( In.ar(in), 500, 0.3 ))
}).share;
);

// - 0:6:4.01 - (oiata)
x = Synth.new( \pulse, target: a.host, addAction: \addToTail );

// - 0:6:4.25 - (lijon)
y.set(\amp,0.1,\decay,8,\rate,7)

// - 0:6:8.81 - (lijon)
y.set(\amp,0.1,\decay,8,\rate,6)

// - 0:6:11.38 - (oiata)
x.free;

// - 0:6:12.66 - (lijon)
y.set(\amp,0.1,\decay,9,\rate,6)

// - 0:6:15.59 - (lijon)
y.set(\amp,0.1,\decay,9,\rate,5)

// - 0:6:17.99 - (host)
~jlthing2 = Synth.new( \jl_thing2, target: a.me );

// - 0:6:18.02 - (lijon)
y.set(\amp,0.1,\decay,9,\rate,3)

// - 0:6:25.78 - (oiata)
x = Synth.new( \pulse, target: a.host, addAction: \addToTail );

// - 0:6:31.51 - (oiata)
x.free;

// - 0:6:32.26 - (tim)
(
SynthDef( \lfc3,
{ |out=0,amp=0.1|
Out.ar( out, LFClipNoise.ar(2000).atan ! 2 * -9.dbamp );
}
).share;
)

// - 0:6:33.14 - (oiata)
x = Synth.new( \pulse, target: a.host, addAction: \addToTail );

// - 0:6:34.93 - (tim)
x = Synth.new( \lfc3, target: a.me );

// - 0:7:7.78 - (host)
(
LinRand Hilbert OffsetOut Slope Rotate2 IEnvGen Convolution2L
coin exp max leftShift
);

// - 0:7:24.94 - (lijon)
(
SynthDef( \jl_thing,
{ |out=0,amp=0.1,rate=0.1,decay=0.1,cf=12000|
var a = Dust.ar(rate!2);
a = Splay.ar( CombL.ar(a,1,[0.01,0.005,0.0025],decay));
a = MoogFF.ar(a,12000,1);
Out.ar( out, a*amp);
}
).share;
)

// - 0:7:36.37 - (oiata)
(
SynthDef( \noise, {|out=0,amp=0.1,in=0|
ReplaceOut.ar( out, Ringz.ar( WhiteNoise.ar(amp), 500, 0.3 ))
}).share;
);

// - 0:7:41.5 - (tim)
(
SynthDef( \lfc3,
{ |out=0,amp=0.1|
Out.ar( out, LFClipNoise.ar(20000).atan ! 2 * -12.dbamp );
}
).share;
)

// - 0:7:44.34 - (host)
(
SynthDef( \sinEnv,
{ |out=0,amp=0.1,freq=440, t_trig=1, dur=1|
Out.ar( out, SinOsc.ar( freq + (LinRand(10,500)) , 0, amp )*EnvGen.kr( Env.perc, t_trig, timeScale: dur, doneAction: 2 ) );
}
).share;
)

// - 0:7:57.27 - (oiata)
(
SynthDef( \noise, {|out=0,amp=0.1,in=0|
ReplaceOut.ar( out, Ringz.ar( WhiteNoise.ar(amp), 200, 0.3 ))
}).share;
);

// - 0:7:59.05 - (oiata)
z = Synth.new( \noise, target: a.host, addAction: \addToTail );

// - 0:8:5.41 - (tim)
(
x.free;
x = Synth.new( \lfc3, target: a.me );
);

// - 0:8:5.51 - (oiata)
z.free;

// - 0:8:9.97 - (lijon)
(
SynthDef( \jl_thing,
{ |out=0,amp=0.1,rate=3,decay=10,cf=12000|
var a = Dust.ar(rate!2);
a = Splay.ar( CombL.ar(a,1,[0.01,0.005,0.0025],decay));
a = MoogFF.ar(a,12000,1);
Out.ar( out, a*amp);
}
).share;
)

// - 0:8:12.94 - (oiata)
(
SynthDef( \noise, {|out=0,amp=0.01,in=0|
ReplaceOut.ar( out, Ringz.ar( WhiteNoise.ar(amp), 200, 0.3 ))
}).share;
);

// - 0:8:13.53 - (lijon)
y.free; y = Synth.new( \jl_thing, target: a.me );

// - 0:8:13.78 - (oiata)
z = Synth.new( \noise, target: a.host, addAction: \addToTail );

// - 0:8:18.25 - (host)
(
Pdef( \sinEnvs,
Pbind(
\instrument, \sinEnv,
\amp, 0.1,
\out, Prand( [0,1], inf),
\degree, Pn( Pxrand( (0..10), 5 ), inf),
\dur, Pn( Pgeom( 0.05, 1.2, 10 ) ).sin * 2 + 1,
\octave, Phprand( (3..9),inf ),
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:8:23.97 - (oiata)
z.free;

// - 0:8:30.42 - (oiata)
(
SynthDef( \noise, {|out=0,amp=0.01,in=0|
ReplaceOut.ar( out, Ringz.ar( WhiteNoise.ar(amp), 100, 0.3 ))
}).share;
);

// - 0:8:32.27 - (oiata)
z = Synth.new( \noise, target: a.host, addAction: \addToTail );

// - 0:8:34.28 - (lijon)
(
SynthDef( \jl_thing,
{ |out=0,amp=0.1,rate=3,decay=10,cf=12000|
var a = Dust.ar(rate!2);
a = Splay.ar( CombL.ar(a,1,[0.01,0.005,0.0025],decay));
a = MoogFF.ar(a,cf,1);
Out.ar( out, a*amp);
}
).share;
)

// - 0:8:36.15 - (lijon)
y.free; y = Synth.new( \jl_thing, target: a.me );

// - 0:8:37.78 - (host)
(
Pmono Phprand PstepNfunc Pbindf
degrad distort - sumsqr
);

// - 0:8:37.98 - (oiata)
z.free;

// - 0:8:42.09 - (host)
(
Pdef( \sinEnvs,
Pbind(
\instrument, \sinEnv,
\amp, 0.1,
\out, Prand( [0,1], inf),
\degree, Pn( Pxrand( (0..10), 5 ), inf),
\dur, Pn( Phprand( 0.05, 1.2, inf ) ),
\octave, Phprand( (3..9),inf ),
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:8:47.07 - (lijon)
y.set(\amp,0.2,\decay,9,\rate,50,\cf,8000)

// - 0:8:49.37 - (lijon)
y.set(\amp,0.2,\decay,9,\rate,50,\cf,6000)

// - 0:8:51.2 - (lijon)
y.set(\amp,0.2,\decay,9,\rate,50,\cf,4000)

// - 0:8:52.9 - (lijon)
y.set(\amp,0.2,\decay,9,\rate,50,\cf,3000)

// - 0:8:55.04 - (host)
(
SynthDef( \ballpass,
{ |out=0,amp=0.1,freq=440, t_trig=1, dur=1, rq=0.1, dens=100|
Out.ar( out, BAllPass.ar( Dust2.ar( dens ), freq, rq ) * EnvGen.kr( Env.perc, t_trig, timeScale: dur, doneAction: 2) );
}
).share;
)

// - 0:8:55.38 - (lijon)
y.set(\amp,0.2,\decay,9,\rate,50,\cf,2000)

// - 0:8:55.78 - (oiata)
(
SynthDef( \noise, {|out=0,amp=0.01,in=0|
Out.ar( out, Ringz.ar( WhiteNoise.ar(amp), 100, 0.3 ))
}).share;
);

// - 0:8:59.2 - (lijon)
y.set(\amp,0.2,\decay,9,\rate,50,\cf,1800)

// - 0:9:1.4 - (host)
(
Pdef( \ballpass,
Pbind(
\instrument, \ballpass,
\amp, 2,
\rq, 0.01,
\dens, 1000,
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\octave, 6,
\dur, 4,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:9:2.78 - (host)
Pdef('ballpass').play;

// - 0:9:3.67 - (lijon)
y.set(\amp,0.2,\decay,7,\rate,50,\cf,1800)

// - 0:9:4.36 - (oiata)
(
SynthDef( \noise, {|out=0,amp=0.01,in=0,freq|
Out.ar( out, Ringz.ar( WhiteNoise.ar(amp), freq, 0.3 ))
}).share;
);

// - 0:9:5.48 - (lijon)
y.set(\amp,0.2,\decay,6,\rate,50,\cf,1800)

// - 0:9:7.08 - (lijon)
y.set(\amp,0.2,\decay,5,\rate,50,\cf,1800)

// - 0:9:9.88 - (lijon)
y.set(\amp,0.2,\decay,4,\rate,50,\cf,1800)

// - 0:9:10.81 - (tim)
(
x.free;
x = Synth.new( \lfc3, target: a.me );
)

// - 0:9:13.09 - (lijon)
y.set(\amp,0.2,\decay,3,\rate,50,\cf,1800)

// - 0:9:13.23 - (host)
(
Pdef( \ballpass,
Pbind(
\instrument, \ballpass,
\amp, 2,
\rq, 0.01,
\dens, 1000,
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\octave, 6,
\dur, 2,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:9:16.52 - (oiata)
(
SynthDef( \noise, {|out=0,amp=0.01,in=0,freq=400|
Out.ar( out, Ringz.ar( WhiteNoise.ar(amp), freq, 0.3 ))
}).share;
);

// - 0:9:17.47 - (oiata)
z = Synth.new( \noise, target: a.host, addAction: \addToTail );

// - 0:9:18.02 - (host)
(
Pdef( \ballpass,
Pbind(
\instrument, \ballpass,
\amp, 2,
\rq, 0.01,
\dens, 1000,
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\octave, 6,
\dur, 1,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:9:19.2 - (lijon)
y.set(\amp,0.2,\decay,2,\rate,50,\cf,1800)

// - 0:9:22.1 - (host)
(
Pdef( \ballpass,
Pbind(
\instrument, \ballpass,
\amp, 2,
\rq, 0.01,
\dens, 1000,
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\octave, 8,
\dur, 1,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:9:23.62 - (lijon)
y.set(\amp,0.2,\decay,2,\rate,60,\cf,1800)

// - 0:9:27.34 - (lijon)
y.set(\amp,0.2,\decay,0.5,\rate,60,\cf,1800)

// - 0:9:31.12 - (oiata)
z.set(\amp,0.005);

// - 0:9:37.31 - (lijon)
y.set(\amp,0.2,\decay,0.1,\rate,60,\cf,1800)

// - 0:9:39.12 - (tim)
(
SynthDef( \lfc3,
{ |out=0,amp=0.1|
Out.ar( out, RHPF.ar(LFClipNoise.ar(20000).atan ! 2 * -12.dbamp, 7000) );
}
).share;
)

// - 0:9:40.32 - (host)
(
SynthDef( \ballpass,
{ |out=0,amp=0.1,freq=440, t_trig=1, dur=1, rq=0.1, dens=100|
Out.ar( out, BPF.ar( Dust2.ar( dens ), freq, rq ) * EnvGen.kr( Env.perc, t_trig, timeScale: dur, doneAction: 2) );
}
).share;
)

// - 0:9:40.87 - (tim)
(
x.free;
x = Synth.new( \lfc3, target: a.me );
)

// - 0:9:46.09 - (lijon)
y.set(\amp,0.2,\decay,0.1,\rate,60,\cf,2000)

// - 0:9:48.44 - (lijon)
y.set(\amp,0.2,\decay,0.1,\rate,60,\cf,2200)

// - 0:9:50.52 - (host)
(
SynthDef( \ballpass,
{ |out=0,amp=0.1,freq=440, t_trig=1, dur=1, rq=0.1, dens=100|
Out.ar( out, RLPF.ar( Dust2.ar( dens ), freq, rq ) * EnvGen.kr( Env.perc, t_trig, timeScale: dur, doneAction: 2) );
}
).share;
)

// - 0:9:50.86 - (lijon)
y.set(\amp,0.2,\decay,0.1,\rate,60,\cf,2500)

// - 0:9:54.66 - (oiata)
z.set(\freq,[201,205]);

// - 0:9:54.74 - (lijon)
y.set(\amp,0.2,\decay,0.1,\rate,60,\cf,2700)

// - 0:10:7.78 - (host)
(
GrainBuf Hilbert AbstractOut MostChange SelectXFocus EnvGen PV_BinShift
linrand cosh thresh fold2
);

// - 0:10:27.9 - (host)
(
SynthDef( \ballpass,
{ |out=0,amp=0.1,freq=440, t_trig=1, dur=1, rq=0.1, dens=100|
Out.ar( out, RLPF.ar( Dust2.ar( dens ), freq + linrand(100,200), rq ) * EnvGen.kr( Env.perc, t_trig, timeScale: dur, doneAction: 2) );
}
).share;
)

// - 0:10:33.44 - (lijon)
(
SynthDef( \jl_thing,
{ |out=0,amp=0.1,rate=3,decay=10,cf=12000|
var a = Dust.ar(rate!2);
a = Splay.ar( CombL.ar(a,1,[0.01,0.005,0.0025]*4,decay));
a = MoogFF.ar(a,cf,1).cosh;
Out.ar( out, Limiter(a)*amp);
}
).share;
)

// - 0:10:47.44 - (lijon)
(
SynthDef( \jl_thing,
{ |out=0,amp=0.1,rate=3,decay=10,cf=12000|
var a = Dust.ar(rate!2);
a = Splay.ar( CombL.ar(a,1,[0.01,0.005,0.0025]*4,decay));
a = MoogFF.ar(a,cf,1).cosh;
Out.ar( out, Limiter(a)*amp);
}
).share;
)

// - 0:10:48.38 - (oiata)
z.free;

// - 0:10:53.58 - (oiata)
(
Pdef(\x,
Pbind(
\instrument, \noise,
\server, a.s, // a.s chooses the republic server
\where, Prand([\host], 8), // where controls the targer
\dur, 1.rand,
\legato, 0.3,
\freq, Pwhite().linexp(0, 1, 500, 2000)
).trace
).play;
)

// - 0:10:54.76 - (tim)
(
SynthDef( \lfc3,
{ |out=0,amp=0.1|
Out.ar( out, RHPF.ar(LFClipNoise.ar(20000).atan ! 2 * -12.dbamp, [7000, 7010], 0.8) );
}
).share;
)

// - 0:10:55.87 - (tim)
(
x.free;
x = Synth.new( \lfc3, target: a.me );
)

// - 0:11:4.62 - (lijon)
(
SynthDef( \jl_thing,
{ |out=0,amp=0.1,rate=3,decay=4,cf=2000|
var a = Dust.ar(rate!2);
a = Splay.ar( CombL.ar(a,1,[0.01,0.005,0.0025]*4,decay));
a = MoogFF.ar(a,cf,1).cosh;
Out.ar( out, Limiter(a)*amp);
}
).share;
)

// - 0:11:6.06 - (host)
(
Pdef( \ballpass,
Pbind(
\instrument, \ballpass,
\amp, 2,
\rq, 0.01,
\dens, 1000,
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\octave, Pmeanrand( 5, 10, inf),
\dur, 1,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:11:6.45 - (lijon)
y.free; y = Synth.new( \jl_thing, target: a.me );

// - 0:11:11.8 - (lijon)
y.set(\amp,0.9,\decay,0.1,\rate,60,\cf,2700)

// - 0:11:14.94 - (tim)
(
SynthDef( \lfc3,
{ |out=0,amp=0.1|
Out.ar( out, RHPF.ar(LFClipNoise.ar(20000).atan ! 2 * -12.dbamp, [7000, 7010], 0.4) );
}
).share;
)

// - 0:11:16.47 - (tim)
(
x.free;
x = Synth.new( \lfc3, target: a.me );
)

// - 0:11:17.9 - (lijon)
y.set(\amp,0.9,\decay,0.2,\rate,60,\cf,2700)

// - 0:11:21.31 - (lijon)
y.set(\amp,0.9,\decay,0.2,\rate,60,\cf,7700)

// - 0:11:23.01 - (tim)
(
SynthDef( \lfc3,
{ |out=0,amp=0.1|
Out.ar( out, RHPF.ar(LFClipNoise.ar(20000).atan ! 2 * -12.dbamp, [7000, 7010], 0.3) );
}
).share;
)

// - 0:11:24.4 - (tim)
(
x.free;
x = Synth.new( \lfc3, target: a.me );
)

// - 0:11:28.18 - (lijon)
y.set(\amp,0.9,\decay,1,\rate,60,\cf,7700)

// - 0:11:31.92 - (lijon)
y.set(\amp,0.9,\decay,1,\rate,60,\cf,5700)

// - 0:11:37.78 - (host)
(
Pmono Pmeanrand Pclutch Pbus
ref coin hypotApx hypot
);

// - 0:11:40.68 - (lijon)
y.set(\amp,0.9,\decay,0.1,\rate,60,\cf,5700)

// - 0:11:42.76 - (host)
(
SynthDef( \ballpass,
{ |out=0,amp=0.1,freq=440, t_trig=1, dur=1, rq=0.1, dens=100|
Out.ar( out, RHPF.ar( Dust2.ar( dens ), freq + linrand(100,200), rq ) * EnvGen.kr( Env.perc, t_trig, timeScale: dur, doneAction: 2) );
}
).share;
)

// - 0:11:52.45 - (host)
(
Pdef( \ballpass,
Pbind(
\instrument, \ballpass,
\amp, 5,
\rq, 0.01,
\dens, 1000,
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\octave, Pmeanrand( 5, 10, inf),
\dur, 1,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:11:54.89 - (lijon)
y.set(\amp,0.9,\decay,0.1,\rate,60,\cf,15700)

// - 0:11:58.99 - (host)
(
Pdef( \ballpass,
Pbind(
\instrument, \ballpass,
\amp, 5,
\rq, 0.01,
\dens, 1000,
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\octave, Pmeanrand( 3, 4, inf),
\dur, 1,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:11:59.57 - (lijon)
y.set(\amp,0.9,\decay,0.1,\rate,10,\cf,15700)

// - 0:12:7.9 - (lijon)
y.set(\amp,0,\decay,0.1,\rate,10,\cf,15700)

// - 0:12:8.16 - (host)
(
Pdef( \ballpass,
Pbind(
\instrument, \ballpass,
\amp, 5,
\rq, 0.05,
\dens, 1000,
\degree, Pn( Pshuf( (0..10), 5 ), inf),
\octave, Pmeanrand( 3, 4, inf),
\dur, 1,
\server, a.s, // a.s chooses the republic server
\where, \host // where controls the targer
)
)
)

// - 0:12:8.5 - (tim)
(
SynthDef( \lfc3,
{ |out=0,amp=0.1|
Out.ar( out, FreqShift.ar(RHPF.ar(LFClipNoise.ar(20000).atan ! 2 * -12.dbamp, [7000, 7010], 0.3), -3000) );
}
).share;
)

// - 0:12:11.49 - (lijon)
y.set(\amp,0.5,\decay,0.1,\rate,10,\cf,15700)

// - 0:12:18.46 - (host)
(
SynthDef( \ringmod,
{ |out=0,amp=0.1,freq=440, t_trig=1, fm= 100, dur=1, rq=0.1, dens=100|
ReplaceOut.ar( out,
SinOsc.ar( freq, 0, fm ) * In.ar(0 )
* EnvGen.kr( Env.sine, t_trig, timeScale: dur, doneAction: 2) );
}
).share;
)

// - 0:12:20.1 - (tim)
(
x.free;
x = Synth.new( \lfc3, target: a.me );
)

// - 0:12:20.38 - (oiata)
(
SynthDef( \noise, {|out=0,amp=0.01,in=0,freq=400|
ReplaceOut.ar( out, RLPF.ar( In.ar(0), freq, 0.3 ))
}).share;
);

// - 0:12:21.17 - (lijon)
y.set(\amp,0.5,\decay,0.1,\rate,1,\cf,15700)

// - 0:12:24.74 - (host)
(
Pdef( \ringmod,
Pbind(
\instrument, \ringmod,
\amp, 0.25,
\rq, 1,
\dens, 1000,
\degree, Pbrown( 0, 12, 2 ),
// Pn( Pshuf( (0..10), 5 ), inf),
\octave, 3,
\fm, 40,
\dur, 1,
\server, a.s, // a.s chooses the republic server
\where, \host, // where controls the targer
\addAction, \addToTail
)
)
)

// - 0:12:26.13 - (host)
Pdef('ringmod').play;

// - 0:12:30.01 - (oiata)
(
SynthDef( \noise, {|out=0,amp=0.1,in=0,freq=400|
ReplaceOut.ar( out, RLPF.ar( In.ar(0), freq, 0.3 ))
}).share;
);

// - 0:12:31.78 - (tim)
(
SynthDef( \lfc3,
{ |out=0,amp=0.1|
Out.ar( out, FreqShift.ar(RHPF.ar(LFClipNoise.ar(20000).atan ! 2 * -12.dbamp, [7000, 7010], 0.3), -7000) );
}
).share;
)

// - 0:12:34.97 - (tim)
(
x.free;
x = Synth.new( \lfc3, target: a.me );
)

// - 0:12:37.01 - (host)
(
Pdef( \ringmod,
Pbind(
\instrument, \ringmod,
\amp, 0.125,
\rq, 1,
\dens, 1000,
\degree, Pbrown( 0, 12, 2 ),
// Pn( Pshuf( (0..10), 5 ), inf),
\octave, 3,
\fm, 40,
\dur, 1,
\server, a.s, // a.s chooses the republic server
\where, \host, // where controls the targer
\addAction, \addToTail
)
)
)

// - 0:12:37.78 - (host)
(
LFDNoise3 FreqShift SharedIn LinLin SelectXFocus EnvGen PV_RandComb
ratiomidi cpsmidi leftShift amclip
);

// - 0:12:46.03 - (host)
(
Pdef( \ringmod,
Pbind(
\instrument, \ringmod,
\amp, 0.05,
\rq, 1,
\dens, 1000,
\degree, Pbrown( 0, 12, 2 ),
// Pn( Pshuf( (0..10), 5 ), inf),
\octave, 3,
\fm, 40,
\dur, 1,
\server, a.s, // a.s chooses the republic server
\where, \host, // where controls the targer
\addAction, \addToTail
)
)
)

// - 0:12:48.4 - (lijon)
y.set(\amp,0.5,\decay,0.1,\rate,1,\cf,15700)

// - 0:12:55.22 - (lijon)
y.set(\amp,0.5,\decay,10,\rate,1,\cf,5700)

// - 0:12:57.99 - (oiata)
z = Synth.new( \return, target: a.host, addAction: \addToTail );

// - 0:13:2.89 - (tim)
(
SynthDef(\xxy, {|out, sustain = 10, freq = 440|
var env = Line.kr(0.1, 0, sustain, doneAction: 2);
var son = PitchShift.ar(LinCongC.ar(freq * [1, 1.2, 1.5, 1.7]).sum, pitchRatio: 2 + LFNoise0.kr(3.23));
Out.ar(out, son * env);
}).share;
)

// - 0:13:3.63 - (host)
(
SynthDef( \ringmod,
{ |out=0,amp=0.1,freq=440, t_trig=1, fm= 100, dur=1, rq=0.1, dens=100|
ReplaceOut.ar( out,
SinOsc.ar( freq, 0, fm ) * In.ar(0,2 )
* EnvGen.kr( Env.sine, t_trig, timeScale: dur, doneAction: 2) );
}
).share;
)

// - 0:13:4.77 - (lijon)
y.free

// - 0:13:5.37 - (tim)
(
SynthDef(\xxy, {|out, sustain = 10, freq = 440|
var env = Line.kr(0.1, 0, sustain, doneAction: 2);
var son = PitchShift.ar(LinCongC.ar(freq * [1, 1.2, 1.5, 1.7]).sum, pitchRatio: 2 + LFNoise0.kr(3.23));
Out.ar(out, son * env);
}).share;
)

// - 0:13:7.7 - (oiata)
z.free;

// - 0:13:11.32 - (tim)
(
p = Pdef(\x,
Pbind(
\instrument, \xxy,
//\server, a.s, // a.s chooses the republic server
\server, a.me, // a.s chooses the republic server
//\where, Prand([\host], 8), // where controls the targer
\where, Prand([\host], 208), // where controls the targer
\dur, 8,
\legato, Pwhite(1, 2),
\freq, Pwhite().linexp(0, 1, 5000, 20000)
).trace
).play;
)

// - 0:13:21.69 - (oiata)
(
SynthDef( \noise, {|out=0,amp=0.1,in=0,freq=400|
ReplaceOut.ar( out, RLPF.ar( In.ar(0), freq, 0.1 ))
}).share;
);

// - 0:13:22.73 - (oiata)
z = Synth.new( \return, target: a.host, addAction: \addToTail );

// - 0:13:29.4 - (oiata)
z.free;

// - 0:13:30.84 - (tim)
(
SynthDef(\xxy, {|out, sustain = 10, freq = 440|
var env = Line.kr(0.1, 0, sustain, doneAction: 2);
var son = PitchShift.ar(LinCongC.ar(freq * [1, 1.2, 1.5, 1.7]).sum, pitchRatio: 2 + LFNoise0.kr(3.23));
Out.ar(out, son * env);
}).share;
)

// - 0:13:33.97 - (host)
(
Pdef( \ringmod,
Pbind(
\instrument, \ringmod,
\amp, 0.05,
\rq, 1,
\dens, 1000,
\degree, Pshuf( [0,2,3,4], 12 ),
// Pn( Pshuf( (0..10), 5 ), inf),
\octave, 3,
\fm, 40,
\dur, 1,
\server, a.s, // a.s chooses the republic server
\where, \host, // where controls the targer
\addAction, \addToTail
)
)
)

// - 0:13:37.78 - (host)
(
Pbind Pshuf Pstutter Plazy
reciprocal sum3rand round <
);

// - 0:13:38.29 - (host)
(
Pdef( \ringmod,
Pbind(
\instrument, \ringmod,
\amp, 0.05,
\rq, 1,
\dens, 1000,
\degree, Pshuf( [0,2,3,4], 12 ),
// Pn( Pshuf( (0..10), 5 ), inf),
\octave, 5,
\fm, 40,
\dur, 1,
\server, a.s, // a.s chooses the republic server
\where, \host, // where controls the targer
\addAction, \addToTail
)
)
)

// - 0:13:43.16 - (oiata)
(
SynthDef( \noise, {|out=0,amp=0.1,in=0,freq=400|
ReplaceOut.ar( out, RLPF.ar( In.ar(in), freq, 0.1 ))
}).share;
);

// - 0:13:43.82 - (host)
(
Pdef( \ringmod,
Pbind(
\instrument, \ringmod,
\amp, 0.05,
\rq, 1,
\dens, 1000,
\degree, Pshuf( [0,2,3,4], 12 ),
// Pn( Pshuf( (0..10), 5 ), inf),
\octave, 5,
\fm, 40,
\dur, 0.3,
\server, a.s, // a.s chooses the republic server
\where, \host, // where controls the targer
\addAction, \addToTail
)
)
)

// - 0:13:44.48 - (oiata)
z = Synth.new( \return, target: a.host, addAction: \addToTail );

// - 0:13:46.54 - (tim)
(
SynthDef(\xxy, {|out, sustain = 10, freq = 440|
var env = Line.kr(0.1, 0, sustain, doneAction: 2);
var son = PitchShift.ar(LinCongC.ar(freq * [1, 1.2, 1.5, 1.7]).sum, pitchRatio: 2 + LFNoise0.kr(3.23)) ! 2;
Out.ar(out, son * env);
}).share;
)

// - 0:13:50.02 - (host)
(
Pdef( \ringmod,
Pbind(
\instrument, \ringmod,
\amp, 0.05,
\rq, 1,
\dens, 1000,
\degree, Pshuf( [0,2,3,4], inf ),
// Pn( Pshuf( (0..10), 5 ), inf),
\octave, 5,
\fm, 40,
\dur, 0.3,
\server, a.s, // a.s chooses the republic server
\where, \host, // where controls the targer
\addAction, \addToTail
)
)
)

// - 0:14:2.23 - (host)
(
Pdef( \ringmod,
Pbind(
\instrument, \ringmod,
\amp, 0.05,
\rq, 1,
\dens, 1000,
\degree, Pshuf( [0,2,3,4], inf ),
// Pn( Pshuf( (0..10), 5 ), inf),
\octave, 5,
\fm, 40,
\dur, Pshuf( [0.3,0.5,0.2,0.6], inf ),
\server, a.s, // a.s chooses the republic server
\where, \host, // where controls the targer
\addAction, \addToTail
)
)
)

// - 0:14:24.1 - (oiata)
z = Synth.new( \noise, target: a.me, addAction: \addToTail );

// - 0:14:35.71 - (oiata)
(
SynthDef( \noise, {|out=0,amp=0.1,in=0,freq=400|
ReplaceOut.ar( out, RLPF.ar( In.ar(in), freq, 0.1 ))
}).share;
);

// - 0:14:37.78 - (host)
(
LFClipNoise Resonz DiskIn Clip Rotate2 EnvGen Delay2
not asInteger ring3 rotate
);

// - 0:14:38.19 - (oiata)
z = Synth.new( \return, target: a.me, addAction: \addToTail );

// - 0:14:51.42 - (lijon)
y.free; y = Synth.new( \jl_thing, target: a.me );

// - 0:14:53.74 - (oiata)
z.set(\amp,0.7);

// - 0:14:57.06 - (host)
(
SynthDef( \ringmod,
{ |out=0,amp=0.1,freq=440, t_trig=1, fm= 100, dur=1, rq=0.01, dens=100|
ReplaceOut.ar( out,
Resonz.ar( In.ar(0,2), freq, rq )
* EnvGen.kr( Env.sine, t_trig, timeScale: dur, doneAction: 2) );
}
).share;
)

// - 0:14:58.83 - (oiata)
z = Synth.new( \return, target: a.me, addAction: \addToTail );

// - 0:15:8.73 - (oiata)
(
SynthDef( \return, {|out=0,amp=0.1,in=0,freq=400|
ReplaceOut.ar( out, RLPF.ar( In.ar(in), freq, 0.1 ))
}).share;
);

// - 0:15:11.17 - (oiata)
z = Synth.new( \return, target: a.me, addAction: \addToTail );

// - 0:15:13.69 - (host)
(
Pdef( \ringmod,
Pbind(
\instrument, \ringmod,
\amp, 0.05,
\rq, 0.4,
\dens, 1000,
\degree, Pshuf( [0,2,3,4], inf ),
// Pn( Pshuf( (0..10), 5 ), inf),
\octave, 5,
\fm, 40,
\dur, Pshuf( [0.3,0.5,0.2,0.6], inf ),
\server, a.s, // a.s chooses the republic server
\where, \host, // where controls the targer
\addAction, \addToTail
)
)
)

// - 0:15:14.18 - (tim)
a.me.meter

// - 0:15:18.17 - (oiata)
z = Synth.new( \return, target: a.host, addAction: \addToTail );

// - 0:15:24.51 - (lijon)
(
SynthDef( \jl_thing,
{ |out=0,amp=0.1,rate=3,decay=4,cf=2000|
// var a = Dust.ar(rate!2);
var a;
// a = Splay.ar( CombL.ar(a,1,[0.01,0.005,0.0025]*0.25,decay));
// a = MoogFF.ar(a,cf,1,10).cosh;
a = {SinOsc.ar(1000.rand+50,0,10*LFNoise1.ar(0.1)).sin}!30;
a = Splay.ar(a);
Out.ar( out, Limiter(a)*amp);
}
).share;
)

// - 0:15:24.55 - (host)
(
Pdef( \ringmod,
Pbind(
\instrument, \ringmod,
\amp, 0.05,
\rq, 0.4,
\dens, 1000,
\degree, Pshuf( [0,2,3,4], inf ),
// Pn( Pshuf( (0..10), 5 ), inf),
\octave, 5,
\fm, 40,
\dur, Pshuf( [0.3,0.5,0.2,0.6]/5, inf ),
\server, a.s, // a.s chooses the republic server
\where, \host, // where controls the targer
\addAction, \addToTail
)
)
)

// - 0:15:24.85 - (oiata)
z.set(\amp,0.1);

// - 0:15:27.11 - (tim)
(
p = Pdef(\x,
Pbind(
\instrument, \xxy,
//\server, a.s, // a.s chooses the republic server
\server, a.me, // a.s chooses the republic server
//\where, Prand([\host], 8), // where controls the targer
\where, Prand([\host], 208), // where controls the targer
\dur, 8,
\legato, Pwhite(1, 2),
\freq, Pwhite().linexp(0, 1, 50, 200)
).trace
).play;
)

// - 0:15:31.26 - (host)
(
Pdef( \ringmod,
Pbind(
\instrument, \ringmod,
\amp, 0.05,
\rq, 0.4,
\dens, 1000,
\degree, Pshuf( [0,2,3,4], inf ),
// Pn( Pshuf( (0..10), 5 ), inf),
\octave, 5,
\fm, 40,
\dur, Pshuf( [0.3,0.5,0.2,0.6]/2, inf ),
\server, a.s, // a.s chooses the republic server
\where, \host, // where controls the targer
\addAction, \addToTail
)
)
)

// - 0:15:31.55 - (lijon)
y.free; y = Synth.new( \jl_thing, target: a.me );

// - 0:15:36.11 - (lijon)
y.set(\amp,0.5)

// - 0:15:37.44 - (host)
(
Pdef( \ringmod,
Pbind(
\instrument, \ringmod,
\amp, 0.05,
\rq, 0.4,
\dens, 1000,
\degree, Pshuf( [0,2,3,4], inf ),
// Pn( Pshuf( (0..10), 5 ), inf),
\octave, 6,
\fm, 40,
\dur, Pshuf( [0.3,0.5,0.2,0.6]/2, inf ),
\server, a.s, // a.s chooses the republic server
\where, \host, // where controls the targer
\addAction, \addToTail
)
)
)

// - 0:15:37.78 - (host)
(
Pbind Pwhite Preject Pbus
sin ratiomidi hypot sumsqr
);

// - 0:15:40.91 - (lijon)
y.set(\amp,1)

// - 0:15:50.02 - (lijon)
y.free; y = Synth.new( \jl_thing, target: a.host );

// - 0:15:50.58 - (tim)
(
p = Pdef(\x,
Pbind(
\instrument, \xxy,
//\server, a.s, // a.s chooses the republic server
\server, a.me, // a.s chooses the republic server
//\where, Prand([\host], 8), // where controls the targer
\where, Prand([\host], 208), // where controls the targer
\dur, 8,
\legato, Pwhite(1, 2),
\freq, Pwhite().linexp(0, 1, 5, 20)
).trace
).play;
)

// - 0:15:53.45 - (lijon)
y.set(\amp,1)

// - 0:15:56.06 - (host)
(
Pdef( \ringmod,
Pbind(
\instrument, \ringmod,
\amp, 0.05,
\rq, 0.4,
\dens, 1000,
\degree, Pshuf( [0,2,3,4], inf ),
// Pn( Pshuf( (0..10), 5 ), inf),
\octave, Pshuf( [6,8,5,3,9,7,8], inf ),
\fm, 40,
\dur, Pshuf( [0.3,0.5,0.2,0.6]/2, inf ),
\server, a.s, // a.s chooses the republic server
\where, \host, // where controls the targer
\addAction, \addToTail
)
)
)

// - 0:16:4.16 - (lijon)
x.free;

// - 0:16:6.32 - (lijon)
y.free

// - 0:16:22 - (tim)
p.free

// - 0:16:31.48 - (oiata)
(
SynthDef( \dust, {|out=0,amp=0.1,in=0,freq=400|
ReplaceOut.ar( out, Dust.ar(20))
}).share;
);

// - 0:16:37.78 - (host)
(
Silent FreqShift In Integrator Rotate2 Line PulseDivider
floor rand2 wrap2 difsqr
);

// - 0:16:48.83 - (oiata)
q = Synth.new( \dust, target: a.host, addAction: \addToTail );

// - 0:16:56.6 - (tim)
p.free

// - 0:17:0.93 - (oiata)
q.free;

Events at the Linux Audio Conference

Wednesday, April 21st, 2010

At the LAC2010 (May 1-4, 2010), I’ll be quite a busy bee!

The program:

  • Saturday – 20.30 – Code Livecode Live – performance – SETUP (MediaLab)
  • Sunday – all day – SuperCollider workshops – beginner’s and advanced levels
  • Monday – 14:45 – 5 years of using SuperCollider in real-time interactive performances and installations – retrospective analysis of Schwelle, Chronotopia and Semblance – Paper Presentation – Large College room
  • Monday – 21:00 – Olympic LiveCoding – SC livecoding Jam-Session – Concert – SJU Jazzpodium – Club
  • Tuesday – 11:30 – Sense/Stage – low cost, open source wireless sensor and data sharing infrastructure for live performance and interactive realtime environments – Paper Presentation – Large College room

Just Noticeable Difference – Semblance

Wednesday, March 3rd, 2010

JND/Semblance at Empac.

March 3th – 6th, 2010

Concept/Direction: Chris Salter
Composition: Marije Baalman and Chris Salter
Programming: Marije Baalman
Light: Harry Smoak
Production Manager: Brett Bergmann
Installation Design and Construction: Duncan Swain and Justine Chibuk
Construction Crew: Marije Baalman, Vincent de Belleval, Duncan Swain, Justine Chibuk, Chris Salter, Brett Bergmann

JND/Semblance at Empac in March

Tuesday, January 19th, 2010

A first version of JND – Semblance will be shown at Empac from March 3rd to 7th.

Sound, vibration and interaction design, as well as programming by me.

Montreal SC Meetings

Thursday, December 17th, 2009

In 2010 I will organise a series of Montreal SC meetings, on Thursday nights every two weeks, from 6.30 – 9pm, in the Concordia EV building (close to Metro Guy/Concordia; you don’t even have to go outside!), starting January 14th.

More info to follow!

They Watch

Monday, October 12th, 2009

I am currently working on sound programming and sound design for the project They Watch, by Workspace Unlimited, which will open at EMPAC, RPI, Troy, US, at the end of the month (October 30th).

Workspace Unlimited
Opening at Empac

Share Montreal 4th Anniversary

Sunday, May 10th, 2009

I will be playing at the Share Montreal 4th anniversary party, on May 31st, in the Eastern Bloc. Starts at 20h00.