How to change event properties?

Hello, first time poster here, and only started using FMOD about two weeks ago. I’m working on a project right now and I was thinking one of my issues could potentially be solved by manually changing the event Properties. For background, I’m trying to have multiple 3D diegetic music sources play in sync with each other around a small 3D map. Only issue is that it seems when I leave the range of one of the sound sources and come back, it’s fallen slightly but definitely noticeably out of sync with the rest of the sound sources. I read on a post here on this site that this may be a latency issue and switching Stream from True to False might help. However, I couldn’t figure out how to toggle that setting.

Any suggestions, wether it’s how to switch Event Properties or maybe an entirely different way I should be solving this out of sync issue?

You can change the streaming property of an asset by selecting the asset in FMOD Studio’s assets browser, and either clicking the “Stream” toggle button or selecting a different loading mode from the “Advanced Loading Mode” dropdown menu.

However, there is a more effective way to get the behavior you want: Transceiver effects.
As the name suggests, a transceiver effect acts like a radio: A transmitting transceiver effect instance sends a copy of the signal at its position, and this signal is received by every receiving transceiver effect instance that’s set to the same channel as the transmitting transceiver effect.

To get the behavior you want:

  1. Create one event (let’s call it “event A”) that contains the audio you want to play in sync in different places. (Instances of this event will function like the sound booth at the radio station, in that any audio produced inside it will be broadcast.)
  2. Add a pre-fader transmitting transceiver effect to event A’s master track.
  3. Set event A’s master track volume to -oo dB. (We want the listener to hear the music over the radio, so there’s no need for them to also have ears inside the sound booth.)
  4. Ensure that event A contains no spatailizing effect. (We want to spatialize each “radio” based on the position of that radio - the position of the recording booth shouldn’t affect the sound.)
  5. Create an event (“event B”) that contains no instruments. (Instances of this event will be the radios that receive the broadcast signal in-game.)
  6. Add a transceiver effect set to receive to event B’s master track’s signal chain. Ensure this transceiver effect is set to the same channel as the transceiver effect in event A, and that this channel is not used by any other transceiver effects in your project. (The “channel” of a transceiver effect is like the frequency of a radio station. Both the transmitter and the receiver have to be tuned to the same frequency for the signal to be received.)
  7. Ensure that the master track of event A has a spatializer effect to right of the transceiver effect. (This ensured that each “radio” is spatialized properly.)

Then, all you have to do is create a single instance of event A that plays continually, and a bunch of instances of event B. Because each instance of event B plays whatever is output by event A’s transceiver effect, instances of event B will all remain in sync at all times, even if what’s playing in event A is randomized or changes suddenly.