Network Music Performance Workshop GAFFTA 2010
This workshop is intended as a practical introduction to network music performance. Both technical and musical topics will be discussed, including: history of the field, Internet technologies for low-latency audio streaming, transcontinental high-quality network performance, performance issues like delay and presence, installations and synthesis in the network, future and potential as a compositional medium, programming techniques and software survey. We will discuss how to fine-tune the network and software specifically for musical purposes. The correlation of physical and acoustical distance in this medium and what it implies for musical performance/composition will be analyzed. We expect participants to leave with an embodied sense of network performance and ready to apply it in their art. This workshop was designed for Mac and Linux users (unfortunately some applications are not available on Windows).
This workshop is intended for musicians, composers, programmers and technologists interested in performing with distant musicians, designing systems for the medium or composing with the network in mind. No music theory or technical skills background necessary, the workshop will put emphasis on the participants’ particular interests and goals.
|Why standard teleconferencing doesn’t cut it for music.|
|QoS = QoResults.|
|7-8:30: Quick start lab|
|Example streaming apps / hardware (jackTrip, jack).|
|Takes two to tango, or just play together… (bi-directional streaming).|
|Software installation (cross-platform).|
|Wired network setup (IP addresses and ports).|
|Path qualification (minimum bandwidth, jitter).|
|Tuning the connection (sampling rate, frames per packet, audio channels, redundancy).|
|Audio pickup and monitoring (proximity, talkback).|
|Connecting multi-site (connect with external node).|
|Standard network tools (ping, iperf, traceroute).|
|Specialized tools, yet to come (QoScope, SoundWIRE).|
|Using your ears.|
|Host computer problems vs. network problems.|
|6-7:00: Technical issues and discussion|
|Wired vs. wireless.|
|Institutional firewall policies.|
|Video (Skype, iChat, DVTS, AccessGrid).|
|Recording, real-time plugins (efx) via jack.|
|7-8:30: Musical issues: discussion, demos (live remote connections)|
|Every millisecond counts.|
|Sound before video.|
|Options for conducting.|
|Self-delay pros and cons (demo).|
|Effect of delay on ensemble tempo and choice of music.|
|Only as good as the mics and loudspeakers.|
|Audio for monitoring vs. audio for recording.|
|The sound of conjoined stages.|
|Ambisonic ambient space display (demo)|
|Experiences with different styles (classical, jazz, electronic).|
|Common use cases (jamming, ensemble rehearsal, concerts).|
|Examples of composing for this new “stage.”|
|Other applications (new media installations, distance music teaching).|
|Alternative streaming apps / hardware.|
|Current research topics and speculations on future functionality.|
|Improvjam with CCRMA|
The JACK Audio Connection Kit is system for handling real-time, low latency audio (and MIDI). Originally developed for Linux, JACK ensures the lowest latency possible through your audio interface, provides an easy way of routing audio streams between applications and network nodes using a JACK plugin called Jacktrip.
OS X Install
Download and install the version for your flavor of OS X here: http://www.jackosx.com. If you already have an older version of JACK OS X installed, better to run the uninstall script that comes with it and trash/archive the old version of JackPilot, etc. before installing.
With Jack OS X you get two main components:
jackdmp - the audio server daemon, which is JACK. It is multi-threaded and multi-processor. JackPilot is a user interface for JACK (or
jackdmp). Rather than talk to JACK through the command line, JackPilot allow you to set sampling rates, buffer sizes, and make connections between JACK clients graphically, a big plus.
Packages for any relatively mainstream distribution are available for JACK with the package name:
jack-audio-connection-kit. If you happen to be running a recent version of Fedora, you can get JACK and a host of other packages we use frequently at CCRMA you can check out: PlanetCCRMA. Conveniently, Jacktrip is also available there.
jack-audio-connection-kit is also available with Ubuntu.