Introduction
MusicSpace is an interface for controlling spatialization parameters in a meaningful way.
The original contribution of MusicSpace is to introduce a constraint solver to control the location and movements of sound sources. Movements initiated by the user trigger the solver which then moves automatically other sound sources to satisfy a set of “constraints”. We have shown through various experiments that a small set of basic constraints (see MusicSpaces’s constraint palette) suffice to create a great variety of interesting configurations. MusicSpace is described in several papers, including Olivier Delerue’s Ph.D thesis. MusicSpace is now integrated into Max/MSP (as an mxj object). As a consequence, MusicSpace’s constraint solver can be used to manipulate not only spatialisation parameters, but also arbitrary Max/MSP data. This integration opens up exciting new possibilities, notably for controlling sound synthesis engines (see playlist below for examples).
https://www.youtube.com/playlist?list=PLvoqwxjRRNflC4jOhmMIjtUm-Z3yRXp4h
History
MusicSpace was the first “Active Listening” project developped at Sony CSL. MusicSpace started in 1998, with the Ph.D of Olivier Delerue under the direction of François Pachet. Olivier brought ideas on music spatialisation and interaction, and F. Pachet brought in constraints, in the spirit of Alan Borning’s Thinglab system. The combination of these two paradigms enabled us to represent knowledge about audio mixing in an yet unexplored way. A constraint propagation algorithm was designed, based on simple propagation of objects modifications through the constraint graph. This algorithm was described in Olivier Delerue’s Ph.D thesis as well as in various papers. This idea proved very successful. The system was soon recognized as very innovative in the community of computer music. It received the Bourges Music Software prize in 2000. It was demonstrated to musicians such as Jean-Michel Jarre and Peter Gabriel with enthusiastic feedback. However, we failed to conduct large-scale music projects with it. The reasons were that we could not distribute the system freely, and most importantly MusicSpace was a closed system, not able to communicate easily with other music software. 10 years later, we observed that MusicSpace’s ideas were still innovative. We decided to distribute it freely, but made two major improvements. The first is openness: MusicSpace is now a Max object, so the interpretation of source movements is now entirely defined in Max, thereby allowing for total flexibility. Notably, this allows users to experiment with novel ideas, outside the field of spatialisation, such as control of synthesis. This improvement was made by O. Delerue, as well as the demos and example patches provided in this web site. The second improvement concerns the constraint solving process. MusicSpace’s algorithm was entirely redesigned and reimplemented using an event-based approach, instead of the original recursive one. As a result, the code is more stable, and the system can handle successfully configurations that it could not handle originally. The algorithm still belongs to the family of propagation algorithms, as opposed to fully-fledged constraint systems which perform a combinatorial search in the cross-product of the variable’s domains, such as BackJava, a Java implementation of BackTalk, also designed at Sony CSL. This basically means that solutions are found deterministically, for each constraint, and do not require an actual search. When cycles are encountered, the propagations are merely checked for conflicts. If there is a conflict, the algorithm stops and issues a “No Solution Found”, which stops the user’s initial action. The new MusicSpace algorithm goes slightly further than simple propagation however, and can now handle cases in which several solutions can be tried (see for example the “Product and limit” configuration). This algorithmic contribution was done by P. Roy, F. Pachet and O. Delerue.