Spat Introduction
Recherche Google


The Spatialisateur Project

The Spatialisateur project started in 1991 as a collaboration between Espaces Nouveaux and Ircam. Its goal is to propose a virtual acoustics processor which allows composers, performers or sound engineers to control the diffusion of sounds in a real or virtual space.This project stems from research carried out within the Ircam room acoustics laboratory on the objective and perceptive characterization of room acoustic quality. It also incorporates research done at Télécom Paris on digital signal processing algorithms for the spatialization and artificial reverberation of sounds. The Spatialisateur is integrated into the Max/MSP environment and runs on OSX (PPC/Macintel) and Windows XP platforms.

Spat~ is an effort to organize and optimize the experimental patches developped in the Spatialisateur project, in order to make them accessible to musicians and researchers who work with Max/MSP. The current release allows reproduction on multi-channel loudspeaker systems in studios or concert halls. It also integrates 3D stereo reproduction modes for headphones (binaural) or 2/4 loudspeakers (transaural), as well as Vector Based Amplitude Panning (VBAP, [11]) and Ambisonics. The reader is invited to consult the reference manual and help patches for more information on these spatialization techniques.

Features of Spat~

Spat~ is a configurable real-time spatial processor integrating the localization of sound events with room acoustic quality. Since it is based on a modular organization, it provides both a complete application and a library of Max objects for real-time spatial processing of sounds. The processor receives sounds from instrumental or synthetic sources, adds spatialization effects in real time, and ouputs signals for reproduction on an electroacoustic system (loudspeakers or headphones). The general approach taken in Spat~ can be characterized by the fact that it gives the user the possibility of specifying the desired effect from the point of view of the listener rather than from the point of view of the device or process used to generate that effect. Practically, this results in the following three general features:

  • The system can be configured according to the reproduction setup. Spat~ is not designed to work in a specific reproduction format. Some processing modules are provided in different versions to fit various reproduction setups (a multichannel system, a pair of loudspeakers or headphones). The desired effect is specified independently from the reproduction setup and is, as much as possible, preserved from a reproduction mode or listening room to another. When the listening room is not acoustically neutral, Spat~ can take into account measurements made at a reference listening position in order to automatically perform the necessary correction of the processed signal.

  • To allow for a global description of the reproduced effect, the temporal aspects (artificial reverberation) and the directional aspects (localization of sound sources and spatial content of the room effect) are integrated in a single processor. This allows to overcome the limitations of heterogeneous systems in which the localization of sound sources and the reverberation effect are generated with separate devices. It allows, for instance, to control more precisely and more intuitively the distance or proximity of sound events. From this standpoint, Spat~ can be seen as an extension of the system designed by John Chowning in the seventies [1].

  • A control interface is proposed which allows to specify the desired effect using perceptual terms rather than technical terms. The artificial room effect can be controlled in terms of independent perceptual attributes derived from psychacoustic research carried out at Ircam. This method does not suffer from the constraints that would inevitably result from a control strategy based on a geometrical and physical description of the enclosure. Since each perceptual attribute is linked to an objectively measurable criterion of the transformation of the sound, this control interface allows to imitate the acoustics of an existing room. It then allows to interpolate or extrapolate continuously towards a different acoustic quality, going through natural-sounding transformations.

Finally, since Spat~ is designed in an object-oriented programming environment (Max), it can be considered as a library of elementary modules which can be used individually (for instance: artificial reverberator, multi-channel panpot, parametric equalizer). This modularity allows one to build versions of the spatial processor for different applications or with different computational costs, depending on the desired flexibility in controlling the reproduced effect and the available digital signal processing resources.

Getting Started


Here is the organization of the main folders :

  • abstractions/ Patches for Windows and OSX

  • doc/ Documentation (including this document)

  • externals/ External objects

  • help/ Help patches

  • init/ Preset files used in certain help patches

  • resources/ Required for running the Spat (hrtf database + 3rd party externals and abstractions)

  • tutorials/ A walkthrough of Spat~ possibilities for first-time users

Organization of This Manual

In this manual, you will be introduced to the general principles and conventions adopted in the design of Spat~. It is expected that you be familiar with Max, and somewhat familiar with signal processing and acoustics. This introduction manual can, however, be read without extensive knowledge of these topics, and is divided as follows:

  • Overview of the Spat~ Library.

  • General description of Spat~ modules. Introduces the categories of objects in Spat~.

  • DSP and low-level control objects. General description of the signal processing modules in Spat~.

  • High-level control objects. Description of high-level control interfaces and methods.

  • References

This introduction manual does not go into detailed operational description of specific Spat~ objects in Max. Such information is contained in the help-patch associated to each object, which is accessible through the standard on-line help mechanism provided in Max (the help patch pops up whenever you alt-click on the corresponding box in a patch).These help-patches are reproduced in the accompanying reference manual. Some objects are not provided with a help-patch, either because their behaviour is straightforward to understand by looking inside them, or because they are too specific to be used individually.For a new user, we suggest reading this introduction manual first, and then trying the tutorial patches (found in the "tutorials" directory). Before starting to work with Spat~, it may also be useful to open some of the main help-patches or flip through the reference manual.

© CNAC-GP/Ircam and Espaces NouveauxRéalisé avec SCENARI