Sonance Control – Eagle Wharf Gallery 13/6/2023
Sonance Control is an interactive sound installation, that uses speech recognition technology to trigger and sequence events in a quadrophonic sound composition. It seeks to explore performance through aural communication, extending the voice not as an instrument but as an interface, in order to achieve new states of immersion.
It consist of a quadraphonic sound system with a command terminal (the projected screen) and a microphone. The system has a list of commands that when spoken to the microphone, the composition changes depending on the command said. The composition can be manipulated in various forms, from muting specific speakers and changing the panning of the piece, to randomising the sonic material. The idea of this project was to create a sound system that could be used as an instrument, and that it can only be interacted with by using the voice. I was deeply inspired by François Bayle Acousmonium, and the sound art practice of Sound Diffusion.
The following image is from the command list used in the installation. It comes with a small description of what each command does.
As well the installation has a terminal that visualises the commands to the audience. It is used to let the audience know what commands are active. The following image show the GUI of the terminal. The text in the middle of the page is the speech detected, as that text is not a command in the installation the text Command Not Found pops up. The black squares represent the four speakers in the system, as seen in the image below they’re all coloured black meaning that they’re currently muted.
In the image below you can see how the command was detected, changing each square colour into white indicating that playback is enabled.
Technically the installation used three pieces of software. First a JavaScript website that uses the inbuilt web speech recognition tool, this website also creates all the graphics seen in the terminal. Then all the audio manipulation was done in Max MSP, that is triggered by the website. And finally I created a node.js app that bridges the web socket of the website to Max MSP.