Feature Request
Description
Add a setVolume(float volume) method to RemoteAudioTrack class to allow per-participant volume control.
Use Case
In the RMS Chatroom Fabric Mod, users need to adjust the volume of individual voice chat participants (0-200%, similar to Discord). Currently, the SDK's RemoteAudioTrack only exposes setEnabled() and isEnabled() methods, but no volume control.
Proposed API
publicclassRemoteAudioTrackextendsAudioTrack {
/** * Set the playback volume for this remote audio track. * @param volume Volume level: 0.0 = mute, 1.0 = normal, 2.0 = 200% boost */publicvoidsetVolume(floatvolume);
/** * Get the current volume level. * @return Current volume (0.0 - 2.0) */publicfloatgetVolume();
}Implementation Notes
This would likely require accessing the underlying WebRTC audio track and applying gain control. The Android LiveKit SDK has this via RemoteAudioTrack.setVolume(double volume).
References
Feature Request
Description
Add a
setVolume(float volume)method toRemoteAudioTrackclass to allow per-participant volume control.Use Case
In the RMS Chatroom Fabric Mod, users need to adjust the volume of individual voice chat participants (0-200%, similar to Discord). Currently, the SDK's
RemoteAudioTrackonly exposessetEnabled()andisEnabled()methods, but no volume control.Proposed API
Implementation Notes
This would likely require accessing the underlying WebRTC audio track and applying gain control. The Android LiveKit SDK has this via
RemoteAudioTrack.setVolume(double volume).References
dev.onvoid.webrtclibrary may have audio processing capabilities that could be leveraged.