JoinOptions

The JoinOptions model defines how the application expects to join a conference.

For more information related to JoinOptions in terms of media preference, see MediaStreamConstraints.

Properties

audioBitrate

audioBitrate: AudioBitrate

The preferred outgoing audio bitrate. Setting this property is available only while joining a non-Dolby Voice conference. Otherwise, the SDK triggers an error.


conferenceAccessToken

Optional conferenceAccessToken: string

The conference access token that is required to join a protected conference if the conference is created using the create REST API. If the conference is created using the create method, the token is managed by the SDK and is not visible to the application users. For more information, see the Enhanced Conference Access Control document.


constraints

Optional constraints: any

Sets the conference WebRTC constraints. By default, only audio is enabled: {audio: true, video: false} unless a video has been started before joining a conference. If the constrains are not specified when a participants joins a conference, the SDK uses 720p (1280 x 720) resolution at 25fps to capture video.

Note: A video started before joining a conference will be added to the conference if video constraints are unfilled.


customVideoTrack

Optional customVideoTrack: MediaStreamTrack

A custom video track object to add to a conference. Defining this property causes ignoring video constraints defined in the constraints property. This property is available in SDK 3.7 and later.


customAudioTrack

Optional customAudioTrack: MediaStreamTrack

A custom audio track object to add to a conference. Defining this property causes ignoring audio constraints defined in the constraints property. This property is available in SDK 3.9 and later.


dvwc

Optional dvwc: boolean

Changes the audio codec used in Dolby Voice conferences:

  • If set to true, the SDK uses the Dolby Voice Codec (DVC) on Chrome and Edge on desktop operating systems; on other browsers and mobile operating systems, the SDK uses Opus. If, for some reason, DVC cannot be used in a conference, the SDK uses Opus.

  • If set to false, the SDK uses Opus on all browsers and operating systems.

By default, this parameter is set to false. The following example shows how to create a Dolby Voice conference and join the conference using the Dolby Voice Codec:

// Create a Dolby Voice conference
const createOptions = {
 alias: "conferenceAlias",
 params: {
 dolbyVoice: true
 }
};
const conference = await VoxeetSDK.conference.create(createOptions);
// Join the Dolby Voice conference using Dolby Voice Codec
const joinOptions = {
 dvwc: true
};
await VoxeetSDK.conference.join(conference, joinOptions);

For more information about the supported audio codecs, see the Dolby Voice document.


forwardingStrategy

Optional forwardingStrategy: VideoForwardingStrategy

Changes the video forwarding strategy for the local participant. This method is available only in SDK 3.6 and later.


leaveConferenceOnBeforeUnload

Optional leaveConferenceOnBeforeUnload: boolean

Allows handling the beforeunload event on the application level instead of on the SDK level. By default, the SDK listens to the beforeunload event and leaves a conference when this event is triggered. When leaveConferenceOnBeforeUnload is set to false, the SDK stops reacting on the beforeunload event, which allows customizing the beforeunload handling. When leaveConferenceOnBeforeUnload is set to false, the SDK does not react to events such as closing a tab to leave a conference and such events need to be also handled on the application level.


maxVideoForwarding

Optional maxVideoForwarding: number

Sets the maximum number of video streams that may be transmitted to the joining participant. The valid parameter's values are between 0 and 49. In the case of providing a value smaller than 0 or greater than 49, SDK triggers the VideoForwardingError. If the parameter value is not specified, the SDK automatically sets the maximum value.


mixing

Optional mixing: MixingOptions

Allows joining conferences as Mixer.


preferRecvMono

Optional preferRecvMono: Boolean

Indicates whether a participant wants to receive mono sound. By default, the property is set to false.


preferSendMono

Optional preferSendMono: Boolean

Indicates whether a participant wants to send mono sound to a conference. By default, the property is set to true in most cases. The only situation when the property is set to false is when you set the capture mode to Unprocessed before joining a conference while using Opus.


simulcast

Optional simulcast: Boolean

Enables sending the Simulcast video streams to other conference participants.


spatialAudio

Optional spatialAudio: boolean

Enables spatial audio for the local participant who joins a Dolby Voice conference. By default, this parameter is set to false. When set to true in a conference that uses the individual spatial audio style, the application must place remote participants in a 3D space using the setSpatialPosition method.

❗️

Warning

In the individual spatial audio style, remote participants' audio is disabled until the participants are assigned to specific locations. We recommend calling setSpatialPosition from the participantUpdated event to ensure that all participants are assigned to specific positions.


videoFilter

Optional videoFilter: VideoFilter

🚧

Deprecated

Dolby.io Communications SDK for Desktop has been deprecated. If you want to use video processing, use the videoProcessor property.

The video filter that allows blurring or changing the local participant's background. The video filters are available only for the Dolby.io Communications SDK for Desktop users.


videoFilterOptions

Optional videoFilterOptions: VideoFilterOptions

🚧

Deprecated

Dolby.io Communications SDK for Desktop has been deprecated. If you want to use video processing, use the videoProcessor property.

Video filter options that include the image file for the staticImage filter and information about the video stream on which the video filter should be applied.


videoProcessor

Optional videoProcessor: VideoProcessor | VideoProcessorOptions

Sets the preferred video processing options:

This property is available only in SDK 3.7 and later.