Default value for \nfIndex in spatializers using nearField Processing
Summary
While setting a basic SATIE example with @eviau (code below), we stumbled upon the fact that using the \steroListener
or \headphoneListener
spatializers and setting the sound object \aziDeg
to -90 does not produce the expected results by default (sound object playing only on left speaker). This behaviour can be changed using the \nfIndex
control parameter and setting it to a value equal to or bigger than 1 (clipped to 1).
I expected to have \nfindex
set to 1 by default (nearField by default).
Steps to reproduce
(
s = Server.supernova.local;
~satieConfiguration = SatieConfiguration.new(s, [\stereoListener]);
~satieConfiguration.spatializers.keys;
~satie = Satie.new(~satieConfiguration);
~satie.waitForBoot({
~introspection = SatieIntrospection(~satie);
~satie.makeSourceInstance(\testSynth, \dustyRez, \default, synthArgs: [\density, 15, \attack, 25, \gainDB, -5, \aziDeg, 90]);
});
)
// Sound expected to be played only on the right speaker. This happens when changing to nearField Processing:
~satie.groupInstances[\default][\testSynth].set(\nfIndex, 1);
What is the current bug behavior?
\nfIndex
default value doesn't reflect the expected behaviour and the sound "leaks" to the other channel
What is the expected correct behavior?
Sound coming out only at a single channel when set to the proper angle (\nfIndex = 1
)
Possible fixes
Change the default value of \nfIndex
to 1 in both \stereoListener
and \headphoneListener