FaceTracking with just your webcam!
OSC Logo Forward

OSC (Open Sound Control): network protocol to communicate with external Tracker(s) or programs.


Turn your iPhone, iPad or other OSC-capable device into a headtracker for FaceTrackNoIR!


The OSC-tracker plugin is brand new and may well prove to be the most promising tracker so far. The OpenSoundProtocol is basically an open network protocol and it can be used with UDP, Bluetooth etc. For now, the OSC-tracker uses UDP.


A very nice,  cheap (€0,99) and reliable App using OSC was developed by BitShape Software. It's a very intuitive App, which sends OSC-messages to any computer in the network, using UDP. The OSC-tracker for FaceTrackNoIR was developed using this App as tracker and the developers of GyrOSC have approved. The App can run "in the background", so you can use another App (for example VR) at the same time. Remark: until now, phones only determine Yaw, Pitch and Roll, so 3DOF...



iPhone/iPad HeadTracker

Testing the OSC protocol:

If you want to test the OSC protocol on your iPhone or iPad prior to buying the GyrOSC App, you can download the free App called




If you have questions regarding the OSC-tracker plugin, please post them here: [discussion:osc]

Info for developers, who want to send OSC messages to FaceTrackNoIR:

The default address-pattern of the OSC-messages used for Pitch, Yaw and Roll and X, Y and Zis:

/gyrosc/gyro {pitch, roll, yaw}
/gyrosc/xyz {x, y, z}

The 3 angles are in radials and the translations in cm

Please drop me an e-mail, if you want to interface with FaceTrackNoIR and need some help... I would also be interested in any projects using FaceTrackNoIR. Quite a number of "serious" applications can be enhanced with face-tracking!


  • Reduce CPU-load for your gaming PC;
  • Possible to use any external tracker, which offers OSC communication;
  • Very simple setup.


The current version of the OSC-Tracker can be downloaded separately from the download page.


The GyrOSC and LittleOSC Apps are developed by third party developers and can be downloaded from the App Store.


OSC Tracker settings

Tracker: FaceTrackNoIR supports two trackers to run simultaneously. So you can run two instances of OSC tracker, or use another tracker to supply the axes the OSC tracker does not. With this option you select Primary or Secondary. The settings for Primary and Secondary are stored separately.


Receiving Port-number: this is the number of the UDP-port, to which the external source writes and from which FaceTrackNoIR reads. By default this is port 5550.


Enable and Configure Axis

The OSC Tracker currently reads up to 6 values from the remote OSC device and shows their (raw) values. FYI: GyrOSC and most other gyro-based trackers only supply 3 values!)

 For each of these values, the following settings can be configured:

  • FaceTrackNoIR axis: This listbox gives you the option to assign the value to an in-game axis. Selecting "None" leaves the value "untouched", so it can be used by the secondary tracker.
  • FaceTrackNoIR input:  The value actually sent to FaceTrackNoIR.
  • Invert Value: You can check this box, to invert the axis.


The OSC Tracker reads OSC messages and only gets 3 parameters when the address pattern is "gyrosc/gyro" or "gyrosc/xyz".

When no messages or "wrong" messages arrive, the respective counter will increase. The counter is reset, when a good message arrives. When either counter exceeds 100, "Tracking" will be reset to "False".


Known Issues and limitations:

The UDP protocol is a networking protocol, so the known issues apply to this. The software using networking resources must be allowed to do so by Windows. Usually Windows asks the user for permission to do so, the first time FaceTrackNoIR starts.


The port(s) used for UDP communication must be "open". So make sure no FireWall or other software is blocking the required port(s).


When a proces using an UDP-port terminates unexpectedly, the port may stay occupied. ATM this can only be remedied by rebooting the PC.