Administrateur

  • Profile picture of warusfel
  • Profile picture of T.

Spat

Groupe Public active 22 hours et 15 minutes ago

User group for Spat, panoramix, ToscA , and ADMix

Spat: WFS array setup and OSC basic setup?

Auteur 2 Utilisateurs souscrits |
Profile photo of Schroedingers Cat
Schroedingers Cat

Hi,

we want to use Spat for our current VR project where we compare different 3d spatialization algorithms. I’m a Max noob, but very experienced with NI Reaktor and signal processing. I had a look at the docs and at the tutorials but couldn’t figure out the following things:

1. How can I set up a circular speaker array for WFS?
2. How can I define/change/read the port of the OSC messaging system?
3. What is the difference between the spat5.wfs and the spat5.wfs~ module?
4. What are the “WFS Filters”, “WFS Directivity” and “WFS Files” sections in the spat5.wfs module for?
5. What is an SDIF file?

Janvier 22, 2019 à 20:37 #28940
Profile photo of T.
T.

Hi,

1. You can’t, unfortunately: wfs (in spat) is currently restricted to linear uniform arrays.
2. Typically you use the updsend or udpreceive object to make Max communicate with other OSC applications. See the help patchers for these objects.
3. spat5.wfs~ receives audio signals and applies wavefield synthesis, delivering speaker feed signals.
spat5.wfs on the other hand computes the gains/delays that should be used to render wfs. It’s up to you to use this information (or mess with it) and take care of the signal processing.
4. Given a loudspeaker, we pre-compute a number of things (using spat5.wfs.config) so that the realtime processing is more efficient (using lookup tables). “WFS filters” contains the pre-computed speaker delays/gains. “WFS directivity” contains filters for simulating directivity of sound sources; this is experimental and mostly for Ircam internal use only. A so called “wfs file” is a file containing either “wfs filters” or “wfs directivity” data.
5. It’s a generic file format that we use for storing the pre-computed data. (see https://www.ircam.fr/projects/detail/format-sdif/). The format is open/free, so technically you could generate your own set of data.

Best,
T.

Janvier 23, 2019 à 17:04 #28942
Profile photo of Schroedingers Cat
Schroedingers Cat

Hi,

thanks for your answers!

We were unaware of the fact that SPAT WFS rendering only supports line arrays, as the product description mentions 3D with WFS.
However, we discussed that current limitation of Spat and are now trying to use some of our mobile WFS modules instead (that is 16 speakers per module in a line array with a distance of 2,5cm apart with a length of 88cm per module).
These wfs modules are a hybrid two-way-system with dedicated inputs for 16 tweeters and 4 low/mid-drivers per module. That means, we’d have to define two line arrays in spat: one for the tweeters and one for the low/mid-drivers. Is that possible with spat and what would the basic max setup look like?

A limiting factor (from Max?) is that you cannot have more than 64 output channels. Is that correct?

Best

Février 6, 2019 à 15:09 #29194
Profile photo of T.
T.

Hi,

There’s no built-in way to deal with the tweeters & low-mid drivers distinction. You’d have to define and process two independent line arrays (and patch it yourself).

In Max 7 (and prior), the DSP I/O was limited to 256 channels. With Max 8 (and its “MC” features) there is no such limitations; I think the upper limit (in Spat or in Max) is around 8192 channels.

Best
T.

Février 6, 2019 à 19:17 #29202
Profile photo of Schroedingers Cat
Schroedingers Cat

Hi,

thanks for the explanation. Concerning building the crossover filters for the two independent line arrays, which Max modules would you recommend for that task?

Using Spat on Max 8 gives you a maximum of 8192 output channels? That sounds very good. The product page of Spat says something different, though:
“Spat objects are highly configurable and most of them support up to 250 input/output channels.”
Does that limitation still apply?

Best

Février 6, 2019 à 20:12 #29204
Profile photo of T.
T.

Yes, you can use more than 250 channels. The actual upper limit might depend on which objects you use, but most can probably go up to 8192.
Trust your patchers, not the out-dated product page.

spat5.cross3~ is a good (phase-compensated) three-way crossover. Otherwise, maybe svf~ could do the job. Or design the crossover filters yourself, and use cascade~ or alike.

T.

Février 6, 2019 à 20:26 #29206

Vous devez être connecté pour répondre à ce sujet.

Log in now