• Click here for a list of all my projects.
  • Click here for Touchlib info. Source code here.
  • Click here for our multitouch community site.

Tuesday, February 13, 2007

Preliminary OSC support added to touchlib


I checked in the first version of a small demo app built on touchlib that outputs presses using the TUIO and OSC protocols. Pictured on the left is one of the reference apps which responds to the TUIO protocol taking messages from my new OSC app. This allows you to distribute the processing of touch messages and applications across two machines (OSC operates over regular internet cables). It can also run on one machine. This will also let you write multitouch applications in things like Flash (using FLOSC or Flash 9) and Processing - anything that responds to OSC. This should lower the bar for those looking to write some apps. Note: these changes now require you to have the OSCPack files downloaded in order to compile the OSC example app. Also set the OSCPACK_HOME environment variable to the root dir where you have OSCPack installed.
You can download the pre-compiled executable files and associated DLL's here. If you have a working hardware setup (including projector), you'll need to run the configapp.exe to calibrate your stuff first. Those without a full FTIR hardware setup may not get much use out of this. Note: there may be some bugs with the OSC.exe app. I will take a look at fixing these soon.
Get the latest updates from Google Code.

Labels: ,

7 Comments:

Martin said...

Hi David,
I have been following your work for some while with interest, and I think that your implementation of TUIO for touchlib is really great news! As far as I can say from looking at the sreenshot you provide, it seems that you are using the TUIO object path. I'd recommend that you should better use the TUIO cursor path though, which we designed for multi touch interfaces, since cursors generally do no provide a symbol ID or rotation angles like the tangible objects.
Probably you could get in touch with me to discuss the details.
thanks for your contribution,
Martin.K
mkalten[at]iua[dot]upf[dot]edu

8:48 PM  
David Wallin said...

Hey Martin,

That sounds good - where can I find info info on the cursor path format?

5:01 AM  
David Wallin said...

btw, thanks for your work on the TUIO protocol. :)

5:10 AM  
Marc said...

I can't wait to try this out myself :)

3:39 PM  
Marc said...

Are you sending your OSC-Messages over TCP? Because Flash 9 doesn't support UDP. And if you do, how hard would it be to serve the messages to a TCP-port?

4:10 PM  
David Wallin said...

I believe the OSC protocol is UDP only. You can use FLOsc to provide support for flash (it's basically a simple java server that turns OSC messages into xml and serves them to flash).

1:50 PM  
Marc said...

I think it would be better to not use FLOsc with the time-consuming xml-wrapping of the osc messages (flosc- and flash-wise) - it would be much better to communicate directly with flash. Though i read somewhere on a berkley-site that osc is transportlayer-independent, most of it's implementations are working on top of udp =/

isn't there any other way to serve the data on a normal tcp-port?

Alas, maybe i have to set up a small processing sketch with oscP5 (http://www.sojamo.de/iv/index.php?n=11) ... :)

4:58 PM  

Post a Comment

<< Home