< Back to IRCAM Forum

Spat5 - Understanding the radius message

Hi,

Fairly basic question I think. Recently I’ve been working with loudspeaker arrays with actual measured dimensions as opposed to regular quad or octophonic layouts that sit by default on the 1m radius as defined by spat.

The measured arrays are usually 6-12m in diameter but most of the spatialisation movement I work on takes place at 1m distance, so I’ve scale this up accordingly for a specific array. The problem is that the sources are then too ‘distant’, because the listener radius is still defined at 1m. In the reference pdf I’ve found this message for .oper:

/source/[index]/radius [number]

But while I’m not in a studio atm I’d like to how it works as I thought the radius message would apply to the room rather than sources:

  • Is there a way to send the radius message to all sources at once?

  • Instead of changing the radius, I could scale down the loudspeaker array to the default 1m size. Is there an advantage to this? Might the reverb sound different, even if you use the same reverb size/time, a larger array would sound different to a smaller one? Or would this be compensated if you scaled the radius accordingly to the larger array?

Thanks
Nick

Hi Nick,

Here is an old post about radius : Spat 5.0.0

To send a radius message to all the sources at once : /source/*/radius [number] (use the status window of your oper or viewer object, narrow the display of the parameters to radius, through the search bar, to probe it…)

Check 5.4 Source radius part in the user manual for a proper definition of the radius of a sound source and how to initialize it

Bye,

N.

Nadir’s answer is great.
Indeed, I would recommend to keep the loudspeaker array to 1m, and just calibrate the speaker setup for the actual dimensions.
You can have a look at spat5.tuto-alignment-1.maxpat for further information.

Best,
T.

Thanks both, and I overlooked the fact that gains and delays are no longer aligned within .spat~ in v5, as I read here:


I get the impression that either increasing the radius to the actual measurements or scaling down the speaker layout to 1m radius is basically equivalent - is that right? The reverb won’t behave any differently at larger scaled radii?

Changing the radius parameter in spat5.oper might affect your mix as this affects the distance law (source presence behavior).
It is usually preferable to not change the radius (in spat5.oper) but simply “align” your speaker setup (with spat5.align~).
Using spat5.align~, the speaker setup behaves as a “perfect ring” of loudspeakers (the radius of the circle then corresponds to the distance of the furthest loudspeaker). Spat5.align~ only applies gains/delays, so that does not affect your mix/balance/reverb at all. (spat5.align~ is totally separated from spat5.spat~).

That said, a speaker setup with 1m radius and a speaker setup with 10m radius might “sound” differently in a given room, as they interact differently with the room acoustics (of the reproduction hall).
But there is nothing in Spat to compensate for such interaction with the actual reproduction room, regardless of the strategy you use (changing radius or aligning the speaker array).

In general, I would recommend to 1) keep 1m radius in spat5.oper, 2) mix everything ‘as if’ the speaker setup was 1m radius, 3) align the actual speaker array with spat5.align~, 4) adjust the final mix in the actual reproduction room, e.g. by tweaking (a bit) room presence or source presence, if the reproduction hall happens to be (naturally) too reverberant.

Best,
T.

Thanks for the info, T.

I think the issue aside from alignment is that I was simplistically wanting to write spatialisation locations and movements so that sources met or intersected on exact loudspeaker locations, but when the speakers are beyond the 1m radius of course the sources are attenuated and ‘reverbed’ according to the distance processing. So actually, the sources got quieter when directly on a speaker, rather than louder.

I now see the advantage of keeping the 1m radius - it means there’s less fiddling with scaling source spatialisation information between different arrays and performances, and in general it means there can be more consistency throughout approaches.

I guess this all speaks to the nature of the visualisation of the sound scene in spat.oper. From what you say here, I’m thinking of it almost as two superimposed visualisations - one for the sources (which is more important) and one for the loudspeakers. Basically, you shouldn’t try to use the loudspeakers as reference points for spatialisation but rather stick to the imaginary circle/sphere of the listener (with 1m default radius), which will be rendered accordingly for the speakers with spat5.align~.

Sorry if this all sounds basic, just thinking out loud in case other users find it useful (or if I’m mistaken!)

Thanks
Nick

1 Like

Your understanding is correct !
And these are not basic questions. This thread will be helpful to other users.
In any case : trust what you hear, not what you see.

Best,
T.

2 Likes