to be tested still.
RecordAddr and RenderAddr:
RecordAddr.sc (new version 10 July 04 )note that sendRaw is not implemented.
this comes closer to a good solution. there is a quick test here:
RecordAddr
a = RecordAddr("127.0.0.1", 57110);s = Server(\test, a);
s.makeWindow.boot;
s.addr.start;
s.addr.score.score.postcs;
{ SinOsc.ar(500, 0, 0.1) }.play(s);
s.addr.score.postcs;
s.addr.score.recordNRT("test.osc", "testNRT.aif")
RenderAddr
a = RenderAddr("127.0.0.1", 57110);
s = Server(\test, a);
s.makeWindow.boot;
s.addr.start;
s.addr.score.score.postcs;
a.lifeTime = 3;
SynthDescLib.read;
Pbind(\server, s).play(a);
Renderer
Renderer.sccould be used like this:
SynthDescLib.read;
(
a = Renderer(3.0); // render 3.0 seconds
Pbind(
\freq, 500,
\server, a
).play(a);
)
a.score.score
(
a = Renderer(3);
Routine({
SynthDef("test", { arg freq; Out.ar(0, SinOsc.ar(freq, 0, 0.1)) }).send(a);
0.5.wait;
a.sendMsg("/s_new", "test", 1889);
0.3.wait;
a.sendMsg("/c_set", 0, 700);
0.2.wait;
a.sendMsg("/n_map", 1889, \freq, 0);
0.1.wait;
a.sendMsg("/c_set", 0, 500);
1.wait;
a.sendMsg("/n_free", 1889);
}).play(a);
)
a.score.score.postcs;
a.score.recordNRT("test.osc", "testNRT.aif")