In the Blink of an Eye

Abstract/Conceptual Overview
State Diagram
Research Methodology
Bibliography
Historical Context
Electronics
Circuit Diagrams
Code/Programming Issues
Revisions
Presentation Scenarios

Abstract/Conceptual Overview

The installation consists of a six to eight channel surround sound setup. Within the surround sound space several semi-autonomous "players" construct a generative musical piece. The players "speak" snippets of text pulled from the daily news in real-time. The score is modeled on Terry Riley's seminal minimalist composition In C.

Each player adheres to one of 53 different rhythmic patterns. Each pattern is approximately one measure long. The first performer plays a text snippet as the "pulse", on the beat, for the duration of the performance. The others repeat their snippets a few times and then request a new snippet from the system. Each player determines how long it will play its snippet and then moves on to the next pattern/snippet whenever it feels like it. Thus, the players move out of sync with each other over time forming various interlocking polyrhythms.

The poetics of the piece stems from the real-time information stream. The information slices across a broad swath of human experience and taps into the Zeitgeist. The information is always up-to-date and, in many situations, could be new or unknown to a listener.

State Diagram

State Diagram

Research Methodology

The technology for developing this piece was fairly straightforward. The most active area of research for this piece was/is fine tuning the experience. Areas targeted for improvement were:

At present, the piece makes little use of sound spatialization techniques. Each channel is a single voice. In some respects, this is desirable, since it transforms the rhythmic interaction between voices into a correlated directional experience. However, it limits the number of voices, perceived distance and generally projects a flat sonic field. Perhaps future iterations of this piece will leverage ambisonics or equal power panning to spatialize the sound in the installation. Ambisonics will free up the voices to move around the presentation space and create a more dynamic environment. The manner in which the voices move about is a big question mark at this point. Experimentation is needed.

Several speech synthesis engines were considered in the experimentation phases of the work. OS X's built in speech synthesis worked fairly well, but didn't have enough variety. Festival was eventually chosen and remains the dominant choice. It also provides a client/server environment for efficient text-to-speech synthesis.

The crawling engine went through several iterations. Initially it used the Carrot2 text clustering library to summarize new articles. Carrot2 uses an efficient suffix tree clustering approach to generate short text snippets which are the dominant keywords of the article. The downside of this approach is the short length of snippets generated. In many cases the snippets are just a few words long. Complete sentences provide much more context and intelligability to the listener. Currently, the crawler uses RSS feeds and extracts only the headlines. This works well, since the human editors generate concise thoughts to summarize current events.

One possible presentation scenario for this piece is outdoors, using portable power and a wi-fi/satellite connection. The current setup isn't very friendly towards power consumption. Future research is needed to help curb power consumption.

Bibliography

LISTENING POST, by Mark Hansen and Ben Rubin

Ben Rubin and the Aesthetics of Communication, Greg Zinman

Culture Catcher, by Michael Sheridan

The Killing Machine and other Stories by Janet Cardiff & George Bures Miller

Net_Dérive, by Atau Tanaka and Petra Gemeinboeck with the collaboration of Ali Momeni

(void)traffic by Yunchui Kim.

Networked Audio Art

Social Technologies Deconstruction, Subversion, and the Utopia of Democratic Communication, Inke Arns

Form Follows Format Tensions, Museums, Media Technology, and Media Art, Rudolf Frieling

Constructing Media Spaces, Josephine Bosma

Historical Background

This work is probably a direct descendent of Hans Haacke's News from 1969. In that piece Haacke placed several teletype printers in a gallery. The teletype machines recieved a constant stream of news from news bureaus. The printed news created large piles of paper on the floor. The work was purely conceptual. No attempt was made to shape or alter the news streams or even to make sense of them. They merely spilled out of the machines onto the floor.

News was one of the first pieces of art to tap into a larger system of information. In many respects it's about "information" and how much of it we have access to. It calls attention to the "media machine" and distills it down to precision teletype machines spewing forth information.

One of the shortcomings of News is that it makes no attempt to really push the content of the news through as an experience. The viewer is simply overwhelmed by the volume of information or engaged by the machinations of the media industry. The stories are lost in so many piles on the floor.

News fits into a class of work that defies traditional object-oriented concepts. The Teletypes aren't the art; neither is the actual news. Recent installations of News use new and different style Teletype machines. There isn't much to grab onto here besides an idea. News adheres more to Joseph Beuys' notion of "social sculpture." It's a work of art that exists solely in the electronic realm. It has no location and no edges. Immaterialization, process and participation are important and closely related ideas.

Robert Adrian X, referring to his telecommunication project "The World In 24 Hours" (1982) emphasized that the artistic dimension consisted precisely in not creating special objects but instead establishing "communicative" occurrences between the participants.

Listening Post is probably the most similar work of art to this project. It consists of agents that process text fragments, in real time, from chat rooms, bulletin boards, and other public forums. It then displays the information on a grid of around 200 small electronic screens. It also "sings" some of the fragments using synthesized speech.

Dissociating the communication from its conventional on-screen presence, Listening Post is a visual and sonic response to the content, magnitude, and immediacy of virtual communication.

A related piece was recently exhibited at the Western Bridgeby Ben Rubin: The Quiet Ticking of Dreams. It uses Listening Post as a template, but focuses on online dream journals. The small grid of electronic screens slowly "type out" the dreams one screenful at a time. The characters are written to the screen as if they were being typed by a person in real time. Each character is accompanied by a quiet "tick" to punctuate its arrival. The ticking sounds of all the screens collectively tie all the dreams together. It's riveting and quite surreal. It's difficult to follow one dream to completion because a quick glance around the grid usually causes you to jump to another dream that looks more interesting. I think this piece concentrates on the person-to-person connection. The connection is that of a one-way voyeur, but it definitely taps into a little discussed facet of humanity - the unconscious.

All of these pieces fall somewhere on the spectrum of "digestible" vs. "information overload". The work's location on this continuum is pretty tightly integrated with the overall effect of the piece. In Hans Haacke's piece, you really only take away an idea from the exhibition. Rubin and Hansen leave you with more of an experience; repeat visits result in new and distinct experiences.

Electronics

Amplifiers

Difficulty finding amplifiers with the right power consumption profile lead me to build my own 8-channel amplifier. After quite a bit of research I decided Class D switching power amplifiers were the way to go. They are very high efficiency (~88%) and encapsulate a lot of circuit ugliness inside a nice IC package. I ended up buying 4 stereo amp kits (PCB + bag 'o parts) from 41Hz Audio out of Sweden. The model is the Amp32. These amps are tiny which means I'll have no problem cramming them into the same case as the Mini-ITX, which is running the whole show. This keeps things nice, clean, and tidy.

Electronics Overview

Power Supply

The installation is powered by one of two interchangeable 12V power supplies:

The computer won't run directly off a battery so it needs a DC-DC converter to supply +12V and -12V as well as provide some power regulation.

The 12 Volt Side of Life provides and excellent primer to using 12V power sources. Overview of lead acid batteries.

Circuit Diagrams

Low Power Audio Amplifier

Amp32 Schematic

Code/Programming Issues

The software consists of several major components:

The crawler/classifier/speech synthesis process is controlled by a daemon, which runs continuously to keep the content fresh.

Crawler

The crawler is a custom written Ruby script. The script crawls the main topic areas from the front page of Google News and downloads their RSS feeds. The headlines are extracted from the RSS feeds and fed into a producer/consumer queue to be sonified. The crawler stores the url of the linked article as a unique token so it can avoid downloading the same article over and over.

Speech Synthesis

The list of words and phrases produced by the crawler is passed on to the Festival Speech Synthesis System for text-to-speech synthesis. Festival generates a sound file which is stored on disk. Several different Festival voices are used to provide some variety to the final composition.

Sound Synthesis

A ChucK script is used to play the synthesized speech files into the installation space. The script has a MIDI-like score representing the 53 different rythmic patterns. It requests sound files from the crawler using OSC messages. Each player decides how many times to play its pattern. When the player is done playing a pattern, it requests a new sound file from the controller and begins the next pattern using the new file.

Controller Program

The controller program keeps all the sound files organized for the sound synthesis program. It keeps a queue of sound files and feeds them to the ChucK script whenever they are requested. It clears the sound files from the filesystem when they are no longer in use.

Revisions

Most of the revisions I made to the project were techinical in nature. They were driven by both practical and aesthetic needs.

The impetus for rewriting the crawler had mainly to do with control. My earlier prototypes used Nutch for crawling. Nutch is a massive framwork which includes an industrial-strength crawler and indexer. It was overkill for this project. Rewriting the crawler simplifies the overall design, but the main payoff is the ability to do highly focused, customized crawls. I wanted to be smarter about gathering information so I could tailor the experience a little more.

The new crawler is a Ruby script with quite a bit of flexibility. It can do things like run a search for a specific word and crawl the returned pages. This opens up potential for creating thematic, rather than random soundscapes. It also opens up the potential for feedback in the system: the output of one query can become the input for another. This kind of thing was possible with Nutch, but extremely cumbersome. Nutch isn't very smart and wasn't really set up to be a dynamic crawler.

I rewrote the control program because it was terrible. The previous design had serious limitations that would make it difficult to have the installation running continuously for long periods of time. I also changed the control program so it could accommodate more sophisticated audio file structures. For example, it can now handle passing lists of audio files around rather than just one file per key phrase. This inproves the playback experience since you get to hear the whole phrase instead of it restarting at every beat.

Having very little experience with fabrication (other than woodworking), I've been thrashing around quite a bit with respect to designs. I seem to have no lack of ideas which are sophisticated, interesting, time-consuming and difficult to execute... I've been iterating like crazy on the few parts I have to fabricate. As I get more experience with the tools it becomes clear how I need to change designs in order to make the project a little more reasonable. I've been updating my design drawings here as I work through the prototypes and iterate. Most of this energy is concentrated on the speaker stands and cabinets.

Presentation Scenarios

This piece has two drastically different presentational scenarios. The first scenario is in an outdoor setting. The second scenario is in an indoor setting. In both cases, the speaker arrangement will be roughly circular with the speakers facing into the center fo the circle.

Outdoor Setting

Showing this installation in an outdoor setting has some special considerations. Power consumption is a factor and consequently, the number of speakers will probably be reduced to anywhere from 4 to 6 speakers. Additionally, the power supply (car batteries) becomes an aesthetic consideration in the installation. Likely, the computer, batteries and other gear will be concealed under a small circular platform which provides a bench for visitors to sit on.

A central pole will provide a mounting point for an antenna to extend the wi-fi range as well as an optional solar panel. The solar panel could be used to extend the life span of the battery power source.

Providing adequate lighting will be critical. The installation may be installed in a very remote location without any external light source. Lighting will be essential to aid people in finding the installation in dark as well as keep the installation safe from unwanted collisions in the dark. Lighting is an additional power load. To provide some light, I will disassemble some common solar powered garden lights and repurpose them to light the perimeter of the circle.

Speaker cables will be buried under the ground in very shallow trenches so people don't trip over them.

Indoor Setting

The configuration for an indoor installation will be much more stripped down. The whole installation can be powered via convential AC power. The computer won't need an extended wi-fi antenna or a solar panel. There won't be any lighting.