Please Note

This page contains software I have previously released. None of it is currently maintained and, as such, may no longer be fully functional.


Parallel Tracking and Multiple Mapping (PTAMM) is a markerless augmented reality application. The system tracks natural features in real time, calculating their and the camera’s 3D location and pose. Using this 3D information augmented reality graphics can be overlaid on the video image. Multiple maps can be made throughout an environment, with each map holding it own AR. As the camera is moved from one mapped area to another, PTAMM automatically detects and switches to the relevant map.

The source code comes with three simple games to demonstrate the potential of PTAMM, as well as detailed installation and usage instructions. See the video below for an overview of the software, and see the blog for the latest news, updates, and troubleshooting advice on PTAMM.

Download the PTAMM Source code for Mac, Linux and Windows from my research website at Oxford University.

The software is free for academic use or a licence can be purchased from Oxford University Innovation for commercial use.



A Unity plugin for managing and modifying Xcode projects. It modifies iOS and tvOS Xcode projects automatically, allowing you to:

  • Add Capabilities
  • Add system and custom frameworks and libraries
  • Add additional files and folders, such as source files, bundles and core data models
  • Add post build scripts
  • Modify build settings
  • Modify the Info.plist
  • Use multiple configurations for different builds, e.g. iPhone and iPad builds, or Debug, Ad Hoc, and Release builds.
  • Works with command line builds, and automation systems, such as Jenkins and Unity Cloud Build
  • Configure on Mac, Windows or Linux

Download Source Code


Tap Play was a gesture controlled music app for iOS. It allowed the user to customize various swipes, taps and holds to control playback of music, audiobooks and podcasts.

Tap Play Screenshot


airLCD is a front end for Amarok that allows the user to:

  • control Amarok with a remote control – no need for a mouse or keyboard.
  • view track information on a customizable LCD display – no need for a monitor.
  • browse their music collection and add individual or multiple tracks to the playlist.
  • view the current playlist and select which track to play.