SetSoftwareFormat does not help in setting the speaker mode!


I’m using FMOD in my recent project. I have a dedicated Blaster sound card installed on my system which lets me set the speaker mode in control panel to MONO, STEREO or 5.1.

I have both 3D and 2D sounds in the project. I was trying to change the speaker mode. I know that I should setSoftwareFormat method to change it.
I figured out how to use this method and I have successfully changed the speaker mode from Stereo to Mono. I was expecting to hear any difference when I move the listener while listening to a 3D sound since the sound I’ll hear from both speakers (using a headphone) should be the same. But it’s not happening which means that setting the speaker mode to Mono in setSoftwareFormat is not working as what I expected.
Is there a more efficient way of doing this or I’m just expecting an impossible functionality.
Thank you in advance.


FMOD does not change your speaker mode.

The user has a speaker mode set to whatever they need it to be set to, in their audio settings/control panel in windows.

Also when you create an FMOD Studio project, in the settings/preferences for the build target you set it to a speaker mode (per platform if you like) .

At runtime you must only use System::setSoftwareFormat to set it to the same mode that the project has. That is it.

The only time a speaker mode is changed, is in the windows control panel.
If you only want stereo, then set the project to stereo and the speakermode in System::setSoftwareFormat to stereo as well. They should always match.