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

Impulse Web: third version

what I did (julian)


//impulse network part
(
var nodes, me;
me = "julian";
OSCPort.closeAll;
nodes = OSCNode.tree([
	[\hello, { arg node, mess; mess.postln; }  ],
	[\click, { arg node, dur=0.1; 
				z.source = dur;
				p.gate  
	}]
]);
OSCInPort.new(55555, nodes);

n = [\julian, \john, \ianmike, \pavellloyd, \free];
x = ["192.168.0.120", "192.168.0.116","192.168.0.93","192.168.0.122","192.168.0.123"];
x = x.collect({ arg ip; 
	OSCOutPort.new(55555, ip);
});
f = { arg who, message, a, b, c;
	x.at(n.indexOf(who)).send(message, a, b, c);
};
g = { arg who, string;
	f.value(who, "/hello", me ++ ": " ++ string);
};

b = { arg string;
	x.do({ arg port; port.send("/hello", me ++ ": " ++ Char.tab ++ string) });
};

)

(
Synth.play({
	var out;
	p = Plug.ar(0,0);
	z = Plug.kr(1);
	out = Decay2.ar(p, 0.002, 1*z, Impulse.ar(Lag.kr(p, z*0.1, 100*z, 100*z.max(2)), 1));
	out = Pan2.ar(BPF.ar(out*100, Decay2.kr(p, 0.1*z, 0.01*z, 1, 1)*3000+100, 0.6), LFClipNoise.ar(100/(z+1)))
});

)


g.value(\pavellloyd, "well, no");
f.value(\free, "/hello", "hi!");

b.value("try that: { Formant.ar(10, 200, 300, 0.1) }.play; ");
b.value("life is short, art is long");
b.value("");
f.value(\julian, "/click", 1.2);
f.value(\pavellloyd, "/click", 0.2);
f.value(\ianmike, "/click", 0.2);
f.value(\free, "/click", 0.1);
f.value(\john, "/click", 1.1);

p.gate;


Task.new({
	15.do({ arg i;
	 	f.value(\john, "/click", (1-(i/15)));
	 	0.21.wait;
	});
});

Task({
	15.do({ arg i;
	 	f.value(\julian, "/click", (1-(i/15))/1);
	 	0.011.wait;
	});
});

******
/*
authors so far:
jrh
*/


Link to this Page