Customization
Using this SDK, you can customize your application with the BlueJeansSDKInitParams one can customize the SDK experience by setting the customizationParams.
Enable/Disable Media Stream
If you do not want to use the remote audio, video, and content, you can disable these streams to reduce bandwidth and CPU usage. To disable these streams, use the setRemoteVideoMuted (), setRemoteAudiomuted (), and setContentMuted () methods on the meetingServiceobject.
BlueJeansSDK.meetingService.setRemoteVideoMuted(true) to disable video stream
BlueJeansSDK.meetingService.setRemoteAudioMuted(true) to disable audio stream
BlueJeansSDK.meetingService.setContentMuted(true) to disable content stream
Note
By default, remote video, audio, and content media stream have been enabled.
Color Customization
The SDK supports limited customization of the colors in the video layouts. Three colors can be customized.
- audioTileColor: The color of the background of audio-only participants
- containerColorOfAllTiles: The color of the background of the entire remote video container
- videoTileBackgroundColor: The color of the background of video participants, whose video does not fill the entire view (eg. portrait videos)
The colors can either be specified as a named color from the main asset bundle, or with a closure that configures a CAGradientLayer. The three colors are given in the CustomizationParams struct and should be set at initialization, they can be left nil to leave as the default colors.
let gradientBackground: CustomBackground = .gradient { layer in
layer.colors = [ UIColor.blue.cgColor, UIColor.magenta.cgColor]
layer.type = .axial
}
let colorBackground: CustomBackground = .colorNamed("colorFromAssetBundle")
let customizationParams = CustomizationParams(audioTileColor: gradientBackground,
containerColorOfAllTiles: colorBackground,
videoTileBackgroundColor: gradientBackground)
let initParameters = BlueJeansSDKInitParams(customizationParams: customizationParams)
BlueJeansSDK.initialize(bluejeansSDKInitParams: initParameters)
5x5 Support
Enabling up to 25 remote video endpoints to be visible at one time in the gallery layout. The default is set to 9. The initialize function takes a BlueJeansSDKInitParams struct with a Boolean flag for enabling 5x5 support (Ref. Configuring 5x5 in gallery layout).
Screen Share behavior
Configure screen share behavior in the following ways:
- Specify if a participant can begin screen sharing while another participant is already screen sharing (called “hijacking” the screen share), or if an App level confirmation is needed first.
- Customize the message shown to a user if their screen share is stopped for any reason (reasons could be “hijacking by another participant” or “moderator removing the screen share privilege” etc).
- Refer to the Content Share for specific steps.
Enable/Disable IVR playback
The playIVRs property is used to enable/disable the playback of IVR sounds.
If desired, the iOS Client SDK allows you to disable IVR playback within the meeting experience. If this is done, the participants will not notice “IVR sound” during the meeting.
You can control the IVR by enabling/disabling IVR playback.
var initParams = BlueJeansSDKInitParams(playIVRs: Bool)
Note:
- By default, the
playIVRsAPI is set to true. If you set it to false, the IVR sound will not be played in the meeting experience. - IVRs are only available in English.
720p Support
With the 1.4.0 release, both sending and receiving video can be configured to allow
720p capture for the highest video quality. The initialize function takes a
BlueJeansSDKInitParams struct with two Boolean flags for enabling 720p send and
receive (See. 720p Support).
Individual Stream Control
With the 1.6.0 release, developers have a custom video layout option. This gives control over the number of streams received, the quality and order of those streams, and the layout of videos in your UI (See. Custom Layout).