A TUIO simulator creates a message like this:

set obj 0 27 0.425 0.78 3.1415927 0.16233395910432108 0.16233395910432108 0.0 -4.908136E-4 0.0

This happens on localhost( 127.0.0.1:3333) port 3333 and i can watch it by using a network analyzer. I'm not sure if the first two string
parameters "set" and "obj" should be handled but at least i'm expecting to handle first two values "0" and "27". If i succeed i'll be able
to control any instrument parameters. Below there is the data format for the TUIO protocol and an example csd code. I'm working on a linux
machine.

TUIO protocol data format
------------------------------------------------------
s sessionID, temporary object ID, int32
i classID, fiducial ID number, int32
x, y, z position, float32, range 0...1
a, b, c angle, float32, range 0..2PI
X, Y ,Z movement vector (motion speed & direction), float32
A, B, C rotation vector (rotation speed & direction), float32
m motion acceleration, float32
r rotation acceleration, float32
P free parameter, type defined by OSC packet header

;OSClisten.csd
;---------------------

<CsoundSynthesizer>
<CsOptions>
-+rtaudio=alsa -o dac -B4096
</CsOptions>

<CsInstruments>
  sr = 44100
  ksmps = 100
  nchnls = 1

  gihandle OSCinit 3333

  instr   1
    kf1 init 0
    kf2 init 0
nxtmsg:
    kk  OSClisten gihandle, "/foo/bar", "ff", kf1, kf2
if (kk == 0) goto ex
    printk 0,kf1
    printk 0,kf2
    kgoto nxtmsg
ex:
  endin
</CsInstruments>

<CsScore>
i1 0 3600
e
</CsScore>
</CsoundSynthesizer>

By the way, i tried to change the parameter "ff" as "ss", "ii" and the "print" statement. But there's no terminal output for "kf1" and "kf2". THANKS.


Arda EDEN
Cumhuriyet University
Faculty of Fine Arts
Department of Music Technology