More Related Content
More from Atsushi Tadokoro (20)
Sbaw090929
- 26. //
//
{ }
//1. 2.
( )
//1. ( ) 2.
[ ]
//
((1+2)*3).value;
{ (1+2)*3 }.value;
{ [1, 2, 3].size }.value;
{ [1, 2, 3].wrapAt(1) }.value;
{ var a=1, b=2; (a+b)*3 }.value;
// ( ) arg:
f = { arg a, b; (a+b)*3 };
f.value(1, 2).postln;
f.value(3, 4).postln;
- 27. // 1
{
SinOsc.ar(440, 0, 0.2);
}.play;
// 2
//
{
var a1, a2;
a1 = SinOsc.ar(440, 0, 0.2);
a2 = SinOsc.ar(660, 0, 0.2);
a1 + a2;
}.play;
- 28. // Sin
{
var freq=440, detune=1, a1, a2;
a1 = SinOsc.ar(freq, 0, 0.2);
a2 = SinOsc.ar(freq + detune, 0, 0.2);
[a1, a2];
}.play;
//
{
var freq=440, detune=1, a1, a2;
a1 = SinOsc.ar([freq, freq+detune], 0, 0.2);
freq = freq * 1.5;
a2 = SinOsc.ar([freq, freq+detune], 0, 0.2);
a1+a2;
}.play;
- 29. // !!
// …
//SynthDef → !!!
SynthDef(" ", { }).send( );
// Sin SynthDef
SynthDef("unari", {
arg freq=440, detune=1, amp=0.2;
var a1, a2;
a1 = SinOsc.ar([freq, freq+detune], 0, amp);
freq = freq * 1.5;
a2 = SinOsc.ar([freq, freq+detune], 0, amp);
// Out.ar( , );
Out.ar(0, a1+a2);
}).send(s);
- 30. //
s.sendMsg("/s_new", "unari", x = s.nextNodeID, 0, 1);
// (arg)
s.sendMsg("/n_set", x, "freq", 110);
s.sendMsg("/n_set", x, "freq", 80);
//
s.sendMsg("/n_free", x);
// OSC!!!
// OSC
s.dumpOSC(1);
// OSC
s.dumpOSC(0);
- 32. //
SynthDef("unari", {
arg freq=440, detune=1, amp=0.2;
var a1, a2;
a1 = SinOsc.ar([freq, freq+detune], 0, amp);
freq = freq * 1.5;
a2 = SinOsc.ar([freq, freq+detune], 0, amp);
// Out.ar( , );
Out.ar(0, a1+a2);
}).send(s);
- 35. //
SynthDef("unari", {
arg freq=440, detune=1, amp=0.2;
var a1, a2;
a1 = SinOsc.ar([freq, freq+detune], 0, amp);
freq = freq * 1.5;
a2 = SinOsc.ar([freq, freq+detune], 0, amp);
// Out.ar( , );
Out.ar(0, a1+a2);
}).send(s);
- 36. // "/s_start"
o = OSCresponderNode(nil, '/s_start', {
s.sendMsg("/s_new", "unari", x = s.nextNodeID, 0, 1);
}).add;
// "/s_stop"
p = OSCresponderNode(nil, '/s_stop', {
s.sendMsg("n_free", x);
}).add;
- 38. // /tr/osc 1 /tr/osc 0
(
q = OSCresponderNode(nil, '/tr/osc', {
arg time,responder,msg;
if(msg[1] == 1,
{s.sendMsg("/s_new", "unari", x = s.nextNodeID, 0, 1)},
{ s.sendMsg("n_free", x)}
);
}).add;
// SynthDef Responder
//
r = OSCresponderNode(nil, '/set/osc', {
arg time,responder,msg;
s.sendMsg("/n_set", x, "freq", msg[1]);
}).add;
)
- 40. // FM
(
SynthDef("fm", {
arg bus = 0, freq = 110,
carPartial = 0.5, modPartial = 0.5,
detune=2.0, index = 3, mul = 0.2, ts = 1;
var mod;
var car;
mod = SinOsc.ar(freq* modPartial, 0,
freq*index*LFNoise1.kr(5.reciprocal).abs);
car = SinOsc.ar([(freq*carPartial)+mod,(freq+detune*carPartial)+mod] ,
0, mul);
car = FreeVerb.ar(car, 0.5, 0.8, 0.2, 1.0);
Out.ar(bus, car);
}).load(s);
- 41. // ON/OFF
t = OSCresponderNode(nil, '/tr/fm', {
arg time,responder,msg;
if(msg[1] == 1,
{ s.sendMsg("/s_new", "fm", x = s.nextNodeID, 0, 1)},
{ s.sendMsg("n_free", x)}
);
}).add;
// SynthDef Responder
//
u = OSCresponderNode(nil, '/set/fm', {
arg time,responder,msg;
s.sendMsg("/n_set", x, "carPartial", msg[1], "modPartial", msg[2],
"index", msg[3]);
}).add;