Group Admins

  • Profile picture of warusfel
  • Profile picture of T.


Public Group active 6 days, 1 hour ago

User group for Spat, panoramix, ToscA , and ADMix

Spat 5.0.0

Author 3 Subscribed Users |
Profile photo of T.

Dear all,

We are happy to announce the release of Spat 5.0 for Max/MSP.
Please note that this new version is not backward compatible with previous releases.

Here is a list of some key features:
– Easy and efficient OSC control. Supports pattern matching.
– Interoperability with existing tools (, IanniX, Trajectory Library, Antescofo, ToscA, etc.)
– Highly optimized GUIs. Revamped for better user experience
– Thread-safe and efficient message dispatch
– Fine control and customization of objects
– Various preset mechanisms
– Stable and efficient MS Windows implementation
– Supports Wave-field synthesis
– Many new tools for: Ambisonics, Filter design, Time Code, Quaternions, FX, Geometrical operations, etc.
– Large HRTF database available
– Includes Panoramix and ADMix tools
– Highly optimized DSP
– Rich documentation, help patchers, reference pages, etc.

Spat 5 is released as a Max Package, in 64 bit only. Please make sure you run Max in 64 bit mode.

System Requirements:
Spat 5.0 is compatible with macOS 10.7 or higher, and 64 bit Windows OS.
It is compatible with Max 6.1.4 or higher (Max 7 or Max 8). It is not compatible with Max 5 or earlier.

macOS :
1) mount the Spat 5 disk image
2) copy the content to your Max Packages folder (typically ~/Documents/Max 7/Packages)
3) launch Max in 64 bit mode

1) install the “Visual C++ Redistributable Packages for Visual Studio 2017″; you can (freely) download it from Microsoft website:
Select “Microsoft Visual C++ 2017 Redistributable” and “x64″ and follow the instructions for installation.
2) unzip the spat 5 archive, and copy the content to your Max Packages folder
3) copy the following DLL files from the Spat package:
alongside the Max 64 bit executable i.e.: C:\Programmes\Cycling ’74\Max 7\
4) launch Max 64 bit

Note that some objects are still in an experimental stage (might not be stable); these are clearly indicated in the associated help patchers.

Please post your comments, questions, feedback in the Spat discussion group.


March 9, 2018 at 14:55 #25864

Hello T

Je voudrais installer SPAT sur Windows mais pour Max 8 car j’utilise Live 10.

ou dois-je mettre les dépendances ?

Merci d’avance,

…………………………………………………………… jerome

March 22, 2018 at 20:59 #25977
Profile photo of T.

Hi Jérôme,

Assuming you have installed Max8 in the default location, the dependencies should go here: “C:\Program Files\Cycling ’74\Max 8″

For Live 10, that would be: “C:\ProgramData\Ableton\Live 10\Resources\Max”


March 23, 2018 at 11:42 #25983

Hi T,

Oui, tu l’as deviné, mon Max 8 est celui d’Ableton Live 10

Il faut mettre ces dépendances dans le dossier contenant Max (comme toujours) , sur Windows 10 c’est :

C:ProgramData/Ableton/Live 10 Suite/Resources/Max

Hoping it helps !

March 23, 2018 at 22:42 #26005

Hello T

De retour sur Mac, j’ai des erreurs d’azimut avec ce petit device
Quelle est la nouvelle terminologie ?

Merci d’avance,


…………………………………………………… jerome

PS : je n’arrive pas a joindre le device, je te l’envoie en privé

  • This reply was modified 1 month, 2 weeks ago by Jérôme Jérôme.
  • This reply was modified 1 month, 2 weeks ago by Jérôme Jérôme.
March 31, 2018 at 19:23 #26093
Profile photo of norig

Hello T,
I’m new to Spat and I need help to start using it as consciously as possible.

1) Speakers configuration:
If only the angular directions of the loudspeaker are relevant because in the most techniques the panning rendering does not account for the radius, the distance setup of the loudspeakers is virtual. Isn’t it? Is it only the proportion between distances that matters?
So, what drives me to choose between different radius values (Cf. spat5.tuto-alignement-1)?
A different perspective in the spat5.viewer, which allows more accurate movements of the sources through the space?

2) About that, I did not understand what and where are the objects to create / edit / transform spatial trajectories. Is there something similar to the trajectory controller object ambicontrol in spat5?
Thanks, bye

April 6, 2018 at 10:38 #26180
Profile photo of T.

Hi norig,

New users are always welcomed! I hope the learning curve is not too steep.

1) Your understanding is correct. The distance of the loudspeakers is irrelevant for panning. It is only used for the (time/gain) alignment stage.
Assuming your system is properly aligned (with spat, or via other means), you can choose whatever radius you want: it will only serve as a visual hint.
Often, people configure spat5.viewer so that the displayed dimensions correspond to the actual dimension of the room/hall they’re in.
(although this does not “allow” more accurate movements of the sources through the space”. The rendered movements are the same)

2) There is (yet) no built-in trajectory editor. spat5.viewer is the main editor; you’ll find a lot of useful tools in the “Geometry” tab of the “Overview” menu. You can use external tools to create/edit trajectories (e.g. IanniX, Holo-Edit, etc.) You’ll find a couple of web links in the “home” tab. Ambicontrol could be used as well to control spat5.viewer (new tutorial about that in the next release…)


April 6, 2018 at 17:23 #26188
Profile photo of norig

Hi T., first of all thanks for your previous exhaustive answer.

I’m creating my first patch with Spat5 and I have a doubt about using spat5.speaker.config: can I use it to initialize spat5.oper and consequently spat5.spat? If not, what is the smartest way to use it? Separately from other objects, just to get the coordinates to be set as initialization message for spat5.oper?

Linking these three objects I realized that if I set a number of speakers greater or lesser than the number of outputs attributed in spat5.spat~, this generates errors, but if the number is the same, no errors are generated: in this case, if I need to to create a speakers dislocation different from the default circular one, is this new correctly processed by spat5.spat? Maintaining the correspondence between the number of the outputs in spat5.spat~ and the number of speakers of spat5.speaker.config, is it possible to create more dislocations of the speakers for the same objects spat5.oper and spat5.spat?
Thanks again, best

April 16, 2018 at 13:15 #26313
Profile photo of norig

Hi T., hello everyone, another doubt about speaker.config.: in his maxhelp, delays and gains are routed to spat5.delay and spat5.diagmatrix; is it necessary to use them to process the delay and gain corrections or connecting spat5.speaker.config to spat5.oper is enough? If necessary to use them, in a sound’s workflow ending with spat5.spat~ and then dac~, where should these two objects be inserted? I did not find a complete tuto or help containing all these objects together … swimming in the deep Spat5 pool.
Thank you all, bye

April 17, 2018 at 11:34 #26332
Profile photo of T.

Hi norig,

Response to your first message:

Yes, you can absolutely use spat5.speaker.config to initialize spat5.oper (and subsequently spat5.spat~).
I dont think there is a smart way to use it. spat5.speaker.config is nothing but a handy tool that generates the coordinate messages.

Indeed the number of loudspeakers has to be consistent in the whole chain spat5.speaker.config –> spat5.oper –> spat5.spat~
Otherwise you’ll get error messages.

What do you mean by “speakers dislocation different from the default circular one” ?
You can edit, move and place the loudspeakers where you want (as long as that makes sense for the spatialization algorithm you will use).
Editing can be done with the mouse or via messages. (see the basic attached patcher)


— Pasted Max Patch, click to expand. —
April 17, 2018 at 18:25 #26337
Profile photo of T.

Hi again,

Response to your second message now:
Yes, if you want to “align” your loudspeaker setup, you need to process compensation delays and gains.
These delays/gains cannot be processed directly with spat5.spat~ and spat5.oper (for the record, that used to be possible in spat v4).
They can be processed with spat5.delay~ and spat5.diagmatrix~. These objects would have to be inserted after spat5.spat~ and before the dac~.
Another (easier) solution is to use spat5.align~. Internally, spat5.align~ is nothing but the combination of spat5.delay~ and spat5.diagmatrix~.
You can see a basic example of that in the spat5.tuto-basic-5. Other informations in the “2” tab of spat5.tuto-alignment-1.

Good luck,

April 17, 2018 at 18:37 #26338
Profile photo of norig

Dear T., thanks again for your very useful clarifications.
I have also successfully put ambicontrol~ (and its ambimonitor) in communication with spat5.viewer.

Now I’m looking for a way to move two grouped signals in space, as you can do in Panoramix. For example, in Panoramix you can place two sources in correspondence of two speakers, group them together, and move them while maintaining their initial “stereo” configuration. Is it possible in spat5? What are the best ways to handle stereo (dual mono) signals while keeping their internal angle unchanged?
Thank you, best


April 26, 2018 at 10:17 #26424
Profile photo of T.

Hi norig,

At the moment, there is no built-in “group” nor “stereo source” in Spat.
You have to build it yourself (with a little piece a patch you can “link” two sources together); it’s possible and not too difficult.
That said, I am definitely working on new features to simplify such use cases (stereo sources, and more generally group of any number of sources).
Hopefully this will be released in the coming weeks. Stay tuned.


April 26, 2018 at 20:23 #26431

You must be logged in to reply to this topic.

Log in now