Skip to content

A SuperCollider class extension for ambisonics spatialization on a tabletop tangible interface.

License

Notifications You must be signed in to change notification settings

axambo/soundxy4

Repository files navigation

SOUNDXY4

Copyright (c) 2013 Anna Xambó anna.xambo@open.ac.uk

Introduction

SoundXY4 is a musical tabletop interface implemented for real-time performance of sound samples and effects using ambisonics spatialisation. SoundXY4 is suitable for performing in collaboration using a multichannel system – ideally with four speakers. It provides auditory information of the location of tangible objects on a tabletop surface. It can be useful to support both individual and group awareness of users actions on the tabletop surface with no need of using headphones. It can also permit the musicians to explore and discover together a set of sound categories (in this case Russolo's) in the context of music performance. Sounds are grouped in different categories inspired by Russolo's taxonomy of sounds presented in The Art of Noise (1913). The palette of sounds of this version has been selected by Gerard Roma from Freesound.org (see below a full list of sound credits).

See a video demo here:

http://vimeo.com/70693984

Application Start

Before starting the SoundXY4 application, you will need to start your tabletop hardware setup or alternatively a software simulator. This version has been tested with a hardware setup based on the diffused illumination (DI) technique, assuming that i) below the tabletop surface there is an IR camera with appropriate IR illumination and a video projector, and ii) the tabletop surface material is both translucent enough to allow the IR camera to track the markers of the objects, and opaque enough to allow the projection to be clearly displayed.

For more information:

http://wiki.nuigroup.com/Diffused_Illumination

Make sure to install a computer vision engine that implements the TUIO protocol (here we are using reacTIVision: http://reactivision.sourceforge.net). Confirm that an IR camera is connected to reacTIVision before launching the engine, and also that in the file reacTIVision.xml the number of port is changed to 57120 to send TUIO messages to SuperCollider: <tuio host="127.0.0.1" port="57120" />. Alternatively start the TUIO Simulator typing java -jar TUIOSimulator.jar -port 57120 from the command line to send TUIO messages to SuperCollider.

reacTIVision provides a set of fiducial markers with unique IDs. It is recommended to have a number of physical objects with these markers attached.

The SoundXY4 application is based on the SuperCollider programming language.

http://supercollider.sourceforge.net

Drag SoundXY4 folder to the Extensions folder of SuperCollider: /Users/{username}/Library/Application Support/SuperCollider/Extensions (in Mac)

You need to have installed the SETO Quark for the recognition of tangible objects.

http://sourceforge.net/p/quarks/code/HEAD/tree/seto/

You will also need to download the sounds and point to the corresponding folder in the main class file XY4.sc.

Restart SuperCollider.

Usage

You can start the application by typing XY4.new on the SuperCollider IDE. The spatialisation mode is activated by default. It is also possible to launch the program with no spatialisation by typing XY4.new(0).

SoundXY4 tracks the identity (ID), position and orientation of tangible objects tagged with fiducial markers and maps them to sound players or effects. In this version, there is a subset of 36 different sound samples that are mapped to 36 fiducials (IDs from 0 to 35). Sounds are played in loop. Sounds are grouped in 6 categories inspired by Russolo's taxonomy. We used physical cubes with a unique marker on each side of the cube. For this version, we used another subset of 6 filters repeated in 4 different cubes (IDs from 108 to 131). Filters used are a band pass filter, a resonant low pass filter, a high pass filter, a comb delay, a pitch shifter, and an amplitude modulator.

When a sound player cube is on the tabletop surface, it is highlighted by a coloured square. There is a different colour for each category of sound players, and the nearest filter will take the same colour to indicate the sound that it is affecting.

It is possible to change the volume for each cube by rotating clockwise (volume up) or counterclockwise (volume down).

License

SoundXY4 is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. See COPYING for the license text.

References

Acknowledgements

I am very thankful to Gerard Roma for his suggestions on how to improve the code and logic of this application. Thanks to the SuperCollider community for developing such a powerful programming tool and for the opportunity to carry out a workshop on tangibles together with Gerard Roma and Till Bovermann in the SuperCollider Symposium 2012, which was the start of a direction followed in this application. Finally, thanks to the Reactable team for the ideas and technologies that have inspired this project.

Sound credits

explosions

percussion

screeches

voices

whispers

whistles

About

A SuperCollider class extension for ambisonics spatialization on a tabletop tangible interface.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages