Skip to Content
Mux Docs: Home

Mux Real-Time Video has been sunset and is unavailable for new usage. Existing access will end on December 31, 2023. We recommend migrating your application to our partner, LiveKit. Please reach out to if you need more help or details.

Spaces Android SDK releases

Release notes for every version of the Spaces Android SDK

Current release

1.0.0 🎉

  • Android SDK goes GA
  • Improvement: Final documentation and API tweaks for the release
  • Improvement: Track collections are now available on Participants similarly to the web SDK
  • Improvement: Error fatality causes you to be pushed out of the Space
  • Improvement: Accessor style

Previous releases


  • Feature: Display Names
  • Improvement: Screenshare example code
  • Fix: participant hashing


  • Improvement: Make SpaceConfiguration Parcelable
  • Fix: Use the correct subscription limits


  • Fix: Use the correct subscriber limits
  • Fix: Tracks which were published when an unexpected disconnect occurs are not properly republished when the connection resumes


  • Fix: Audio republishing by adjusting the offer debounce
  • Fix: Handling when the same holder is reused on the same capturer


  • Fix: Capturer shutdown during negotiations


  • Feature: Implemented custom events
  • Improvement: LibWebRTC Update
  • Improvement: Temporarily disables auto capturer shutdown if the activity is being reconfigured
  • Improvement: Default to using the speaker phone at all times. This can be configured in SdkOptions
  • Improvement: Video quality
  • Fix: Layout of TrackRendererSurfaceView


Breaking: A local audio track is now a LocalAudioTrack which can have the preferred input device overridden with setPreferredDevice(AudioDeviceInfo audioDevice) - in this way you can set the microphone you want from the devices returned from the system AudioManager

  • Improvement New Spaces.SdkOptions class (with builder) and method Spaces.setSdkOptions(options) which enable you to alter the AudioAttributes (Android system class) used for audio output and disable certain audio processing, such as auto gain control and echo cancellation. AudioAttributes can be used to set the stream type to the media one, and so bypass the voice call default.


  • Feature: Remote Track "Silence" and "Unsilence"


  • Improvement: Sets the peer connection bandwidth directly based on simulcast configuration in order to improve video quality.


  • Improvement: LibWebRTC Update


  • Breaking: Space.getParticipants() now returns a Map of Participant ID -> Participant instead of a Map of Connection ID -> Participant.
  • Breaking: Space.getParticipant(String participantId) used to be Space.getParticipant(String connectionId)
  • Improvement: Reconnects
  • Fix: Various bug fixes


  • Breaking: ACR submission API has been redone so it no longer is via Space.Listener but a separate callback. It still calls back on the UI thread.
  • Feature: Reconnects
  • Improvement: QoS analytics tooling has been added
  • Improvement: Simulcast tuning
  • Improvement: Unpublishing video does not stop local rendering of that video


  • Breaking: TrackSurfaceRendererView no longer has an init(Spaces spaces) method. It is no longer needed to perform any unusual initialisation steps.
  • Feature: ACR scores (bad, poor, fair, good, excellent) can be submitted via Space.submitAcrScore
  • Improvement: TrackSurfaceRendererView now encapsulates the actual renderer completely (as opposed to inheriting from it) and provides methods for controlling the aspect ratio. These will be more fully documented in a later version, but largely exist as pass throughs to the libwebrtc implementations.



  • Improvement: Changing the default audio source to CAMCORDER to fix active subscriber loudness problem
  • Improvement: Better default error handling
  • Improvement: Peer connections generate internal SDK errors now
  • Improvement: ICE Candidates are queued up
  • Improvement: If role is not PUBLISHER then don't create the publish side peer connection (it will be null)
  • Fix: Clean up ICE restarts
  • Fix: Double dispose related to publish/unpublish/republish


  • Improvement: Replace usage of the Camera1 API with Camera2
  • Improvement: Exposing the SDK version on the Spaces class as a static method


  • Feature: Manual subscriptions
  • Improvement: Limits on publishing and subscriptions


  • Fix: A repeat problem with participant information ordering on the UI thread


  • Improvement: Limiting the number of active views to 25 to work around the EGLContext limits
  • Improvement: Setting default managedSubscriptions to 25 and adding an override mechanism for apps
  • Fix: Subscription and muting states


  • Improvement: API Alignment
  • Improvement: Use v1 of signaling protocol


  • Initial release of the SDK

Was this page helpful?