During my time consulting at Detour I:

  • Created a shared audio engine used by the iOS and Mac applications to perform dynamic-location based audio playback with multi-effect and multi-track (up to 32 simultaneously) support. It was built on top of my EZAudio framework and extended to conform to location triggers.
  • Wrote Descript v2, the mac app used to create Detours (see below).
  • Helped with the iOS app to smoothly integrate Descript bundles and extend audio functionality for real-time playback support.


Descript is a Mac application that is used by the content team at Detour to create and simulate Detours in a movie-script like fashion with the ability to drop in location triggers, music, voice overs, sound effects, images, and comments. It also features a git-like version control tool to allow authors the ability to check out remote Detours and collaborate simultaneously. Towards the end of my time at Detour I helped in early stages of integrating the new audio-text alignment feature that is featured in the newest version of Descript. 

Each Detour would start with an author laying out a series of geographic markers that created the Detour's walking path. With the map editor an author could easily drop pins and construct the Detour's path in a few clicks.

The main editor is made up of these widgets that authors use to drop in walking markers, images, voice overs, sound effects, music, and other rich media.

Authors are able to flexibly adjust each media event to perfectly fit in the audio mix. As of Descript v2 the audio engine that was used to perform the adaptive audio playback for each Detour was done using EZAudio.

A media library was built into Descript to optimally manage the audio/visual resources of each Detour. 

Since multiple authors could work on a Detour at the same time I built out a Git-style check out flow to provide a mechanism for authors to ensure they always had the most recent version of a given Detour. Authors were notified when a new version was available and the check out flow was optimized to only download the resources that were not present locally, which ended up being incredibly valuable as Detours became larger and file sizes caused painfully long download times.