Scalable, Collective Traditions of Electronic Sound Performance
A Progress Report
The project Scalable, Collective Traditions of Electronic Sound Performance aims to scale laptop orchestra practices, compositions and technologies across diverse sizes of ensemble, ranging from the chamber music of small quartets, to common 6–15 performer ensembles, to large-scale, globally distributed telematic happenings. Since 2010, with the support of an Image Sound and Text Technology grant from the Social Sciences and Humanities Research Council of Canada, the project has unfolded along multiple axes — ranging from the design and development of software tools, through the development of specific compositions and improvisational practices, to the use of surveys and focus groups to uncover the complex dynamic among participants and audiences. Methodological eclecticism is the project’s defining strength. This progress report presents the various strands of the project, with a special emphasis on demonstration and discussion of EspGrid, a software tool developed to streamline the sharing and synchronization in a laptop orchestra.
The Cybernetic Orchestra, a continuously running laptop orchestra at McMaster University in Hamilton, Canada, has been both the primary site and beneficiary of this activity. The Cybernetic Orchestra quickly developed into an orchestra that emphasized two things in its everyday practice: live coding (primarily in the ChucK language) and network synchronized beat cycles. Out of this activity, a set of software tools began to develop, foremost among them in terms of frequency of use a simple protocol for beat synchronization (espBeat), implemented as a “server” and “client” (or receiver) in several software environments. At the Toronto Electroacoustic Symposium 2012 we presented the most recent phase of this development — the emergence and public release of EspGrid as a standalone application. Performers run the EspGrid application alongside their chosen performance environment / interface and benefit from the ability to share various kinds of performance information, with as little configuration and interaction with the tools as possible.
Hybridity and Instability
I would like to begin by listening to an excerpt from Aaron Hutchinson’s composition, Piblokto, created for McMaster University’s Cybernetic Orchestra and featured as the opening track on our first full-length album, esp.beat (released on CD and SoundCloud in April 2012). Hutchinson’s composition manifests a number of the features that one can observe more generally in the work of the Cybernetic Orchestra. Above all, it is a hybrid composition that not only allows, but explicitly calls for the combination of diverse modes of performance: a saxophone soloist improvises in a minor, modal setting, a live electronics performer captures and modifies their performance, while the members of the accompanying laptop orchestra perform in two distinct ways, some interacting “gesturally” with the interface of provided Max patches, others performing network-synchronized beat patterns using live coding.
The hybridity of this composition (its incorporation and combination of distinct modes of performance) is closely related to another feature of laptop orchestra activity: its instability. To work within a laptop orchestra is not to join and preserve some grand tradition with relatively defined limits on what is and isn’t the right way to do things. Rather, it is to enter a research-creation site whose many questions ultimately lead back in some way to the question, “How can we do things differently?” The three years within which the Cybernetic Orchestra has been rehearsing, performing and recording have been three years of continuous change — change to our hardware and software infrastructure, change in the identities and backgrounds of our members, change in the kinds of social and physical settings in which we are asked to perform and change in the formats of music we produce (freely improvised vs. composed, framed by beats or not, etc.). In this flux, the hybrid composition connects the orchestra to its own recent past, while also providing multiple points of entry into the orchestra for people with different types and levels of experience.
The Cybernetic Orchestra is a laptop orchestra at Hamilton’s McMaster University formed as the research site for the project Scalable, Collective Traditions of Electronic Sound Performance, and funded by the Social Sciences and Humanities Research Council of Canada’s Image, Text and Sound Technology program, as well as by a grant from McMaster University’s Arts Research Board. The present text is a progress report on that project, which aims to investigate the potential of laptop orchestras as forms of participatory culture, and thereby expand the scale of public participation in electroacoustic and media art traditions. The trajectory of this new laptop orchestra has been strongly influenced by the definition of participatory cultures given by Henry Jenkins and others, as cultures with:
relatively low barriers to artistic expression and civic engagement, strong support for creating and sharing one’s creations, and some type of informal mentorship whereby what is known by the most experienced is passed along to novices. (Jenkins et al 2006)
Live coding (Collins 2003) rapidly became the most common mode of creation and performance employed by the new orchestra, usually using the ChucK language (Wang and Cook 2003), but with a hybrid mix of other environments and approaches not far behind. My hypothesis is that our orchestra’s organic adoption of live coding was closely tied to our participatory culture orientation: text-based code represents an optimal medium for the above-mentioned informal sharing and learning, and the orchestra represents a kind of “greenhouse” environment in which code ideas can spread rapidly from one member of the group to the next. The sharing of code happens in so many ways in and around our laptop orchestra: at the simplest level, people look over each other’s shoulders and observe code changes on the next person’s screen, or projected on a nearby surface. Code fragments constituting small synthesis instruments pass informally as files from one person to the next, and our EspGrid software (see below) provides a mechanism for more automatic, effortless migration of code expressions.
The live coding composition, like Aaron Hutchinson’s Piblokto, is not just a means to realize its composer’s intention. It is also a vehicle through which code ideas are shared. One practice that has emerged within the Cybernetic Orchestra has been that of providing live coding compositions wherein predefined code instruments (typically consisting of a function that when called produces a given sound or range of sounds) are gradually and independently modified by the members of the orchestra over time. The predefined code communicates the composer’s intention and also facilitates performance by those less familiar with ChucK programming. But those with more experience can negotiate and attempt more far-reaching changes to the given code. By August 2012, the following live coding compositions had been developed within, and performed / recorded by the Cybernetic Orchestra 1[1. A number of performances of their works, including a few of those listed here, have been made available on the Cybernetic Orchestra’s SoundCloud site.]:
- Ian Jarvis — In the Midst (released on esp.beat)
- Ian Jarvis — Orbit 2[2. This work is discussed in Ian Jarvis’ article “Creating ‘Orbit, a Scalable Laptop Composition’” in this issue of eContact!]
- Aaron Hutchinson — Piblokto
- David Ogborn — Programme réduit (released on esp.beat)
- Aaron Hutchinson — Revolution
- David Ogborn — Seventy
From EspTools to EspGrid
Alongside live coding, an orientation towards network-synchronized beat cycles became a defining feature of the new orchestra’s practice. This lead to the maintenance of a series of informal software tools, the ESP (Electroacoustics, Space and Performance) Tools, initially in order to overcome some of the problems that come with the “obvious” way of synchronizing events over a network (simply allowing the arrival of a network packet to trigger some activity): latency, jitter and dropped packets. Most recently, I have redeveloped these tools as a standalone Mac OS X application (with the intention of porting it to Windows and Linux) that facilitates laptop orchestra synchronization and sharing, EspGrid.
The design of EspGrid (or, in the informal parlance of the Cybernetic Orchestra, simply “the grid”) has been strongly influenced by recognition of the hybridity and instability of laptop orchestra situations. The grid has been formed in a way that assumes laptop orchestra performers will use a variety of languages and approaches, perhaps even at the same time on the same machine, and so does not impose the use of any given language or environment. Instead, independently of the languages or environments used for live coding performance, it forms a synchronized clock across all of the machines running the grid application, and then allows that clock to be used to form synchronized beats as well as to disambiguate the sequence of user actions, including actions which share text data such as code.
The fundamental idea behind the grid is that these relatively simple and universal electronic performance tasks (e.g., form a common time base, then share things) should be accomplished by a language-neutral utility with a very simple and slowly evolving user interface. The idea may be compared to the provision of another basic utility upon which electronic musicians (not to mention the rest of society) depend: the provision of AC power. We take for granted that the shape of the AC plugs won’t change from day to day and the stability of this interface allows us to deal successfully with the instability of the diverse situations in which AC power is employed. EspGrid aims to achieve something like this transparency of use for synchronization and basic sharing operations in electronic music ensembles. EspGrid has since been released as open source software. 3[3. The latest binary releases of EspGrid can be found on the ESP website, while the source code can be browsed and downloaded from Google code.]
Other and Future Outcomes
EspGrid and a growing catalogue of live coding laptop orchestra compositions are not the only outcomes of this project. Surveys of laptop orchestra audience members have been conducted and await imminent analysis. Additionally, a substantial database of laptop orchestra repertoire (not only, or even principally, live coding-related) has been collected and will be shared with the community once the parameters of its front end have been determined. The immediate future of the project includes a “major” release of the EspGrid software (Summer 2013) and further Cybernetic Orchestra albums.
In recent months, the orchestra has been undertaking experiments with the popular SuperCollider language as an alternative to our “first language” (ChucK). SuperCollider was an obvious choice for a second language for the orchestra, given its maturity, popularity and importance to the live coding movement, and given the powerful object-oriented programming structures it places at one’s disposal. So far, the attempted shift to becoming a “bilingual” orchestra has proven more difficult than I would initially have expected, however.
This points to a new research question for artists and researchers concerned with the scalability of electronic music culture. Laptop ensembles tend to have a single, defined first language (Max, Pd, SuperCollider, ChucK, etc.) in which much of their activity is expressed. This single, defined language presents a well-defined target for the study and practice activities of those joining a given laptop music community. While this linguistic rigidity may well facilitate the gradual entry of new members to a group, I believe it comes with two heavy costs:
- It inhibits interchange between, and recomposition of, ensembles;
- It imposes expressive, theatrical and, ultimately, political constraints — one is essentially forced to speak / write code in a certain way to achieve a certain end.
Solo live coding performers can loosen the bonds of the latter problem by creating domain- or performance-specific languages, but can the same powers of linguistic invention be exercised by the larger, hybrid, unstable elective community of a laptop orchestra? Is it possible to organize a live coding laptop orchestra without imposing a “house” language?
Thanks to Nicolas Hesler, Aaron Hutchinson, Ian Jarvis and Amy McIntosh for their contribution to this presentation at TES 2012! Kudos to Amy McIntosh for designing the orchestra’s logo and Kearon Roy Taylor for contributing the EspGrid application icon! Love and gratitude to all past, present and future members of the Cybernetic Orchestra, as well as to the Department of Communication Studies & Multimedia and the Faculty of Humanities at McMaster for being our home!
Jenkins, Henry, Katie Clinton, Ravi Purushotma, Alice J. Robinson and Margaret Weigel. Confronting the Challenges of Participatory Culture: Media Education for the 21st Century. The John D. and Catherine T. MacArthur Foundation. 2006.
Collins, Nick. “Generative Music and Laptop Performance.” Contemporary Music Review 22/4 (2003), pp. 67–79.
Wang, Ge and Perry R. Cook. “ChucK: A Concurrent, On-the-fly, Audio Programming Language.” ICMC 2003. Proceedings of the International Computer Music Conference (Singapore, 2003).