ICMC 2022 – Workshop
CS Meeting Room, CSG27
https://github.com/Collab-Hub-io/ICMC2022-CH-Workshop
Creating Collaborative Telematic Performances with Collab-Hub
July 3, 14:10-18:20 (with breaks)
Short Description
This workshop serves as an introduction to building remote/local networked audiovisual performances and pedagogical tools using Collab-Hub, a package for telematic collaboration based on Node.js. Collab-Hub aims to be platform agnostic; it can be implemented within a number of popular creative platforms such as Max, Pure Data, web browsers, Arduino-based microcontrollers/instruments, the Monome Norns, and applications that send and receive OSC. Users connected to the Collab-Hub server through any of the aforementioned applications can share control data across flexible interaction topologies, collaborating with all users or specific partners without the need to rewrite any backend code or reconfigure a server.
Collab-Hub is a system built for sharing data in performances and multimedia installations and eliminates the need for collaborators to be aware of their/each others’ IP address. It has applications in many performance paradigms, including telematic performance, laptop orchestra, mixed ensemble with digital elements, distributed control, net-to-physical interaction, and more.
In this workshop, we will begin by showcase how to integrate Collab-Hub into Max projects before exploring how these patches can connect to other visual and tangible mediums through the Collab-Hub server (examples will be provided). At the end of the workshop, participants will apply their new knowledge of Collab-Hub by working together to create and perform their own collaborative networked performances.
Detailed Workshop Description
This workshop serves as an introduction to building remote/local networked audiovisual performances and pedagogical tools using Collab-Hub, a package for telematic collaboration based on Node.js. Collab-Hub aims to be platform agnostic; it can be implemented within a number of popular creative platforms such as Max, Pure Data, web browsers, Arduino-based microcontrollers/instruments, the Monome Norns, and applications that send and receive OSC. Users connected to the Collab-Hub server through any of the aforementioned applications can share control data across flexible interaction topologies, collaborating with all users or specific partners without the need to rewrite any backend code or reconfigure a server.
Collab-Hub is a system built for sharing various types of data and allows for different types of communication models (like pubsub, event, and broadcast). Collab-Hub also eliminates the need for collaborators to be aware of their/each others’ IP address. It has applications in many performance paradigms, including telematic performance, laptop orchestra, mixed ensemble with digital elements, distributed control, net-to-physical interaction, and more.
Participants will be guided through the setup process of a basic Collab-Hub configuration using Max as a starting point. After the basics are covered, participants will practice sharing collaborative data with one another before divining into some more advanced techniques for building interaction topologies in a performance. These skills will then be applied to other creative platforms through provided examples featuring web browser, Arduino, Pure Data, and Norns integration. In the final section of the workshop, participants will be able to communicate amongst each other through their platform of choice and will work together in groups to design a new collaborative performance.
The workshop facilitators will present an overview of their experiences developing projects with Collab-Hub that demonstrate different network performance paradigms—local, remote (telematic), and embedded (Internet of Things). Facilitators will also demonstrate topics, answer questions and help troubleshoot issues, and provide basic templates/code bases for participants to keep and expand into larger projects of their own. While this workshop will see participants exploring a number of different audiovisual creative software, a majority of the time will be spent working in Max. Some prior knowledge of Max will be helpful but not necessary, and a registered copy of Max is necessary if participants would like to save any edits they make during the session. All Collab-Hub centric software and example files are free to download and use.
Session Plan – Half day (4 hours scheduled)
- Introductions and Overview
Overview of Collab-Hub and Networked Audiovisual Performance practices. Discussion of networked audiovisual collaborative design and considerations (30 minutes)
- Setting up a Networked Performance Environment
Installation of Collab-Hub software (client software), walkthrough of client-server communication, establishing connecting with the server, and practice sending data to the server. (40 minutes guided walkthrough, 20 minutes group test/troubleshooting)
- Sending, Subscribing, Mapping
Work through examples of the communication paradigms within Collab-Hub. Participants will practice broadcasting, subscribing, joining/leaving rooms. (30 minutes)
- Deeper Examples and Discussion
Facilitators will show examples of existing implementations of Collab-Hub, pedagogical examples, and implementations using tools beyond Max. (30 minutes)
- Group Breakout and Collaborative Performance
Participants will brainstorm, coordinate, rehearse, and perform a collaborative performance using Collab-Hub. (60 minute group session)
- Future Work, Discussion, and Questions
Future developments for Collab-Hub and collaborative networked audiovisual performance. (30 minutes)
Technical and Space Requirements
In-person Considerations
- Projection screen and sound system for slides and presentations from laptop
- Class or tutorial room with enough space for participants
- Tables with space for each participant to have their laptop
- Internet connections for all participants (for downloading code and for networking)
- Power strips for plugging in laptops
Note: facilitators will bring wireless routers to assist with networking in the case that on-site WiFi is experiencing issues
Remote Considerations (if conference moves to an online format)
- Video Conferencing platform which allows for breakout rooms
- List of participant emails to send relevant links prior to session
Time Requirements
While the workshop can fit into a half-day format, a full-day workshop would maximise prototyping time and allow participants to create multiple collaborative performances.
Audience
The primary audience for this tutorial are ICMC participants interested (no prior experience necessary) in using a system for remote/local networked collaborative audiovisual performance which easily adds onto Max and is extensible to other environments like PD, P5.js, Internet of Things, and Embedded Devices. Those who are familiar with remote collaborative systems may be interested in how Collab-Hub affords various communication models and doesn’t require clients/collaborator networking identities (like IP address, Ports). Overall, we hope to have a diverse group of participants with interest or experience in local/remote collaborative audiovisual performance to learn of Collab-Hub and how it enables the practice thereof through setup and communication.
Some prior knowledge of Max, Node, HTML, and JavaScript will be helpful but not necessary. All of the software is free to download and use.
Links to Supporting Media
Collab-Hub already has a web page (Collab-Hub) and a section devoted to workshop materials will be updated with a complete schedule before NIME. We intend to document the community’s ideas on networked performance environments in order to develop future directions and new research ideas. It is our hope that these tutorials and our workshop will create more artworks, research, and conversations at NIME regarding the use of hardware in interactive networked art.
- Collab-Hub web page: https://collab-hub.io
- Videos – Performances, Discussion, and Weekly Jams with Collab-Hub: https://www.youtube.com/playlist?list=PLDRHBrWLcIk8ZYUqIuQO7xpK3IjMVYERn
- Collab-Hub has been used with ….
- Rhumbline (https://Rhumbline.io)
- RE/SHFT/ER SHP of THSEUS (https://aweisling.com/#/shp-of-thseus/ & https://youtu.be/2ewFgrTuzBE)
- Ohio State University, Laptop Ensemble (Marc Ainger)
- Flannery Cunningham (New York New Music Ensemble)
- MusicHackSpace
- SUTRGV New Music Ensemble
- UW-Whitewater New Media Ensemble
- MULE: Miami University Laptop Ensemble
Introductory and How-to videos arriving shortly.
Download our Demo codebase
https://github.com/Collab-Hub-io/
Correspond with Us on Discord
If you have any questions, please email Nick Hwang at hwangn@uww.edu