Processing+Arduino+Supercollider+emacs …lets make something

 Processing+Arduino+Supercollider+emacs …lets make something

This was posted 4 days ago. It has 5 notes. .

live coding drone sounds with ChucK #6

This was posted 1 month ago. It has 1 note. Played 20 times.

live coding drone sounds with ChucK #5

This was posted 1 month ago. It has 0 notes. Played 6 times.

live coding drone sounds with ChucK #4

This was posted 1 month ago. It has 1 note. Played 10 times.

live coding drone sounds with ChucK #3

This was posted 1 month ago. It has 1 note. Played 10 times.

live coding drone sounds with ChucK #2

This was posted 1 month ago. It has 0 notes. Played 0 times.

(Source: hellocatfood)

This was posted 1 month ago. It has 6 notes. .

live coding drone sounds with ChucK #1

This was posted 1 month ago. It has 1 note. Played 10 times.

some progress with Chuck & Arduino step sequencer

Okay, more progress with Chuck & Arduino - through nested arrays I got better results by writing the values of ints (an array which holds the values from the x4 potentiometers) to another array which is then ChucKed to a sine wave frequency (hope that makes sense!). This means I have more of a step sequencer  controlled by x4 potemeiters rather than a bunch of sine waves playing at the same time.

However for the values to change I have to replace the currently running shred each time- so what is left is have the sine waves change while the shred is running- so it’s more of a live instrument …back to the lab!

///////////////////CODE///////////////////

SerialIO.list() @=> string list[];
Gain master => JCRev j => dac;
SinOsc s1 => master;

0.9 => master.gain;
0.09 => j.mix;
0.02 => j.gain;


for(int i; i < list.cap(); i++)
{
    chout <= i <= “: ” <= list[i] <= IO.newline();
}

0 => int device;
if(me.args()) me.arg(0) => Std.atoi => device;

SerialIO cereal;
cereal.open(device, SerialIO.B9600, SerialIO.ASCII);

while(true)
{
    cereal.onInts(4) => now;
    cereal.getInts() @=> int ints[];
    chout <= “ints: “;
   for(int i; i < ints.cap(); i++)
    {
        chout <= ints[i] <= ” “;
 
        [ints[0]/30, 100, ints[1]/30, ints[2]/30, 0, ints[3]/30] @=> int A[];
        for( 0 => int b; b < A.cap(); b++) // if i is less than the max No of A[]
   
{
       
   Std.ftom(A[b]) => s1.freq;
  


       
       
130::ms => now;
    }
}
    chout <= IO.newline();
   
 

 
}

This was posted 2 months ago. It has 0 notes.

Chuck & Arduino part2

Latest work with Arduino & ChucK, no much a change but the use of  JCRev (reverb) has improved the sound a bit. If I want to create a step sequencer however,  I will have to make use of & modulo and more conditional if/or statements.

Will come back to ChucK at some point  but at the moment as I have a few Arduino & Pure Data projects in mind I am keen to complete

////////////////////////////////////////////////////////////////////
SerialIO.list() @=> string list[];
Gain master => JCRev j => dac;
 SinOsc s1 => master;
  SinOsc s2 => master;
    SinOsc s3 => master;
     SinOsc s4 => master;
          

0.01 => j.mix;
0.2 => j.gain;
for(int i; i < list.cap(); i++)
{
    chout <= i <= “: ” <= list[i] <= IO.newline();
}

0 => int device;
if(me.args()) me.arg(0) => Std.atoi => device;

SerialIO cereal;
cereal.open(device, SerialIO.B9600, SerialIO.ASCII);

while(true)
{
    cereal.onInts(4) => now;
    cereal.getInts() @=> int ints[];
    chout <= “ints: “;
   for(int i; i < ints.cap(); i++)
    {
        chout <= ints[i] <= ” “;
          //0.6 => s.gain;
      
     // Std.mtof(ints[3]) =>a.freq ;
       // Std.mtof(ints[i]) =>a.freq ;
       
   ints[0] => s1.freq;
        ints[1] => s2.freq;
         ints[2] => s3.freq;
         ints[3] => s4.freq;
0.9::ms => now;
    }
   
    chout <= IO.newline();

}

This was posted 2 months ago. It has 0 notes.