The playback volume can be set by the speaker per broadcast channel. This can be used to individually reduce the volume of a speaker. For example fading off voice over a small period of time when someone stops speaking.
Broadcast Trigger Component⚓︎
The broadcaster trigger component exposes 2 amplitude settings in the inspector; activation fade and trigger fade.
Activation Fade applies a fade in/out every time speech is started or stopped. For example every time push-to-talk is pressed/released. This setting should be used with care; applying any fade-in is inadvisable as it will almost certainly cause the start of what is being said to be cut off.
Volume Trigger Fade applies only to broadcast triggers which are using physics based volume triggers. This fade will be applied every time the player enters or exits the trigger area.
Both faders have the same three controls:
Channel Volume slider controls the amplitude which will be reached after the fade in time has passed. This is a direct multiplier applied to the audio, values between 0 to 1 will reduce playback amplitude, values between 1 to 2 will increase playback amplitude. If both faders are in use the values will be multiplied together.
Fade In Time slider controls how long it takes the playback amplitude to increase from zero (silent) to the
Channel Volume slider value.
Fade Out Time slider controls how long it takes the playback amplitude to decrease from the
Channel Volume slider value to zero (silent).
Script Controlled Volume⚓︎
If you are controlling channels directly from your own scripts you can control volume on the channel object.
var comms = GetComponent<DissonanceComms>();
//Create a channel with explicit amplitude
var channel = comms.RoomsChannels.Open("Room Name", amplitudeMultiplier: 0.5f);
//At any time while the channel is open change the amplitude
channel.AmplitudeMultiplier = 1.0f;
//Close the channel