Types
Dolby.io Audio Device
The platform-agnostic description of an audio device.
Struct member | Type | Description |
---|
Name | text | The name of the device. |
Native ID | string | The native ID of the device. |
Dolby.io Connection Mode
Defines whether to connect as an active user or a listener.
Enum value | Description |
---|
Active | Join a conference as an active user. |
Listener Regular | Receive multiple video streams from senders. |
Listener RTS | Receive a realtime mixed stream. |
Dolby.io Log Level
The level of logs of the Dolby.io C++ SDK.
Enum value | Description |
---|
Off | Turns off logging. |
Error | The error level logging generates logs when an error occurs and the SDK cannot properly function. |
Warning | The warning level logging generates logs when the SDK detects an unexpected problem but is still able to work as usual. |
Info | The info level logging generates an informative number of logs. |
Debug | The debug level logging generates a high number of logs to provide diagnostic information in a detailed manner. |
Verbose | The verbose level logging generates the highest number of logs, including even the HTTP requests. |
Dolby.io Noise Reduction
The audio noise reduction level.
Enum value | Description |
---|
High | Removes all background sounds to improve voice quality. Use this mode if you want to send only voice to a conference. |
Low | Removes stationary background sounds, such as the sound of a computer fan, air conditioning, or microphone hum, from audio transmitted to a conference. In this mode, non-stationary sounds are transmitted to give participants full context of other participants' environments and create a more realistic audio experience. |
Dolby.io Participant Info
Contains the current status of a conference participant and information whether the participant's audio is enabled.
Struct member | Type | Description |
---|
User ID | string | The unique identifier of the participant. |
Name | string | The participant's name. |
External ID | string | The external unique identifier that the customer's application can add to the participant while opening a session. If a participant uses the same external ID in conferences, the participant's ID also remains the same across all sessions. |
Avatar URL | string | The URL of the participant's avatar. |
Is Listener | bool | Indicates whether the participants is a listener. True means this is a participant who can receive audio and video streams, but cannot send any stream to a conference. False means this is a participant who can send and receive an audio and video stream during a conference. |
Is Sending Audio | bool | A boolean that informs whether the participant is sending audio into conference. |
Is Audible Locally | bool | Indicates whether a remote participant is audible locally. This will always be false for the local participant. |
Status | Dolby.io Participant Status | The conference status of the remote participant. |
Dolby.io Participant Status
Enum value | Description |
---|
Reserved | A participant is invited to a conference. |
Connecting | A participant received the conference invitation and is connecting to a conference. |
On Air | A participant successfully connected to a conference. |
Decline | An invited participant declined the conference invitation. Currently, the Web SDK does not offer the decline method, although participants who use Web SDK can receive the Decline status from other application users who use the Android or iOS SDK. The Web SDK does not receive the notification if the invited participant uses the decline method after joining a conference. |
Left | A participant left the conference. |
Inactive | A participant did not enable audio, video, or screen-share and, therefore, is not connected to any stream. |
Warning | A participant experiences a peer connection problem, which may result in the Error or Connected status. |
Error | A peer connection failed, and the participant cannot connect to a conference. |
Kicked | A participant was kicked from the conference. |
Unknown | |
Dolby.io Screenshare Downscale Quality
The quality for the downscaling algorithm to be used. The higher the quality, the clearer the picture will be, but the higher the CPU usage will be.
Enum value | Description |
---|
Low | Use the quicker algorithm, fast and lowest CPU used but low quality. |
Medium | Use the linear filter algorithm used mainly for horizontal scaling. |
High | Use the bilinear filter algorithm, faster than highest, but quality not as good. If downscaling fluid screen content from 4K to 1080p this option should be used. |
Highest | Use the box filter algorithm, uses the most CPU and is the slowest but produces the best quality. If downscaling detailed screen content from 4K to 2K this option should be used. |
Dolby.io Screenshare Encoder Hint
The encoder hint provides a hint to the plugin as to what type of content is being captured by the screen share. This can be used to help when making decisions for choosing encoder settings based on what aspects of the content are important. For instance, if network conditions worsen is it more important to keep a higher resolution of screen share or frame rate to keep the motion more fluid.
Enum value | Description |
---|
Unspecified | The content hint is not specified, encoder will choose settings based on the fact track is screen share only. |
Detailed | Content is detailed, encoder should keep resolution high if it can. |
Text | Content is text, encoder should keep resolution high if it can. |
Fluid | Content is fluid, full of motion, encoder should keep frame rate higher. |
Dolby.io Screenshare Max Resolution
The max resolution for the capture screen content to be shared as. If the actual captured resolution is higher than the set max resolution the plugin will downscale to the max resolution. The plugin captures screen content based on the chosen display's resolution. The max resolution will also be downscaled if the captured resolution is higher, otherwise this has no effect. Therefore the screen content will never be shared at a resolution higher than the one set here, but if the captured display has lower resolution the content will not be upscaled.
Enum value | Description |
---|
Downscale To 1080p | Downscale the height to 1080p, the width will be chosen to respect the actual aspect ratio of the raw captured frame. Downscaling will only happen if the captured resolution is higher. |
Downscale To 1440p | Downscale the height to 1440p, the width will be chosen to respect the actual aspect ratio of the raw captured frame. Downscaling will only happen if the captured resolution is higher. |
Actual Captured | No downscaling, send the content to the encoder in the actual captured resolution. |
Dolby.io Screenshare Source
The platform agnostic description of source for screen sharing.
Struct member | Type | Description |
---|
ID | int64 | Unique id of the screen in question. |
Is Screen | bool | Indicates whether this is an entire screen (true) or an application window (false). |
Title | text | Title of the screen. |
Dolby.io Spatial Audio Style
The possible spatial audio styles of the conference.
Enum value | Description |
---|
Disabled | Spatial audio is disabled. |
Individual | The individual option sets the spatial location that is based on the spatial scene, local participant's position, and remote participants' positions. This allows a client to control the position using the local, self-contained logic. However, the client has to communicate a large set of requests constantly to the server, which increases network traffic, log subsystem pressure, and complexity of the client-side application. |
Shared | Spatial audio for shared scenes, The shared option sets the spatial location that is based on the spatial scene and the local participant's position, while the relative positions among participants are calculated by the Dolby.io server. This way, the spatial scene is shared by all participants, so that each client can set its own position and participate in the shared scene. This approach simplifies communication between the client and the server and decreases network traffic. |
Dolby.io Video Codec
The preferred video codec.
Enum value | Description |
---|
H264 | The H.264 codec. |
VP8 | The VP8 codec. |
None | No codec used (meaning an audio-only conference). |
Dolby.io Video Device
The platform agnostic description of a video device.
Struct member | Type | Description |
---|
Name | text | The name of the device. |
Unique ID | string | The unique ID of the device. |
Dolby.io Video Forwarding Strategy
Defines how the plugin should select conference participants whose videos will be transmitted to the local participant.
Enum value | Description |
---|
Last Speaker | Selects participants based on their audio volume. |
Closest User | Selects participants based on the distance from the local participant. This strategy is available only for participants who enabled spatial audio. |
Dolby.io Video Track
Contains data about a Dolby.io video track.
Struct member | Type | Description |
---|
Track ID | string | The unique ID of the video track. |
Participant ID | string | The participant from whom the track is coming. |
Is Screenshare | bool | Indicates whether this is a screenshare video track (true) or a camera video track (false). |
Dolby.io Voice Font
The preferred voice modification effect that you can use to change the local participant's voice in real time.
Enum value | Example 1 | Example 2 |
---|
None | | |
Abyss | | |
AMRadio | | |
BrokenRobot | | |
DarkModulation | | |
Feminine | | |
Helium | | |
Interference | | |
Masculine | | |
NervousRobot | | |
StarshipCaptain | | |
Swarm | | |
Wobble | | |