Mute
The BlueJeans SDK provides the ability to mute/unmute incoming video/audio and your self audio/video. The details are enumerated in the subsection below.
Mute/Unmute Self Video
The BlueJeans SDK provides APIs to mute/unmute the self video.
The setVideoMuted API mutes and unmutes its self-video stream flowing to other endpoints. This API also internally triggers the self-video preview state when the meeting state transitions move to the connected state.
BlueJeansSDK.MeetingServiceProtocol.setAudioMuted(to value: Boolean)
Mute/Unmute Incoming Video
The BlueJeans SDK MeetingService provides an API for muting /unmuting video from remote participants.
BlueJeansSDK.MeetingServiceProtocol.setRemoteVideoMuted(muted: Boolean)
BlueJeans SDK provides the ability to mute your incoming video to your choice. setRemoteVideoMuted() API is used where you do not want to see the incoming video.
The examples use cases are given below
- App has a view pager with the first page showing remote video and the second page showing content. When a user is on the content page, this API can be used to mute the remote video.
- To provide an audio-only mode
- App going in the background
Note
This API does not give instant results, this may take up to 5 sec in case of back-to-back requests.
Mute/Unmute Self Audio
setAudioMuted method is used to mute/unmute your local audio.
BlueJeansSDK.MeetingServiceProtocol.setAudioMuted(_ muted: Boolen)
Mute/Unmute Incoming Audio :
meetingService provides an API for muting/unmuting video from remote participants.
BlueJeansSDK.MeetingServiceProtocol.setRemoteAudioMuted(_ muted: Boolen)
This is helpful in scenarios where the user does not intend to hear incoming audio from remote participants. Some example use cases can be
- Pause the BlueJeans meeting to facilitate a concurrent VOIP call.
- Content-only mode where Audio and Video are disabled.
Mute/Unmute Content
Updates the content mute state when in the meeting. This can be used to stop the remote content stream in situations it is not needed.
BlueJeansSDK.MeetingServiceProtocol.setContentMuted(_ muted: Boolean)
Note:
Do not mute the content stream while sharing the screen from the SDK, i.e. make sure that the ContentShareService.contentShareExtensionStatus is not .started before meetingService.setContentMuted(true) to true.`
Background handling recommendations
When the application is put into the background and the user is out of the meeting
- The user's self-video needs to be stopped to save CPU load, save battery.
When the app is put to background and the user is in a meeting:
- User's self-video needs to be stopped for privacy reasons
- Remote video should be muted to save bandwidth
and the same can be turned ON when the app is put back in the foreground.
Using a set of mute APIs, you can achieve are as follows
- Use
setVideoMutedfor managing the self-video flow to other endpoints when in a meeting. - Use
setRemoteVideoMutedfor managing remote participants' videos when in a meeting. - Use
setContentMutedfor managing content when in a meeting.