Remote-Controlled Max Patches

in Blog

19 November 2006

A system which allows control data (MIDI, Open Sound Control) to be streamed over the internet.

Introduction

After experimenting with various methods of networking several Max/MSP systems together, I concluded that the most relevant and future-proof solution should be web-based. Accessibility is paramount and the system uses HTTP on port 80, so that firewalls are not an issue.

The system allows any number of computers (even without Max/MSP installed, thanks to the AJAX web interface) to contribute to a pool of real-time data. Any internet-enabled computer in any location worldwide can then pull down specific data from the pool in an ad-hoc fashion.

Applications

The possible applications for this system are huge, from security to geology. However, my involvement will only relate to its use within the arts.

The system could be used to monitor art installations remotely, or even provide real-time content such as RSS feeds. Collaborative performances are now possible and at some stage in the near future I would like to be part of a multimedia performance which will take place in two cities simoultaneously.

Data sources could include MIDI fader boxes, results of motion capture, wearable sensors, sound analysis and so on.

Usage

Currently, there are two methods of entry to the system:

  1. Web browser using AJAX/Web 2.0 technologies (see screenshot ); and/or
  2. Max/MSP using a Java object I have developed (see screenshot ).

The web browser option provides basic functionality to anyone with internet access, including visualisation and drag-and-drop interaction.

The Max patch allows any hardware device (such as a MIDI fader box, or environmental sensor) or MIDI-enabled software to update or respond to the data pool in real-time.

Development Status

The system has been developed to a proof-of-concept stage. The candidate technologies have been selected and tested.

During a recent performance in Birmingham, an assistant in London was able to view the position of our MIDI faders in a web browser in real-time. The assistant was asked to send data back to us in Birmingham, which our systems reacted to immediately with minimal latency. Audience members were also able to witness a live visualisation of the live performance in web browsers on WiFi-equipped laptops during the performance.

Due to the complexity of the internet, reliability and latency are an issue. However, early tests have proven the system to be surprisingly usable. I have tried accessing the system in numerous places in Birmingham including several university campusses and web cafes. In all locations, the system was very responsive indeed. You would not think that the data from a slider in a Max patch on one computer was being sent hundreds, if not thousands of miles, to a web browser in another computer sat on the next table.

Although the robustness of the system has by far exeded expectations, I am continuing to find ways of providing a safety net. I would not shy away from using this system in a real performance, however the very nature of the internet will ensure that I always implement a contingency plan.

After speaking to participants at the E-Science Workshops I was recently involved in, I have decided to develop this system into a fully featured web application. As soon as the data pool expands, finding relevant data sources will become an issue. For this reason, a tagging system similar to that used by Flickr and del.icio.us will be built in at an early stage.

Back to Blog