Hey Enrike:

It works! Thanks so much.

Althought when I killed the ChucK window by CTRL-C,
the python IDLE shell hung/crashed.

But this is great..I have almost everything I need for the
demo I'm making. I would still like to read something
introductory on OSC that you mentioned.

What I've found so far on the internet assumes I know
way too much else, except OSC itself.

cheers,
-------    -.-
1/f   )))  --.
-------    ...
http://www.algomantra.com

On 10/6/07, altern <altern2@gmail.com> wrote:
hi

I have added a ChucK example to the SimpleOSC zip. Download it from
Python section at http://ixi-audio.net/backyard and run the
apptemplate.py together with the chuck example. They should talk each
other. If anyone sees anything wrong with it or want to improve the
example please send it to the list and i will put it in the zip. I
havent done much ChucK for the last months so i am not sure it is right.

if you have any question just ask, we might have some introductory text
for OSC that could help as well.

enrike

AlgoMantra(e)k dio:
> thanks enrike, I'll appreciate that very much.
>
> Meanwhile I've got the SimpleOSC module off IXI
> and I'm trying to understand it. In the links section...
> http://www.ixi-software.net/workshops/folly/links.html
> ....I found a few links are broken in category "Python":
>
> eg  -- >
> http://user.cs.tu-berlin.de/%7Ekerstens/pub/
> <http://user.cs.tu-berlin.de/%7Ekerstens/pub/ >
> (404 not found)
> http://galatea.stetson.edu/%7EProctoLogic/
> (goes to wiretap link, which times out....)
>
>
>
> -------    -.-
> 1/f   )))  --.
> -------    ...
> http://www.algomantra.com
>
> On 10/5/07, *altern* <altern2@gmail.com <mailto: altern2@gmail.com>> wrote:
>
>     i did exactly that last year, let me search my files and see if i find
>     the scripts ...
>
>     enrike
>
>     AlgoMantra(e)k dio:
>      > If anyone could give me some pointers here, I'll be grateful:
>      >
>      > I KNOW: Python (decent), Pygame (medium), ChucK (n00bie), OSC (null)
>      >
>      > ZERO KNOWLEDGE: OSC ( I have NO idea what it is, except that
>      > it may be useful for interfacing two platforms on the same computer.
>      > I know there is a Python wrapper available, but I have no idea
>     how to
>      > use it)
>      >
>      > I WANT: chucK to speak/listen to a python script in realtime.
>      >
>      > WHAT: The GUI is a game/visualisation in Pygame. It responds
>      > visually to messages coming in from a Chuck audio set
>      > ( is one of them a "server" type thingie?) and sends back
>      > new messages which manipulate the sound. They way the
>      > 'game' is played visually modifies the music.
>      >
>      > To put the problem simply: ChucK <<-->>OSC<<-->>Python?
>      >
>      > => ??
>      >
>      >
>      >
>      >
>      >
>      > -------    -.-
>      > 1/f   )))  --.
>      > -------    ...
>      > http://www.algomantra.com
>      >
>      >
>      >
>     ------------------------------------------------------------------------
>      >
>      > _______________________________________________
>      > chuck-users mailing list
>      > chuck-users@lists.cs.princeton.edu
>     <mailto: chuck-users@lists.cs.princeton.edu>
>      > https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
>
>     _______________________________________________
>     chuck-users mailing list
>     chuck-users@lists.cs.princeton.edu
>     <mailto:chuck-users@lists.cs.princeton.edu >
>     https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
>     < https://lists.cs.princeton.edu/mailman/listinfo/chuck-users>
>
>
>
>
> --
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> chuck-users mailing list
> chuck-users@lists.cs.princeton.edu
> https://lists.cs.princeton.edu/mailman/listinfo/chuck-users




1 => int on;

// init OSC /////////////////////////////////////////
OscSend send; //send OSC
send.setHost( "localhost", 9001);
OscRecv recv; //recv OSC
9000 => recv.port ;
recv.listen(); // start listening (launch thread)


// OSC classes and functions ////
class OscListener { // general listener template
    OscEvent e;

    fun void action(){} //to be extended

    fun void bind( string arg ){
            recv.event(arg) @=> e; // bind event to address
            spork ~ oscShred( ); // start listening to incomming osc
    }

    fun void oscShred() {
            while (on){
                    e => now;
                    if ( e.nextMsg()){ action(); }
            }
            //<<<"exiting shred", me>>>;
            //machine.remove( s.id() );
    }
}
/////////////////////////////////////////

// Listeners
class Listener1 extends OscListener{
    fun void action(){ <<<"chuck: listener1", e.getInt()>>>; }
}


// create instance and bind address
Listener1 lis1;
lis1.bind( "/test, i" );



<<<"chuck osc receiver up and runing ...">>>;

//entering main loop //
while (on){ // quits when on is false
        send.startMsg( "/test", "i" );
        1 => send.addInt; // send connected message to graphics
        0.2::second => now;
}

<<<"quiting ChucK">>>; //print quit


_______________________________________________
chuck-users mailing list
chuck-users@lists.cs.princeton.edu
https://lists.cs.princeton.edu/mailman/listinfo/chuck-users




--