Software Implementing TUIO

TUIO Client Reference Implementations

The following TUIO 1.1 libraries are part of the reacTIVision framework and are available for the most common programming languages and media environments. Third party implementations for further programming languages are listed below. The source code of these TUIO 1.1 reference implementations is licensed under the LGPL and hosted publicly on Github. You are most welcome to contribute to the further development of these TUIO reference implementations, and can freely use them for the implementation of your own TUIO enabled applications.

TUIO Client Implementations

TUIO Application Frameworks

  • Open Frameworks: ofxTableGestures for multitouch applications
  • libavg XML-based layout language and python scripts
  • Cruiser a cross-platform framework for tabletop applications.
  • Ogre3D: Touchscape SDK for multi-touch 3D applications
  • Krestianstvo SDK, a virtual learning environment
  • Unity3D: unity3d-tuio TUIO framework for Unity3d from Mindstorm
  • Unity3D: uniTUIO CE multitouch support for the popular game engine
  • Unity3D: uniducial fiducial support for the popular game engine
  • Silverlight: MIRIA a multi-touch gesture framework for MS Silverlight
  • Java: MT4j an Java multi-touch development platform built upon TUIO input
  • Python: PyMT multi-touch package with TUIO input
  • Python: Kivy a cross-platform NUI application framework
  • Pure Data: fid_abs TUIO application framework
  • Processing: tuioZones gesture/widget API
  • iGesture A General Gesture Recognition Framework
  • Lightjams TUIO for DMX lightening
  • Grafiti: a gesture recognition framework based on the C# TUIO API
  • Cocoa: Coconuit Natural User Interface and Tangibles Framework
  • QT: qtuio a Qt interface for the TUIO protocol.
  • Piccolo2D piccolo2dtouch adds Touch Event Handlers through TUIO.
  • TISCH: a cross-platform, cross-device multitouch development framework
  • Squidy a multi-device interaction library based on TUIO
  • NodeBox: TUIO library
  • WPF: Multitouch Framework for Windows Presentation Foundation
  • WPF: Tangibilis framework for Windows Presentation Foundation
  • WPF: Breeze multi-touch framework for Windows Presentation Foundation
  • MultiTouch.Framework: a native Cocoa multi-touch framework for Mac OS X
  • Max/MSP: MMF multi-touch framework
  • Open Exhibits: an open source multitouch, multiuser SDK for Flash by Ideum.

Commercial TUIO Software

  • GestureWorks: a Flash Multi-Touch framework by Ideum
  • PQ Labs: Multi-Touch SDK & Gesture Library

TUIO hardware support

In order to support the further development of the TUIO platform, we are looking for hardware donations of various hardware: iOS and Android tablets, Touchscreen hardware, Windows 7 Multitouch Notebooks, Netbooks and Tablets, MS Surface, Samsung SUR40, Magic Trackpad or any other devices to evaluate their existing or potential TUIO support. Please get in touch with martin_at_tuio_dot_org for further information!

TUIO Tracker Implementations

  • reacTIVision: a computer vision framework for object tracking and basic multi-touch
  • Community Core Vision: an OpenFrameworks based multi-touch tracker (formerly tbeta)
  • Movid: a Modular Open Vision Interaction Daemon
  • Scene: an open source object tracking framework
  • TuioKinect: a simple hand gesture tracker for Kinect
  • KinectTouch: turns any surface into a TUIO touchpad using Kinect
  • OpenNI2TUIO: an OpenNI (skeleton) based TUIO tracker for Kinect
  • PointViewerTUIO: a PrimeSense NITE based TUIO tracker for Kinect
  • TUIO Kinect for Open Exhibits.
  • SurfaceToTuio: adds TUIO support to the MS Surface (part of the Squidy project)
  • GilDiamondTouch: a TUIO bridge adding multitouch to the MERL Diamondtouch platform
  • touché: an open-source tracking environment for optical multi-touch tables based on MacOS X Core technologies
  • Touchlib: the first free library for multi-touch surfaces based on FTIR and DI
  • Surface Tracker: a low latency optical finger tracker
  • xTouch: a Mac OS X multi-touch tracker
  • BBTouch: a Mac OS X multi-touch application framework
  • ShinyTouch: an optical finger tracker based on screen reflection
  • Ortholumen: a light pen tracker
  • gst2tuio: a gstreamer plugin for blob detection, sending TUIO
  • bamboo-tuio: TUIO for Wacom Bamboo (Pen&)Touch tablets
  • Tongseng: a TUIO wrapper for Macbook multi-touch pads
  • Wiimote Whiteboard: platform-independent Wiimote IR tracker supporting TUIO
  • WiimoteTUIO: another application sending the locations of IR sources detected by a Wiimote via TUIO
  • WiiTUIO: another WiiMote application generating TUIO and Windows 7 touch events
  • TuioPad: open source TUIO multi-touch controller for iOS devices
  • TUIOdroid: open source TUIO multi-touch controller for Android devices
  • OSCemote: another iPhone remote control including a TUIO multi-touch controller
  • TuioTablet: a TUIO controller for the Maemo platform

TUIO Server Reference Implementations

TUIO output Bridges

  • Touch2Tuio: forwards native Windows 7 touch messages to TUIO clients
  • mtdev2tuio: converts Linux touch events from libmtdev to TUIO 1.1
  • TouchToTuio: N-Trig panel TUIO driver (e.g. Dell Latitude XT2).
  • WM_TOUCH: a Windows 7 Touch Event to TUIO bridge
  • Touchsmart TUIO: a TUIO bridge application for Nextwindow API-compatible touch screens
  • ThreeEmTu: translates the raw serial data from the 3M M2256PW Multitouch monitor into TUIO
  • Stantum-TUIO-bridge: adds TUIO output to Stantum multi-touch screens

TUIO input Bridges

  • Multi-Touch Vista Windows HID driver, input management layer with a TUIO input provider.
  • TuioForAndroid TUIO input service for the Android platform.
  • SGDriver a multi-touch gesture recognizer generating Windows events.
  • xf86-input-tuio a multi-pointer Xorg TUIO input driver (by Ryan Huffman)
  • Compiz Multi-touch Plugin (by J.A.McNaughton)
  • TUIO_Mouse a platform independent TUIO Mouse and Touchpad driver
  • TUIO Mouse a Windows TUIO Mouse driver (by Progen Labs)

TUIO Simulators

  • Java based standard TUIO Simulator application (platform independent)
  • Windows MultiPoint TUIO allowing multiple mouse input
  • Multi-Platform C++ SimpleSimulator (source, all platforms)
  • SimTouch: a TUIO/FlashXML simulator using the Adobe Air runtime
  • QMTsim: Qt based multi-touch simulator alternative (Win32, Linux)

TUIO Gateways

  • Throng a cross-platform TUIO multiplexer (by Johannes Luderschmidt)
  • another TUIO Multixplexer (by Stefan Schlupek)
  • udp-flashlc-bridge a TUIO/UDP to TUIO/FlashLC translator (by Georg Kaindl)
  • udp-tcp-bridge a TUIO/UDP to TUIO/FlashTCP translator (by Memo Akten)
  • TouchGateway another TUIO/UDP to TUIO/FlashTCP translator (by Dean North)
  • Oscar a TUIO/UDP to TUIO/Flash XML translator (by Fabio Cionini)
  • OSCulator OSC router with TUIO support.
  • OSCRecordTools allows the recording, replay and distribution of OSC messages (by Carles Fernandez)
  • ThrongOSCDeck another OSC & TUIO Recorder and Player (by Johannes Luderschmidt)