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
public class RemoteAudioTrack extends AudioTrack {
/**
* Set the playback volume for this remote audio track.
* @param volume Volume level: 0.0 = mute, 1.0 = normal, 2.0 = 200% boost
*/
public void setVolume(float volume);
/**
* Get the current volume level.
* @return Current volume (0.0 - 2.0)
*/
public float getVolume();
}
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.