My senior thesis project, Silva, is an interactive audiovisual instalallation that explores the communal experience of making music.
When deciding on what to do for my senior thesis project, I was inspired by my research on installation art to build an audiovisual installation, one where users can interact and feel like they are in control of their environment. After an extensive production process, I was able to construct Silva, an interactive installation where participants use their phones to control the sounds in the space, while the lights react to the sonic experience. Participants choose from one of four instruments (drums, bass, rhythm, lead) or elect to be part of the audience and control the ambience of the installation. The musical content is presented as two scenes: an ocean scene that incorperates timbres from electronic music and washy textures, and a forest scene that is inspired heavily by traditional music from the Dominican Republic.
This installation was designed to invoke a sense of curiosity and discovery and to encourage communal performance. The interface is presented as minimally as possible so people are invited to try things out and figure out how the music around them reacts to their input. The music is composed in a way that any change made by a participant is in key and sounds "right" in the context of the installation. Finally, the ambisonic audio experience envelops the participants so they feel transported to new world.
The client website was made using the graphics library p5.js, and the communication between web server, client, and installation program uses socket.io. The sound and mixing was all programmed using Max/MSP , with help from the IEM Plugin Suite to mix the sound for the multi-channel system. The lights were controlled using QLC+, which received MIDI messages from Max/MSP, and the light control data was sent to an Advatek lighting controller which runs the custom-built lighting fixtures.
To look more deeply into the process and functionality of the installation, you can read my thesis paper below and see my code on Github.