ï~~ARGOS: AN OPEN SOURCE APPLICATION FOR BUILDING MULTI-TOUCH MUSICAL INTERFACES Dimitri Diakopoulos' California Institute of the Arts' Music Technology ddiakopoulos@calarts.edu ABSTRACT Argos is a multi-touch graphical user interface builder aimed at applications in musical performance and sound synthesis. The interface builder lets users construct interfaces through a library of existing widgets (e.g. knobs, sliders, buttons), while providing access to an extensible, open-source toolkit for developing new widgets. Argos was designed with platform-independence in mind, enabling it to run on major operating systems in conjunction with many DIY and commercial multi-touch devices. 1. INTRODUCTION Argos targets a specific need for an open-source, easy-touse interface builder in the music community. Argos gives users the ability rapidly prototype complex graphical interfaces without writing a single line of code. Argos interfaces can communicate with external programs and programming languages via user-definable OpenSoundControl (OSC) messages. Interfaces built using Argos have been demonstrated in music performance and synthesis through software like ChucK, Reaktor, Max/MSP, SuperCollider, PD, and Ableton Live. Multi-touch software often uses proprietary or custom libraries to assemble interfaces. One of the core aims of Argos is to provide a suite of C++ classes to facilitate the creation of innovative, experimental UI widgets. As a toolkit, Argos also enables developers to use these widgets in their own applications without the overhead of the interface builder itself. This paper begins with an overview of related musical multi-touch and interface-oriented software in Section 2. Section 3 discusses underlying mechanics and features unique to Argos. Section 4 details some usage scenarios. We conclude in Section 5 with discussion about future Argos development. 2. RELATED WORK Argos stems from a lineage of tabletop computing, multitouch interaction, and unique graphical interfaces. This section gives an overview of the prior academic work and Ajay Kapurl2 New Zealand School of Music2 Sonic Arts akapur@calarts.edu commercial implementations of user interface builders as they have influenced the development of Argos. Some of the most well known work in tabletop music performance is MTG Barcelona through the evolution of their interface, the reacTable [5]. Along with the Audiopad [8] developed at the MIT Media Lab, these interfaces allow the control of built-in music synthesis parameters using custom-built GUIs. The Audicle [11], while not specifically multi-touch related, is an experimental collection of open-source networkable interfaces designed to transcend traditional GUI interaction for musical performance. The JazzMutant Lemur' is a commercially available multi-touch device that integrates with its own proprietary GUI building software, the JazzEditor. The editor allows users to build custom interfaces and upload the layout to the Lemur. TouchOSC2, a similar application, lets users construct interfaces for Apple's iPhone and iPad. The MMF (Max Multi-touch Framework)3 for Max/MSP enables users to create touch-centric interfaces from the built-in Max widgets, but akin to the Lemur and TouchOSC, provides no facility for extending UI widgets or creating new ones. Philip Davison and Jeff Han [1] have presented work that explains the difficulties and limitations of using proprietary devices and interfaces in the multi-touch domain. The Lemur, TouchOSC, and MMF all use OSC [12] to transmit GUI data to a host, but only MMF supports TUIO [6], a protocol designed to enable direct touch-tracking on many types of vision-based multi-touch hardware. The SurfaceEditor [7] attempts to resolve the problem of creating an interface builder that works across TUIOenabled multi-touch devices. The SurfaceEditor does let users create new controls via a Java-based pluginarchitecture, but the proprietary licence does not allow core modifications to the builder itself. We attempt to combine the best aspects of these works into a single package: an open platform for building both common and experimental user interfaces which can be used across a variety of multi-touch capable devices. 1 http://www.jazzmutant.com 2 http://hexler.net/software/touchosc 3 http://www.mathieuchamagne.com/MMF/ 88 0
Top of page Top of page