Apparently Flash 10.1 and AIR 2.0 can now support direct TUIO OSC UDP without that weird conversion process. has anyone tried this out yet? what i needed in the flash apps to do this?
I have a table with Flash apps but i want the table to be able to also use the Windows 7 driver but i cannot do both since CCV makes u choose between OSC tuio UDP and tuio for flash which converts from UDP to TCP and then sent to the flash apps.
it would be nice to have the flash apps work off regular tuio feed.
Also if anyone has done this i was also wondering if they noticed improvements in performance. there is no conversion anymore so i am feeling its faster and i read the reports by adobe but would like to hear from the community for real world responses.
yeah i have seen it, but i am worried that running both will further increase processing power. any ideas about the original question regarding new Flash and Air?
there are plans to add a TUIO/UDP input module to the TUIO AS3 reference implementation,
at the moment this library already supports TUIO/TCP and TUIO/FLC, adding another module should be trivial.
http://code.google.com/p/tuio-as3/
@machinegun: the Flash mode in CCV is still the old Flash XML encapsulation, which is now obsolete
The benefit of using XML is that it is c++ accelerated. I have yet to look into the source that drives the TUIO/TCP method, but one way of potentially speeding up the parsing, if you are only passing native objects into flash, is to build the parser in c and embed it into your app using alchemy. Adobe open sourced the alchemy code base and I’ve been toying with the idea of implementing their AMF protocol to pass objects to and from embedded c libraries and as3. Could be a community effort at that point as that would not be an easy task.
I’ve been able to get another custom OSC working with Flash 10.1 and I can probably make the necessary changes to the TUIO Actionscript class. Is there someone who is pretty familiar with the TUIO OSC binary format and wants to help me out?
there are plans to add a TUIO/UDP input module to the TUIO AS3 reference implementation,
at the moment this library already supports TUIO/TCP and TUIO/FLC, adding another module should be trivial.
http://code.google.com/p/tuio-as3/
@Martin:
Just wondering whether there has been any progress on adding the TUIO/UDP input module? I’ve created a UDPConnector class that implements IOSCConnector as well as a new udp package that contains modified OSCSocket and OSCEvent classes based on the new DatagramSocket in AIR 2.0 however, I’m struggling to test whether it all works properly since I couldn’t even get the TCP/FLC demo to work (I’ve only been playing with all this for a couple days). Before I found out about your library I had a shot at building my own UDP connection and managed to get the raw TUIO OSC data from CCV into my AIR app no problem.
If you want any of my code then just ask but as you said yourself, adding UDP support should be trivial - any idea when you might have this ready?
OK… so I played about with the code a bit more and I think I’ve got CCV speaking to AIR directly through a UDP connection (instead of TCP or FLC). I’ve attached a UDP_Example.zip file that contains a modified version of the ‘tuio-as3’ library (0.5 release). As I mentioned before, all I have done is added a UDPConnector class within the org.tuio.osc package as well as an org.tuio.udp package that contains new OSCSocket and OSCEvent classes. In order to get this to work make sure CCV is sending out OSC rather than TCP (by clicking the checkbox or pressing ‘t’ and that you are targeting AIR 2.0 (by downloading the beta from Adobe Labs and following these instructions)
I’ve not yet got my multi-touch surface setup yet so I’ve only tested it with the standard video feed from CCV - anyone fancy testing it with a working setup to see how it compares to the TCP / FLC methods? Gimme a shout if you run into any problems.
I managed to hack together a very basic table and I can confirm that the UDP connection between CCV and AIR does work. As I do not have anything to compare it to (since I’ve never tried the other methods), it’s difficult to judge the performance - all I can say is that I am very happy with the responsiveness and it certainly feels quicker than the flash-based demos I have seen online.
That is only if you work with the built in multi-touch gestures (which are pretty limited anyway). You are free to create your own high level gesture recognition or just work directly with the low level data coming out of CCV. In any case, UDP is simply a faster way to get data from CCV into your AIR app, what you do with that data is a separate matter - the capabilities / limitations of AIR are the same regardless of what type of connection is used.
Cityguru, there’s no reason this can’t be implemented with the Touchlib TouchAPI so that all the touchevents still work and the rotate/scale/move classes all still work. You really dont need the built in gesture events from flash because we already implement those things in our own API.