Answered
0
0

Hi,

We are experiencing a very loud random glitch when a specific 3D event plays in Unity. This seems to occur rarely (around 1 out of 50 times). When this bug occurs, this event (a short creature grunt sound) will trigger a 3/4 seconds noise with a RMS level of around 0dBFS (very loud).

The event has the following specifications:
– It’s being called directly by the PlayOneShot() method (it is NOT assigned to an FmodStudioEventEmitter)
– 3D Panner with the default options, except for “Max instances” (they are set to 2) and Min&Max Distance (set to 10.0-40.0)
– a first audio track that plays a multi-sound module.
– 1 parameter that will trigger different multi-sound modules on a second audio track, depending on its value.

We are using Fmod Studio v.1.06.02 and Unity v5.3.3f1

Any ideas why this is happening?

Thanks,
Renato

  • You must to post comments
Best Answer
0
0

Thanks. I still get the following compile error though:

Assets/Plugins/FMOD/FMOD_StudioSystem.cs(259,29): error CS1501: No
overload for method setSoftwareFormat' takes1′ arguments

  • Nicholas Wilcox

    sorry, my mistake: for you it would be sys.setSoftwareFormat(48000, FMOD.SPEAKERMODE._5POINT1, 0);

  • Nicholas Wilcox

    Did this fix your compile errors and sound glitches?

  • Paulo Gomes

    Sorry Nicholas, I haven’t tried this yet. I’ll give feedback ASAP :)

  • You must to post comments
0
0

Check the Speaker Mode set at runtime matches the speaker mode defined in the tool.

For the tool look at the project preferences menu.

For the 1.06.02 Unity Integration you’ll have to modify FMOD_StudioSystem.cs and add code at line 285

var mySpeakerMode = FMOD.SPEAKERMODE.STEREO; // or 5POINT1 or 7POINT1
sys.setSoftwareFormat(mySpeakerMode);
  • You must to post comments
0
0

Thanks. In my FMOD Project, in the preferences menu, in the “Format” Tab I have it set to “5.1 Surround”. At runtime the speaker mode is stereo.

I’m trying to add that code in FMOD_StudioSystem.cs, however, it gives me an error when compiling. Can you specify exactly where this line needs to be added? From line 280 I have the following:

// Dummy flush and update to get network state
ERRCHECK(system.flushCommands());
result = system.update();

// Restart without liveupdate if there was a socket error
if (result == FMOD.RESULT.ERR_NET_SOCKET_ERROR)
{
FMOD.Studio.UnityUtil.LogWarning(“LiveUpdate disabled: socket in already in use”);
flags &= ~FMOD.Studio.INITFLAGS.LIVEUPDATE;
ERRCHECK(system.release());
ERRCHECK(FMOD.Studio.System.create(out system));
FMOD.System sys;
ERRCHECK(system.getLowLevelSystem(out sys));
result = system.initialize(1024, flags, FMOD.INITFLAGS.NORMAL, global::System.IntPtr.Zero);
ERRCHECK(result);
}
isInitialized = true;
}
  • You must to post comments
0
0

Add it right after the line

ERRCHECK(sys.setAdvancedSettings(ref advancedSettings));
  • You must to post comments
Showing 4 results
Your Answer

Please first to submit.