<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>GuruBlog : Articles about supercollider</title>
    <description>local-guru.net</description>
    <link>http://www.local-guru.net/blog</link>
    <ttl>40</ttl>
    <item>
      <title>osc events in supercollider</title>
      <link>http://www.local-guru.net//blog/2009/3/8/osc-events-in-supercollider</link>
      <description>&lt;p&gt;&lt;a href="http://supercollider.sourceforge.net/"&gt;supercollider&lt;/a&gt; uses osc to controll the synthisizers internally,
but i wanted a supercollider synth to react to my osc events instead of having to send supercollider-osc
events from my app&lt;/p&gt;

&lt;p&gt;after some research in the help files i found out that
&lt;a href="http://supercollider.svn.sourceforge.net/viewvc/supercollider/trunk/build/Help/Control/OSCresponderNode.html"&gt;OSCresponderNode&lt;/a&gt;
does the trick.&lt;/p&gt;

&lt;p&gt;the code example shows how to register for an osc event and trigger a synth. now i can use a supercollidersynt
with my &lt;a href="http://www.local-guru.net/blog/2009/01/20/osc-sequencer-in-ruby"&gt;ruby osc sequencer&lt;/a&gt;&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;(
    SynthDef( "guru2", { arg mfreq=40;
        var env, amp;

        env = Env.perc( 0, 0.2 );
        amp = EnvGen.kr(env, 1, doneAction:2);

        Out.ar([0,1], SinOsc.ar( mfreq.midicps ) * amp * 0.5);
    }).send(s);
)

n = NetAddr("127.0.0.1", 57120)
o = OSCresponderNode(nil, '/melody', { |t, r, msg| Synth( "guru2", [\mfreq, msg[1]]);  }).add;

o.remove
&lt;/code&gt;&lt;/pre&gt;
</description>
      <pubDate>2009-03-08T17:18:00+01:00</pubDate>
    </item>
    <item>
      <title>SuperCollider on Linux</title>
      <link>http://www.local-guru.net//blog/2008/8/17/supercollider-on-linux</link>
      <description>&lt;p&gt;Today i have installed &lt;a href="http://supercollider.sourceforge.net/"&gt;supercollider&lt;/a&gt; on my ubutu system following &lt;a href="http://swiki.hfbk-hamburg.de:8888/MusicTechnology/847"&gt;this instructions&lt;/a&gt;. SuperCollider is a environment and programming language
for audio synthesis simliar to chuck. SuperCollider can run on a network and uses OSC events for comunication.&lt;/p&gt;

&lt;p&gt;After looking around in the source tree i found a plugin for vim :-)&lt;/p&gt;

&lt;p&gt;Installations is a bit quirky (the folders 'ftpplugin', 'syntax' and 'intend' needed to be copied to ~/.vim by hand) but now
i can edit my sc code using my vim - veeeery cool :-)&lt;/p&gt;

&lt;p&gt;single lines of code can be sent to the server using F6 codeblocks are sent to the server using F5.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;s.boot
(
c = { arg f=900;
    var x;
    x = SinOsc.ar(f);
    x * 0.1
}.play;
)

c.set(, 400);
c.set(, 670);
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;to start te server the first line has to be sent to sclang (using F6). Then the code block
starting line 2 is sent to the server (using F5)... tata - a sine wave.&lt;/p&gt;

&lt;p&gt;sending the last 2 lines (F6 again) change the frequency of the running synth.&lt;/p&gt;

&lt;p&gt;F12 can be used to turn all sounds off.&lt;/p&gt;
</description>
      <pubDate>2008-08-17T09:35:00+02:00</pubDate>
    </item>
  </channel>
</rss>

