logo
On this page

Struct

ZegoAccurateSeekConfigZegoAIVoiceChangerSpeakerInfo
ZegoAudioConfigZegoAudioEffectPlayConfig
ZegoAudioFrameParamZegoAudioMixingData
ZegoAudioSourceMixConfigZegoAutoMixerTask
ZegoBackgroundConfigZegoBarrageMessageInfo
ZegoBlurInfoZegoBroadcastMessageInfo
ZegoCanvasZegoCDNConfig
ZegoColorEnhancementParamsZegoCopyrightedMusicConfig
ZegoCopyrightedMusicGetLyricConfigZegoCopyrightedMusicGetSharedConfig
ZegoCopyrightedMusicGetSharedConfigV2ZegoCopyrightedMusicQueryCacheConfig
ZegoCopyrightedMusicQueryCacheConfigV2ZegoCopyrightedMusicRequestConfig
ZegoCopyrightedMusicRequestConfigV2ZegoCrossAppInfo
ZegoCustomAudioConfigZegoCustomAudioProcessConfig
ZegoCustomPlayerResourceConfigZegoCustomVideoCaptureConfig
ZegoCustomVideoProcessConfigZegoCustomVideoRenderConfig
ZegoDataRecordConfigZegoDataRecordProgress
ZegoDataRemoteRecordProgressZegoDeviceInfo
ZegoDummyCaptureImageParamsZegoDumpDataConfig
ZegoEffectsBeautyParamZegoEngineConfig
ZegoEngineProfileZegoExpLowlightEnhancementParams
ZegoFontStyleZegoImageBuffer
ZegoItemParamZegoLabelInfo
ZegoLayerBorderConfigZegoLogConfig
ZegoMediaDataPublisherConfigZegoMediaPlayerMediaInfo
ZegoMediaPlayerResourceZegoMediaPlayerStatisticsInfo
ZegoMediaSideInfoZegoMixerAudioConfig
ZegoMixerImageInfoZegoMixerInput
ZegoMixerOutputZegoMixerOutputRoomInfo
ZegoMixerOutputVideoConfigZegoMixerTask
ZegoMixerVideoConfigZegoMixerWhiteboard
ZegoNetworkProbeConfigZegoNetworkProbeHttpResult
ZegoNetworkProbeResultZegoNetworkProbeTcpResult
ZegoNetworkProbeTracerouteResultZegoNetworkProbeUdpResult
ZegoNetWorkResourceCacheZegoNetworkSpeedTestConfig
ZegoNetworkSpeedTestQualityZegoNetworkTimeInfo
ZegoObjectSegmentationConfigZegoPerformanceStatus
ZegoPlayerConfigZegoPlayStreamQuality
ZegoPositionZegoPositionOrientation
ZegoProxyInfoZegoPublishDualStreamConfig
ZegoPublisherConfigZegoPublisherTakeSnapshotConfig
ZegoPublishStreamQualityZegoReceiveRangeParam
ZegoRectZegoReverbAdvancedParam
ZegoReverbEchoParamZegoReverbParam
ZegoRoiRectZegoRoomConfig
ZegoRoomExtraInfoZegoRoomRecvTransparentMessage
ZegoRoomSendTransparentMessageZegoRoomStreamList
ZegoRtcStatsInfoZegoSceneConfig
ZegoSceneParamZegoScenePlayerConfig
ZegoScenePublisherConfigZegoSceneStreamConfig
ZegoScreenCaptureAudioConfigZegoScreenCaptureConfig
ZegoScreenCaptureSourceInfoZegoSEIConfig
ZegoSoundLevelConfigZegoSoundLevelInfo
ZegoStreamZegoStreamRelayCDNInfo
ZegoSwitchPlayingStreamConfigZegoTeamParam
ZegoTestNetworkConnectivityResultZegoTrafficControlInfo
ZegoUserZegoVideoConfig
ZegoVideoEncodedFrameParamZegoVideoFrameParam
ZegoVocalRangeParamZegoVoiceChangerParam
ZegoWatermark

ZegoAIVoiceChangerSpeakerInfo

AI voice changer speaker detail.

Declared in ZegoExpressDefines.h

Properties

id

id
public int id

Speaker ID.

name

name
public std::string name

Speaker name.

Methods

ZegoAIVoiceChangerSpeakerInfo

ZegoAIVoiceChangerSpeakerInfo
Declared in ZegoExpressDefines.h

ZegoAccurateSeekConfig

Precise seek configuration

Declared in ZegoExpressDefines.h

Properties

timeout

timeout
public unsigned long long timeout

The timeout time for precise search; if not set, the SDK internal default is set to 5000 milliseconds, the effective value range is [2000, 10000], the unit is ms

Methods

ZegoAccurateSeekConfig

ZegoAccurateSeekConfig
Declared in ZegoExpressDefines.h

ZegoAudioConfig

Audio configuration.

Details

Configure audio bitrate, audio channel, audio encoding for publishing stream

Declared in ZegoExpressDefines.h

Properties

bitrate

bitrate
public int bitrate

Audio bitrate in kbps, default is 48 kbps. The settings before and after publishing stream can be effective

channel

channel
public ZegoAudioChannel channel

Audio channel, default is Mono. The setting only take effect before publishing stream

codecID

codecID
public ZegoAudioCodecID codecID

codec ID, default is ZegoAudioCodecIDDefault. The setting only take effect before publishing stream

Methods

ZegoAudioConfig

ZegoAudioConfig
public ZegoAudioConfig(ZegoAudioConfigPreset preset = ZEGO_AUDIO_CONFIG_PRESET_STANDARD_QUALITY)
Declared in ZegoExpressDefines.h

ZegoAudioEffectPlayConfig

AudioEffectPlayer play configuration.

Declared in ZegoExpressDefines.h

Properties

playCount

playCount
public unsigned int playCount

The number of play counts. When set to 0, it will play in an infinite loop until the user invoke [stop]. The default is 1, which means it will play only once.

isPublishOut

isPublishOut
public bool isPublishOut

Whether to mix audio effects into the publishing stream, the default is false.

ZegoAudioFrameParam

Parameter object for audio frame.

Details

Including the sampling rate and channel of the audio frame

Declared in ZegoExpressDefines.h

Properties

sampleRate

sampleRate
public ZegoAudioSampleRate sampleRate

Sampling Rate

channel

channel
public ZegoAudioChannel channel

Audio channel, default is Mono

Methods

ZegoAudioFrameParam

ZegoAudioFrameParam
public ZegoAudioFrameParam:sampleRate(ZEGO_AUDIO_SAMPLE_RATE_UNKNOWN), channel(ZEGO_AUDIO_CHANNEL_MONO)
Declared in ZegoExpressDefines.h

ZegoAudioMixingData

audio mixing data.

Declared in ZegoExpressDefines.h

Properties

audioData

audioData
public unsigned char* audioData

Audio PCM data that needs to be mixed into the stream

audioDataLength

audioDataLength
public unsigned int audioDataLength

the length of the audio PCM data that needs to be mixed into the stream. If this is no enough data left to mix as audioDataLength, then you can set audioDataLength = 0.

param

param
public ZegoAudioFrameParam param

Audio data attributes, including sample rate and number of channels. Currently supports 16k, 32k, 44.1k, 48k sampling rate, mono or stereo, 16-bit deep PCM data. Developers need to explicitly specify audio data attributes, otherwise mixing will not take effect.

SEIData

SEIData
public unsigned char* SEIData

SEI data, used to transfer custom data. When audioData is null, SEIData will not be sent

SEIDataLength

SEIDataLength
public unsigned int SEIDataLength

SEI data length

ZegoAudioSourceMixConfig

Audio source mix config

Details

Used to config whether mix media player, audio effect player and captured system audio into publish stream or not when set audio source.

Declared in ZegoExpressDefines.h

Properties

mediaPlayerIndexList

mediaPlayerIndexList
public int* mediaPlayerIndexList

Media player instance index list.

mediaPlayerCount

mediaPlayerCount
public int mediaPlayerCount

Media player instance count.

audioEffectPlayerIndexList

audioEffectPlayerIndexList
public int* audioEffectPlayerIndexList

Audio effect player instance index list.

audioEffectPlayerCount

audioEffectPlayerCount
public int audioEffectPlayerCount

Audio effect player instance count.

enableMixSystemPlayout

enableMixSystemPlayout
public bool enableMixSystemPlayout

Enable or disable mix captured system audio into publish stream.

enableMixEnginePlayout

enableMixEnginePlayout
public bool enableMixEnginePlayout

Enable or disable mix SDK playout into publish stream.

enableMixScreenCapture

enableMixScreenCapture
public bool enableMixScreenCapture

Enable or disable mix screen capture into publish stream, the input source cannot be set to screen capture. (only for Android and iOS)

Methods

ZegoAudioSourceMixConfig

ZegoAudioSourceMixConfig
Declared in ZegoExpressDefines.h

ZegoAutoMixerTask

Auto mix stream task object.

Details

When using [StartAutoMixerTask] function to start an auto stream mixing task to the ZEGO RTC server, user need to set this parameter to configure the auto stream mixing task, including the task ID, room ID, audio configuration, output stream list, and whether to enable the sound level callback.

  • Use cases: This configuration is required when an auto stream mixing task is requested to the ZEGO RTC server.
  • Caution: As an argument passed when [StartAutoMixerTask] function is called.

Declared in ZegoExpressDefines.h

Properties

taskID

taskID
public std::string taskID

Auto stream mixing task id, must be unique in a room.

  • Use cases: User need to set this parameter when initiating an auto stream mixing task.
  • Required: Yes.
  • Recommended value: Set this parameter based on requirements.
  • Value range: A string up to 256 bytes.
  • Caution: When starting a new auto stream mixing task, only one auto stream mixing task ID can exist in a room, that is, to ensure the uniqueness of task ID. You are advised to associate task ID with room ID. You can directly use the room ID as the task ID.Cannot include URL keywords, for example, 'http' and '?' etc, otherwise publishing stream and playing stream will fail. Only support numbers, English characters and '~', '!', '@', '$', '%', '^', '&', '*', '(', ')', '_', '+', '=', '-', '`', ';', '’', ',', '.', '<', '>', '/', ''.

roomID

roomID
public std::string roomID

Auto stream mixing task id.

  • Use cases: User need to set this parameter when initiating an auto stream mixing task.
  • Required: Yes.
  • Recommended value: Set this parameter based on requirements.
  • Value range: A string up to 128 bytes.
  • Caution: Only support numbers, English characters and '~', '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '_', '+', '=', '-', '`', ';', '’', ',', '.', '<', '>', ''.If you need to communicate with the Web SDK, please do not use '%'.

audioConfig

audioConfig
public ZegoMixerAudioConfig audioConfig

The audio config of the auto mixer task.

  • Use cases: If user needs special requirements for the audio config of the auto stream mixing task, such as adjusting the audio bitrate, user can set this parameter as required. Otherwise, user do not need to set this parameter.
  • Required: No.
  • Default value: The default audio bitrate is 48 kbps, the default audio channel is ZEGO_AUDIO_CHANNEL_MONO, the default encoding ID is ZEGO_AUDIO_CODEC_ID_DEFAULT, and the default multi-channel audio stream mixing mode is ZEGO_AUDIO_MIX_MODE_RAW.
  • Recommended value: Set this parameter based on requirements.

outputList

outputList
public std::vector<ZegoMixerOutput> outputList

The output list of the auto stream mixing task, items in the list are URL or stream ID, if the item set to be URL format, only RTMP URL surpported, for example rtmp://xxxxxxxx.

  • Use cases: User need to set this parameter to specify the mix stream output target when starting an auto stream mixing task.
  • Required: Yes.

enableSoundLevel

enableSoundLevel
public bool enableSoundLevel

Enable or disable sound level callback for the task.If enabled, then the remote player can get the sound level of every stream in the inputlist by [onAutoMixerSoundLevelUpdate] callback.

  • Use cases: This parameter needs to be configured if user need the sound level information of every stream when an auto stream mixing task started.
  • Required: No.
  • Default value: false.
  • Recommended value: Set this parameter based on requirements.

streamAlignmentMode

streamAlignmentMode
public ZegoStreamAlignmentMode streamAlignmentMode

Stream mixing alignment mode.

minPlayStreamBufferLength

minPlayStreamBufferLength
public int minPlayStreamBufferLength

Sets the lower limit of the interval range for the adaptive adjustment of the stream playing cache of the stream mixing server. In the real-time chorus KTV scenario, slight fluctuations in the network at the push end may cause the mixed stream to freeze. At this time, when the audience pulls the mixed stream, there is a high probability of the problem of freeze. By adjusting the lower limit of the interval range for the adaptive adjustment of the stream playing cache of the stream mixing server, it can optimize the freezing problem that occurs when playing mixing streams at the player end, but it will increase the delay. It is not set by default, that is, the server uses its own configuration values. It only takes effect for the new input stream setting, and does not take effect for the input stream that has already started mixing.Value Range: [0,10000], exceeding the maximum value will result in a failure of the stream mixing request. On web platforms, this property does not take effect.

streamAlignmentVolumeControlMode

streamAlignmentVolumeControlMode
public ZegoStreamAlignmentVolumeControlMode streamAlignmentVolumeControlMode

Stream mixing alignment scene volume adjustment mode.

streamAlignmentBaselineStreamID

streamAlignmentBaselineStreamID
public std::string streamAlignmentBaselineStreamID

Stream mixing alignment scene baseline streamID.

Methods

ZegoAutoMixerTask

ZegoAutoMixerTask
public ZegoAutoMixerTask: taskID(), roomID(), audioConfig(), outputList(), enableSoundLevel(false), streamAlignmentMode(ZEGO_STREAM_ALIGNMENT_MODE_NONE), minPlayStreamBufferLength(-1), streamAlignmentVolumeControlMode(ZEGO_STREAM_ALIGNMENT_VOLUME_CONTROL_MODE_CLOSE), streamAlignmentBaselineStreamID()
Create a auto mix stream task object
Declared in ZegoExpressDefines.h

ZegoBackgroundConfig

Background config.

Details

It is used to configure background when the object segmentation is turned on.

Declared in ZegoExpressDefines.h

Properties

processType

processType
public ZegoBackgroundProcessType processType

Background process type.

color

color
public int color

Background color, the format is 0xRRGGBB, default is black, which is 0x000000

imageURL

imageURL
public std::string imageURL

Background image URL. Support local file absolute path (file://xxx). The format supports png, jpg.

videoURL

videoURL
public std::string videoURL
  • Caution: 1. The video will be played in a loop. 2. Support local file absolute path (file://xxx). 3. The format supports MP4, FLV, MKV, AVI. 4. The maximum resolution should not exceed 4096px, and it is recommended to be within 1920px. 5. The maximum video duration should not exceed 30 seconds, and it is recommended to be within 15 seconds. 6. The maximum video size should not exceed 50MB, and 10MB is recommended.

blurLevel

blurLevel
public ZegoBackgroundBlurLevel blurLevel

Background blur level.

Methods

ZegoBackgroundConfig

ZegoBackgroundConfig
public ZegoBackgroundConfig : processType(ZEGO_BACKGROUND_PROCESS_TYPE_TRANSPARENT),color(0),imageURL(""),videoURL(""),blurLevel(ZEGO_BACKGROUND_BLUR_LEVEL_MEDIUM)
Declared in ZegoExpressDefines.h

ZegoBarrageMessageInfo

Barrage message info.

Details

The received object of the room barrage message, including the message content, message ID, sender, sending time

Declared in ZegoExpressDefines.h

Properties

message

message
public std::string message

message content

messageID

messageID
public std::string messageID

message id

sendTime

sendTime
public unsigned long long sendTime

Message send time, UNIX timestamp, in milliseconds.

fromUser

fromUser
public ZegoUser fromUser

Message sender.Please do not fill in sensitive user information in this field, including but not limited to mobile phone number, ID number, passport number, real name, etc.

ZegoBlurInfo

blur info.

Details

mix stream blur padding info.

  • Use cases: Set text watermark in manual stream mixing scene, such as Co-hosting.

Declared in ZegoExpressDefines.h

Properties

topPadding

topPadding
public int topPadding
  • Required: False.
  • Default value: 0.

leftPadding

leftPadding
public int leftPadding
  • Required: False.
  • Default value: 0.

bottomPadding

bottomPadding
public int bottomPadding

The distance between the feathered edge and the bottom canvas border.

rightPadding

rightPadding
public int rightPadding
  • Required: False.
  • Default value: 0.

Methods

ZegoBlurInfo

ZegoBlurInfo
public ZegoBlurInfo:topPadding(0),leftPadding(0),bottomPadding(0),rightPadding(0)
Declared in ZegoExpressDefines.h

ZegoBroadcastMessageInfo

Broadcast message info.

Details

The received object of the room broadcast message, including the message content, message ID, sender, sending time

Declared in ZegoExpressDefines.h

Properties

message

message
public std::string message

message content

messageID

messageID
public unsigned long long messageID

message id

sendTime

sendTime
public unsigned long long sendTime

Message send time, UNIX timestamp, in milliseconds.

fromUser

fromUser
public ZegoUser fromUser

Message sender.Please do not fill in sensitive user information in this field, including but not limited to mobile phone number, ID number, passport number, real name, etc.

ZegoCDNConfig

CDN config object.

Details

Includes CDN URL and authentication parameter string

Declared in ZegoExpressDefines.h

Properties

url

url
public std::string url

CDN URL

authParam

authParam
public std::string authParam

Auth param of URL. Please contact ZEGO technical support if you need to use it, otherwise this parameter can be ignored (set to nullptr or empty string).

protocol

protocol
public std::string protocol

URL supported protocols, candidate values are "tcp" and "quic". If there are more than one, separate them with English commas and try them in order. Please contact ZEGO technical support if you need to use it, otherwise this parameter can be ignored (set to nullptr or empty string).

quicVersion

quicVersion
public std::string quicVersion

QUIC version。 If [protocol] has the QUIC protocol, this information needs to be filled in. If there are multiple version numbers, separate them with commas. Please contact ZEGO technical support if you need to use it, otherwise this parameter can be ignored (set to nullptr or empty string).

httpdns

httpdns
public ZegoHttpDNSType httpdns

customized httpdns service. This feature is only supported for playing stream currently.

quicConnectMode

quicConnectMode
public int quicConnectMode

QUIC establishes link mode. If the value is 1, quic 0 rtt is used preferentially to establish link. Otherwise, the link is established normally. If [protocol] has the QUIC protocol, this value takes effect.

customParams

customParams
public std::string customParams

custom param of URL. Please contact ZEGO technical support if you need to use it, otherwise this parameter can be ignored (set to nullptr or empty string).

Methods

ZegoCDNConfig

ZegoCDNConfig
public ZegoCDNConfig: quicConnectMode(0)
Declared in ZegoExpressDefines.h

ZegoCanvas

View object.

Details

Configure view object, view Mode, background color

Declared in ZegoExpressDefines.h

Properties

view

view
public void * view

View object

viewMode

viewMode
public ZegoViewMode viewMode

View mode, default is ZegoViewModeAspectFit

backgroundColor

backgroundColor
public int backgroundColor

Background color, the format is 0xRRGGBB, default is black, which is 0x000000

alphaBlend

alphaBlend
public bool alphaBlend

If enable alpha blend render, default is false.

rotation

rotation
public int rotation

Rotate the angle counterclockwise, the default is 0. The media player canvas is not supported.

mirror

mirror
public bool mirror

If enable the view mirror, default is false. Only play stream canvas is supported, for publish stream please use [setVideoMirrorMode] interface, for media player please use [enableViewMirror] interface.

viewContext

viewContext
public std::string viewContext

Context of view, default is empty string. A utf8 string with a maximum length of 63 bytes or less. Generally no attention is required, it can be used for slitting rendering of mixed stream, to understand the specific use, you need to contact ZEGO technical support.

Methods

ZegoCanvas

ZegoCanvas
public ZegoCanvas(void *view=nullptr, ZegoViewMode viewMode=ZEGO_VIEW_MODE_ASPECT_FIT, int backgroundColor=0x000000):view(view),viewMode(viewMode),backgroundColor(backgroundColor),alphaBlend(false),rotation(0),mirror(false)
Declared in ZegoExpressDefines.h

ZegoColorEnhancementParams

Color enhancement params.

Declared in ZegoExpressDefines.h

Properties

intensity

intensity
public float intensity

color enhancement intensity.

  • Value range: [0,1], the larger the value, the stronger the intensity of color enhancement.
  • Default value: 0.

skinToneProtectionLevel

skinToneProtectionLevel
public float skinToneProtectionLevel

Skin tone protection level.

  • Value range: [0,1], the larger the value, the greater the level of skin protection.
  • Default value: 1.

lipColorProtectionLevel

lipColorProtectionLevel
public float lipColorProtectionLevel

Lip color protection level.

  • Value range: [0,1], the larger the value, the greater the level of lip color protection.
  • Default value: 0.

Methods

ZegoColorEnhancementParams

ZegoColorEnhancementParams
Declared in ZegoExpressDefines.h

ZegoCopyrightedMusicConfig

CopyrightedMusic play configuration.

Declared in ZegoExpressDefines.h

Properties

user

user
public ZegoUser user

User object instance, configure userID, userName. that the user ID set here needs to be consistent with the user ID set when logging in to the room, otherwise the request for the copyright music background service will fail.

ZegoCopyrightedMusicGetLyricConfig

The configuration of getting lyric.

Declared in ZegoExpressDefines.h

Properties

songID

songID
public std::string songID

the ID of the song.

vendorID

vendorID
public int vendorID

Copyright music resource song copyright provider.

Methods

ZegoCopyrightedMusicGetLyricConfig

ZegoCopyrightedMusicGetLyricConfig
Declared in ZegoExpressDefines.h

ZegoCopyrightedMusicGetSharedConfig

The configuration of getting shared resource.

Declared in ZegoExpressDefines.h

Properties

songID

songID
public std::string songID

the ID of the song.

vendorID

vendorID

Copyright music resource song copyright provider.

roomID

roomID
public std::string roomID

The room ID, the single-room mode can not be passed, and the corresponding room ID must be passed in the multi-room mode. Indicates which room to get resources from.

Methods

ZegoCopyrightedMusicGetSharedConfig

ZegoCopyrightedMusicGetSharedConfig
Declared in ZegoExpressDefines.h

ZegoCopyrightedMusicGetSharedConfigV2

The configuration of getting shared resource.

Declared in ZegoExpressDefines.h

Properties

songID

songID
public std::string songID

the ID of the song.

vendorID

vendorID
public int vendorID

Copyright music resource song copyright provider. Refer to the value of [ZegoCopyrightedMusicVendorID].

roomID

roomID
public std::string roomID

The room ID, the single-room mode can not be passed, and the corresponding room ID must be passed in the multi-room mode. Indicates which room to get resources from.

resourceType

resourceType
public int resourceType

The resource type of music.

Methods

ZegoCopyrightedMusicGetSharedConfigV2

ZegoCopyrightedMusicGetSharedConfigV2
Declared in ZegoExpressDefines.h

ZegoCopyrightedMusicQueryCacheConfig

The configuration of querying cache.

Declared in ZegoExpressDefines.h

Properties

songID

songID
public std::string songID

the ID of the song.

resourceType

resourceType

The resource type of music.

resourceQualityType

resourceQualityType
public ZegoCopyrightedMusicResourceQualityType resourceQualityType

The resource quality type of music.

vendorID

vendorID

Copyright music resource song copyright provider.

Methods

ZegoCopyrightedMusicQueryCacheConfig

ZegoCopyrightedMusicQueryCacheConfig
Declared in ZegoExpressDefines.h

ZegoCopyrightedMusicQueryCacheConfigV2

The configuration of querying cache.

Declared in ZegoExpressDefines.h

Properties

songID

songID
public std::string songID

the ID of the song.

resourceType

resourceType
public int resourceType

The resource type of music. Refer to the value of [ZegoCopyrightedMusicResourceType].

resourceQualityType

resourceQualityType
public int resourceQualityType

The resource quality type of music. Refer to the value of [ZegoCopyrightedMusicResourceQualityType].

vendorID

vendorID
public int vendorID

Copyright music resource song copyright provider. Refer to the value of [ZegoCopyrightedMusicVendorID].

Methods

ZegoCopyrightedMusicQueryCacheConfigV2

ZegoCopyrightedMusicQueryCacheConfigV2
Declared in ZegoExpressDefines.h

ZegoCopyrightedMusicRequestConfig

The configuration of requesting resource.

Declared in ZegoExpressDefines.h

Properties

songID

songID
public std::string songID

the ID of the song.

mode

mode

VOD billing mode.

vendorID

vendorID

Copyright music resource song copyright provider.

roomID

roomID
public std::string roomID

The room ID, the single-room mode can not be passed, and the corresponding room ID must be passed in the multi-room mode. Indicate in which room to order song/accompaniment/accompaniment clip/accompaniment segment.

masterID

masterID
public std::string masterID

The master ID, which must be passed when the billing mode is billed by host. Indicate which homeowner to order song/accompaniment/accompaniment clip/accompaniment segment.

sceneID

sceneID
public int sceneID

The scene ID, indicate the actual business. For details, please consult ZEGO technical support.

Methods

ZegoCopyrightedMusicRequestConfig

ZegoCopyrightedMusicRequestConfig
Declared in ZegoExpressDefines.h

ZegoCopyrightedMusicRequestConfigV2

The configuration of requesting resource.

Declared in ZegoExpressDefines.h

Properties

songID

songID
public std::string songID

the ID of the song.

mode

mode
public int mode

VOD billing mode. Refer to the value of [ZegoCopyrightedMusicBillingMode].

vendorID

vendorID
public int vendorID

Copyright music resource song copyright provider. Refer to the value of [ZegoCopyrightedMusicVendorID].

roomID

roomID
public std::string roomID

The room ID, the single-room mode can not be passed, and the corresponding room ID must be passed in the multi-room mode. Indicate in which room to order song/accompaniment/accompaniment clip/accompaniment segment.

masterID

masterID
public std::string masterID

The master ID, which must be passed when the billing mode is billed by host. Indicate which homeowner to order song/accompaniment/accompaniment clip/accompaniment segment.

sceneID

sceneID
public int sceneID

The scene ID, indicate the actual business. For details, please consult ZEGO technical support.

resourceType

resourceType
public int resourceType

The resource type of music. Refer to the value of [ZegoCopyrightedMusicResourceType].

Methods

ZegoCopyrightedMusicRequestConfigV2

ZegoCopyrightedMusicRequestConfigV2
Declared in ZegoExpressDefines.h

ZegoCrossAppInfo

Cross APP playing stream configuration.

Declared in ZegoExpressDefines.h

Properties

appID

appID
public unsigned int appID

AppID for playing streams across apps.

token

token
public std::string token

The token that needs to be set.

Methods

ZegoCrossAppInfo

ZegoCrossAppInfo
public ZegoCrossAppInfo: appID(0), token("")
Declared in ZegoExpressDefines.h

ZegoCustomAudioConfig

Custom audio configuration.

Declared in ZegoExpressDefines.h

Properties

sourceType

sourceType
public ZegoAudioSourceType sourceType

Audio capture source type

ZegoCustomAudioProcessConfig

Customize the audio processing configuration object.

Details

Including custom audio acquisition type, sampling rate, channel number, sampling number and other parameters

Declared in ZegoExpressDefines.h

Properties

sampleRate

sampleRate
public ZegoAudioSampleRate sampleRate

Sampling rate, the sampling rate of the input data expected by the audio pre-processing module in App. If 0, the default is the SDK internal sampling rate.

channel

channel
public ZegoAudioChannel channel

Number of sound channels, the expected number of sound channels for input data of the audio pre-processing module in App. If 0, the default is the number of internal channels in the SDK

samples

samples
public int samples

The number of samples required to encode a frame; if samples = 0, the SDK will use the internal sample number, and the SDK will pass the audio data to the external pre-processing module. If the samples! = 0 (the effective value of samples is between [160, 2048]), and the SDK will send audio data to the external preprocessing module that sets the length of sample number.

ZegoCustomPlayerResourceConfig

Custom play stream resource type configuration.

Details

Custom play stream resource type configuration.

Declared in ZegoExpressDefines.h

Properties

beforePublish

beforePublish
public ZegoResourceType beforePublish

The resource type selected by the play stream before starting the publish stream.

publishing

publishing
public ZegoResourceType publishing

The type of resource selected by the play stream in the publish stream.

afterPublish

afterPublish
public ZegoResourceType afterPublish

The type of resource selected by the play stream after stopping the publish stream.

Methods

ZegoCustomPlayerResourceConfig

ZegoCustomPlayerResourceConfig
public ZegoCustomPlayerResourceConfig: beforePublish(ZEGO_RESOURCE_TYPE_RTC), publishing(ZEGO_RESOURCE_TYPE_RTC), afterPublish(ZEGO_RESOURCE_TYPE_RTC)
Declared in ZegoExpressDefines.h

ZegoCustomVideoCaptureConfig

Custom video capture configuration.

Details

Custom video capture, that is, the developer is responsible for collecting video data and sending the collected video data to SDK for video data encoding and publishing to the ZEGO RTC server. This feature is generally used by developers who use third-party beauty features or record game screen living. When you need to use the custom video capture function, you need to set an instance of this class as a parameter to the [enableCustomVideoCapture] function. Because when using custom video capture, SDK will no longer start the camera to capture video data. You need to collect video data from video sources by yourself.

Declared in ZegoExpressDefines.h

Properties

bufferType

bufferType
public ZegoVideoBufferType bufferType

Custom video capture video frame data type

ZegoCustomVideoProcessConfig

Custom video process configuration.

Declared in ZegoExpressDefines.h

Properties

bufferType

bufferType
public ZegoVideoBufferType bufferType

Custom video process video frame data type

ZegoCustomVideoRenderConfig

Custom video render configuration.

Details

When you need to use the custom video render function, you need to set an instance of this class as a parameter to the [enableCustomVideoRender] function.

Declared in ZegoExpressDefines.h

Properties

bufferType

bufferType
public ZegoVideoBufferType bufferType

Custom video capture video frame data type

frameFormatSeries

frameFormatSeries
public ZegoVideoFrameFormatSeries frameFormatSeries

Custom video rendering video frame data format。Useless when set bufferType as [EncodedData]

enableEngineRender

enableEngineRender
public bool enableEngineRender

Whether the engine also renders while customizing video rendering. The default value is [false]. Useless when set bufferType as [EncodedData]

ZegoDataRecordConfig

Record config.

Declared in ZegoExpressDefines.h

Properties

filePath

filePath
public std::string filePath

The path to save the recording file, absolute path, need to include the file name, the file name need to specify the suffix, currently supports .mp4/.flv/.aac format files, if multiple recording for the same path, will overwrite the file with the same name. The maximum length should be less than 1024 bytes.

recordType

recordType
public ZegoDataRecordType recordType

Type of recording media

ZegoDataRecordProgress

File recording progress.

Declared in ZegoExpressDefines.h

Properties

duration

duration
public unsigned long long duration

Current recording duration in milliseconds

currentFileSize

currentFileSize
public unsigned long long currentFileSize

Current recording file size in byte

quality

quality

The quality of current recording file

ZegoDataRemoteRecordProgress

File recording progress.

Declared in ZegoExpressDefines.h

Properties

duration

duration
public unsigned long long duration

Current recording duration in milliseconds

currentFileSize

currentFileSize
public unsigned long long currentFileSize

Current recording file size in byte

quality

quality
public ZegoPlayStreamQuality quality

The quality of current recording file

ZegoDeviceInfo

Device Info.

Details

Including device ID and name

Declared in ZegoExpressDefines.h

Properties

deviceID

deviceID
public std::string deviceID

Device ID

deviceName

deviceName
public std::string deviceName

Device name

deviceExtraInfo

deviceExtraInfo
public std::string deviceExtraInfo

Device extra info, Format: key="value" key2="value2"..., use line break to separate key-value pairs, and use equal sign = to separate key and "value", and there are double quotes around the value

ZegoDummyCaptureImageParams

Dummy capture image params.

Declared in ZegoExpressDefines.h

Properties

path

path
public std::string path

Picture file path.

mode

mode

Dummy capture image mode.

Methods

ZegoDummyCaptureImageParams

ZegoDummyCaptureImageParams
Declared in ZegoExpressDefines.h

ZegoDumpDataConfig

Dump data config.

Declared in ZegoExpressDefines.h

Properties

dataType

dataType
public ZegoDumpDataType dataType

Data type.

ZegoEffectsBeautyParam

Beauty configuration param.

Details

Configure the whiten, rosy, smooth, and sharpen parameters for beauty.

Declared in ZegoExpressDefines.h

Properties

whitenIntensity

whitenIntensity
public int whitenIntensity

The whiten intensity parameter, the value range is [0,100], and the default is 50.

rosyIntensity

rosyIntensity
public int rosyIntensity

the rosy intensity parameter, value range [0,100], and the default is 50.

smoothIntensity

smoothIntensity
public int smoothIntensity

the smooth intensity parameter, value range [0,100], and the default is 50.

sharpenIntensity

sharpenIntensity
public int sharpenIntensity

the sharpen intensity parameter, value range [0,100], and the default is 50.

ZegoEngineConfig

Advanced engine configuration.

Declared in ZegoExpressDefines.h

Properties

logConfig

logConfig
deprecated
public ZegoLogConfig* logConfig

Log configuration, if not set, use the default configuration. It must be set before calling [createEngine] to take effect. If it is set after [createEngine], it will take effect at the next [createEngine] after [destroyEngine].

Deprecated
This property has been deprecated since version 2.3.0, please use the [setLogConfig] function instead.

advancedConfig

advancedConfig
public std::unordered_map<std::string, std::string> advancedConfig

Other special function switches, if not set, no special function will be used by default. Please contact ZEGO technical support before use.

Methods

ZegoEngineConfig

ZegoEngineConfig
Declared in ZegoExpressDefines.h

ZegoEngineProfile

Profile for create engine

Details

Profile for create engine

Declared in ZegoExpressDefines.h

Properties

appID

appID
public unsigned int appID

Application ID issued by ZEGO for developers, please apply from the ZEGO Admin Console https://console.zegocloud.com The value ranges from 0 to 4294967295.

appSign

appSign
public std::string appSign

Application signature for each AppID, please apply from the ZEGO Admin Console. Application signature is a 64 character string. Each character has a range of '0' ~ '9', 'a' ~ 'z'. AppSign 2.17.0 and later allows null or no transmission. If the token is passed empty or not passed, the token must be entered in the [ZegoRoomConfig] parameter for authentication when the [loginRoom] interface is called to login to the room.

scenario

scenario
public ZegoScenario scenario

The room scenario. the SDK will optimize the audio and video configuration for the specified scenario to achieve the best effect in this scenario. After specifying the scenario, you can call other APIs to adjusting the audio and video configuration. Differences between scenarios and how to choose a suitable scenario, please refer to https://docs.zegocloud.com/article/14940

callbackSwitchToMainThread

callbackSwitchToMainThread
public bool callbackSwitchToMainThread

only windows and mac need callback switch to ui thread

Methods

ZegoEngineProfile

ZegoEngineProfile
public ZegoEngineProfile:appID(0), appSign(""), callbackSwitchToMainThread(true)
Declared in ZegoExpressDefines.h

ZegoExpLowlightEnhancementParams

Low light enhancement params.

Declared in ZegoExpressDefines.h

Properties

mode

mode

Low light enhancement mode.

  • Default value: Off.

type

type

Low light enhancement type.

  • Default value: Normal.

Methods

ZegoExpLowlightEnhancementParams

ZegoExpLowlightEnhancementParams
Declared in ZegoExpressDefines.h

ZegoFontStyle

Font style.

Details

Font style configuration, can be used to configure font type, font size, font color, font transparency.

  • Use cases: Set text watermark in manual stream mixing scene, such as Co-hosting.

Declared in ZegoExpressDefines.h

Properties

type

type
public ZegoFontType type
  • Required: False.
  • Default value: Source han sans [ZegoFontTypeSourceHanSans]

size

size
public int size
  • Required: False.
  • Default value: 24.
  • Value range: [12,100].

color

color
public int color
  • Required: False.
  • Default value: 16777215(white).
  • Value range: [0,16777215].

transparency

transparency
public int transparency
  • Required: False.
  • Default value: 0.
  • Value range: [0,100], 100 is completely opaque, 0 is completely transparent.

border

border
public bool border
  • Required: False.
  • Default value: False.
  • Value range: True/False.

borderColor

borderColor
public int borderColor
  • Required: False.
  • Default value: 0.
  • Value range: [0,16777215].

Methods

ZegoFontStyle

ZegoFontStyle
public ZegoFontStyle:type(ZEGO_FONT_TYPE_SOURCE_HAN_SANS),size(24),color(16777215),transparency(0),border(false),borderColor(0)
Create a default font style object.
Declared in ZegoExpressDefines.h

ZegoImageBuffer

image data content

Declared in ZegoExpressDefines.h

Properties

buffer

buffer
public unsigned char * buffer

image content in BGRA32 format.

length

length
public unsigned int length

buffer size.

width

width
public unsigned int width

buffer width.

height

height
public unsigned int height

buffer height.

ZegoItemParam

Item param.

Declared in ZegoExpressDefines.h

Properties

itemID

itemID
public long long itemID

Item ID.

capacity

capacity
public unsigned int capacity

The number of users allowed to bind the item.

position

position
public ZegoPosition position

The initial position of the item in the range scene.

createMode

createMode
public ZegoCreateItemMode createMode

The mode of create item.

Methods

ZegoItemParam

ZegoItemParam
Declared in ZegoExpressDefines.h

ZegoLabelInfo

Label info.

Details

Font style configuration, can be used to configure font type, font si-e, font color, font transparency.

  • Use cases: Set text watermark in manual stream mixing scene, such as Co-hosting.

Declared in ZegoExpressDefines.h

Properties

text

text
public std::string text
  • Required: True.
  • Value range: Maximum support for displaying 100 Chinese characters and 300 English characters.

left

left
public int left
  • Required: False.
  • Default value: 0.

top

top
public int top
  • Required: False.
  • Default value: 0.

font

font
public ZegoFontStyle font
  • Required: False.

Methods

ZegoLabelInfo

ZegoLabelInfo
public ZegoLabelInfo(std::string text):text(text),left(0),top(0),font()
Build a label info object with text.
Declared in ZegoExpressDefines.h

ZegoLayerBorderConfig

Layer border configuration.

Details

Customize the size, color, etc. of the layer border.

Declared in ZegoExpressDefines.h

Properties

width

width
public unsigned int width

Border size, default value 4, the maximum value is 100.

color

color
public int color

Background color, the format is 0xRRGGBB, default is green, which is 0x00FF00

Methods

ZegoLayerBorderConfig

ZegoLayerBorderConfig
Declared in ZegoExpressDefines.h

ZegoLogConfig

Log config.

Details

This parameter is required when calling [setlogconfig] to customize log configuration.

  • Use cases: This configuration is required when you need to customize the log storage path or the maximum log file size.
  • Caution: None.

Declared in ZegoExpressDefines.h

Properties

logPath

logPath
public std::string logPath

Used to customize the storage path of the log file.

  • Use cases: This configuration is required when you need to customize the log storage path.
  • Required: False.
  • Default value: The default path of each platform is different, please refer to the official website document https://docs.zegocloud.com/faq/express_sdkLog.
  • Caution: Developers need to ensure read and write permissions for files under this path.

logSize

logSize
public unsigned long long logSize

Used to customize the maximum log file size.

  • Use cases: This configuration is required when you need to customize the upper limit of the log file size.
  • Required: False.
  • Default value: 5MB (5 * 1024 * 1024 Bytes).
  • Value range: Minimum 1MB (1 * 1024 * 1024 Bytes), maximum 100M (100 * 1024 * 1024 Bytes), 0 means no need to write logs.
  • Caution: The larger the upper limit of the log file size, the more log information it carries, but the log upload time will be longer.

logCount

logCount
public unsigned int logCount

Log files count. Default is 3. Value range is [3, 20].

Methods

ZegoLogConfig

ZegoLogConfig
Declared in ZegoExpressDefines.h

ZegoMediaDataPublisherConfig

Used to config the media data publisher.

Details

Used to config the media data publisher when creating it.

Declared in ZegoExpressDefines.h

Properties

channel

channel
public int channel

Used to specify the publish channel index of publisher.

mode

mode

Used to specify the mode of publisher.

ZegoMediaPlayerMediaInfo

Media Infomration of media file.

Details

Meida information such as video resolution of media file.

Declared in ZegoExpressDefines.h

Properties

width

width
public int width

Video resolution width.

height

height
public int height

Video resolution height.

frameRate

frameRate
public int frameRate

Video frame rate.

Methods

ZegoMediaPlayerMediaInfo

ZegoMediaPlayerMediaInfo
Declared in ZegoExpressDefines.h

ZegoMediaPlayerResource

Multimedia resource for ZEGO media player.

Details

Used to configure loading parameters when loading multimedia resources.

Declared in ZegoExpressDefines.h

Properties

loadType

loadType
public ZegoMultimediaLoadType loadType

Used to specify the loading type of multimedia resources.

startPosition

startPosition
public unsigned long long startPosition

The progress at which the plaback started.

alphaLayout

alphaLayout
public ZegoAlphaLayoutType alphaLayout

If the specified resource has a transparent effect, you need to specify the layout position of the alpha data.

filePath

filePath
public std::string filePath

Common resource path.The absolute resource path or the URL of the network resource and cannot be nil or "". Android can set this path string with Uri.

memory

memory
public unsigned char * memory

binary data memory.

memoryLength

memoryLength
public int memoryLength

Binary data memory length.

resourceID

resourceID
public std::string resourceID

The resource ID obtained from the copyrighted music module.

onlineResourceCachePath

onlineResourceCachePath
public std::string onlineResourceCachePath

Online resource cache path, in utf8 encoding format.

maxCachePendingLength

maxCachePendingLength
public long long maxCachePendingLength

The maximum length of online resource cache to be used, in bytes, with a minimum setting of 500K (500 * 1024). The default value is 0 - no limit, and try to cache the entire file.

Methods

ZegoMediaPlayerResource

ZegoMediaPlayerResource
Declared in ZegoExpressDefines.h

ZegoMediaPlayerStatisticsInfo

Media player play statistics.

Details

Media player play statistics.

Declared in ZegoExpressDefines.h

Properties

videoSourceFps

videoSourceFps
public double videoSourceFps

Video source fps.

videoDecodeFps

videoDecodeFps
public double videoDecodeFps

Video decode fps.

videoRenderFps

videoRenderFps
public double videoRenderFps

Video render fps.

audioSourceFps

audioSourceFps
public double audioSourceFps

Audio source fps.

audioDecodeFps

audioDecodeFps
public double audioDecodeFps

Audio decode fps.

audioRenderFps

audioRenderFps
public double audioRenderFps

Audio render fps.

Methods

ZegoMediaPlayerStatisticsInfo

ZegoMediaPlayerStatisticsInfo
Declared in ZegoExpressDefines.h

ZegoMediaSideInfo

SEI Callback info.

Declared in ZegoExpressDefines.h

Properties

streamID

streamID
public std::string streamID

Stream ID.

SEIData

SEIData
public const unsigned char* SEIData

SEI data

SEIDataLength

SEIDataLength
public unsigned int SEIDataLength

Length of the SEI data

timestampNs

timestampNs
public long long timestampNs

timestamp

moduleType

moduleType
public int moduleType

SEI source module. Please contact ZEGO technical support.

ZegoMixerAudioConfig

Mix stream audio configuration.

Details

Configure video frame rate, bitrate, and resolution for mixer task

Declared in ZegoExpressDefines.h

Properties

bitrate

bitrate
public int bitrate

Audio bitrate in kbps, default is 48 kbps, cannot be modified after starting a mixer task

channel

channel
public ZegoAudioChannel channel

Audio channel, default is Mono

codecID

codecID
public ZegoAudioCodecID codecID

codec ID, default is ZegoAudioCodecIDDefault

mixMode

mixMode
public ZegoAudioMixMode mixMode

Multi-channel audio stream mixing mode. If [ZegoAudioMixMode] is selected as [Focused], the SDK will select 4 input streams with [isAudioFocus] set as the focus voice highlight. If it is not selected or less than 4 channels are selected, it will automatically fill in 4 channels. On web platforms, this property does not take effect.

Methods

ZegoMixerAudioConfig

ZegoMixerAudioConfig
public ZegoMixerAudioConfig:bitrate(48), channel(ZEGO_AUDIO_CHANNEL_MONO), codecID(ZEGO_AUDIO_CODEC_ID_DEFAULT), mixMode(ZEGO_AUDIO_MIX_MODE_RAW)
Declared in ZegoExpressDefines.h

ZegoMixerAudioConfig

ZegoMixerAudioConfig
public ZegoMixerAudioConfig(int bitrate, ZegoAudioChannel channel, ZegoAudioCodecID codecID): bitrate(bitrate), channel(channel), codecID(codecID), mixMode(ZEGO_AUDIO_MIX_MODE_RAW)
Declared in ZegoExpressDefines.h

ZegoMixerImageInfo

Set the image information of a single input stream in the mux.

Details

Sets a picture for the content of a single input stream, which is used in place of the video, i.e. the video is not displayed when the picture is used. The layout layout in [ZegoMixerInput] for image multiplexing. Use case: The developer needs to temporarily turn off the camera to display the image during the video connection to the microphone, or display the picture when the audio is connected to the microphone.

  • Available since: 2.19.0
  • Restrictions: Image size is limited to 1M.

Declared in ZegoExpressDefines.h

Properties

url

url
public std::string url

The image path, if not empty, the image will be displayed, otherwise, the video will be displayed. JPG and PNG formats are supported. There are 2 ways to use it: 1. URI: Provide the picture to ZEGO technical support for configuration. After the configuration is complete, the picture URI will be provided, for example: preset-id://xxx.jpg. 2. URL: Only HTTP protocol is supported.

displayMode

displayMode
public int displayMode

Image display mode. 0: Default. Use image to replace video content when url is not nullptr. 1: Display image based on camera status. Display image when camera is turned off. Display video content when camera is turned on (no need to clear the url parameter). 2: Display image based on the input stream has video data or not. Display image when there is no video data in the input stream for 3 consecutive seconds. The default duration for judging that there is no video data is 3 seconds. If you need change this setting, please contact ZEGO technical support. Display video content when the input stream has video data.

Methods

ZegoMixerImageInfo

ZegoMixerImageInfo
public ZegoMixerImageInfo(std::string url):url(url), displayMode(0)
Build a image info object with url.
Declared in ZegoExpressDefines.h

ZegoMixerImageInfo

ZegoMixerImageInfo
public ZegoMixerImageInfo(std::string url, int displayMode):url(url), displayMode(displayMode)
Build a image info object with url and displayMode.
Declared in ZegoExpressDefines.h

ZegoMixerInput

Mixer input.

Details

Configure the mix stream input stream ID, type, and the layout

Declared in ZegoExpressDefines.h

Properties

streamID

streamID
public std::string streamID
  • Caution: You cannot include URL keywords, otherwise publishing stream and playing stream will fails. Only support numbers, English characters and '-', '_'.

contentType

contentType
public ZegoMixerInputContentType contentType

Mix stream content type

layout

layout
public ZegoRect layout

Stream layout. When the mixed stream is an audio stream (that is, the ContentType parameter is set to the audio mixed stream type). Developers do not need to assign a value to this field, just use the SDK default.

soundLevelID

soundLevelID
public unsigned int soundLevelID

If enable soundLevel in mix stream task, an unique soundLevelID is need for every stream

volume

volume
public unsigned int volume

Input stream volume, valid range [0, 200], default is 100.

isAudioFocus

isAudioFocus
public bool isAudioFocus

Whether the focus voice is enabled in the current input stream, the sound of this stream will be highlighted if enabled.

audioDirection

audioDirection
public int audioDirection

The direction of the audio. Valid direction is between 0 to 360. Set -1 means disable. Default value is -1. On web platforms, this property does not take effect.

label

label
public ZegoLabelInfo label

Text watermark.

renderMode

renderMode
public ZegoMixRenderMode renderMode

Video view render mode.

imageInfo

imageInfo
public ZegoMixerImageInfo imageInfo

User image information.

cornerRadius

cornerRadius
public unsigned int cornerRadius

Video frame corner radius, in px.

  • Required: False.
  • Value range: Does not exceed the width and height of the video screen set by the [layout] parameter.
  • Default value: 0.

advancedConfig

advancedConfig
public std::map<std::string, std::string> advancedConfig

Set advanced configuration. Please contact ZEGO technical support. On web platforms, this property does not take effect.

blurInfo

blurInfo
public ZegoBlurInfo blurInfo

Set blur info.

Methods

ZegoMixerInput

ZegoMixerInput
public ZegoMixerInput : streamID(), contentType(ZEGO_MIXER_INPUT_CONTENT_TYPE_VIDEO), layout(), soundLevelID(0), volume(100), isAudioFocus(false), audioDirection(-1), label(""), renderMode(ZEGO_MIX_RENDER_MODE_FILL), imageInfo(""), cornerRadius(0)
Declared in ZegoExpressDefines.h

ZegoMixerInput

ZegoMixerInput
public ZegoMixerInput(std::string streamID, ZegoMixerInputContentType contentType, ZegoRect layout, unsigned int soundLevelID): streamID(streamID), contentType(contentType), layout(layout), soundLevelID(soundLevelID), volume(100),isAudioFocus(false), audioDirection(-1), label(""), renderMode(ZEGO_MIX_RENDER_MODE_FILL), imageInfo(""), cornerRadius(0)
Declared in ZegoExpressDefines.h

ZegoMixerOutput

Mixer output object, currently, a mixed-stream task only supports a maximum of four video streams with different resolutions.

Details

Configure mix stream output target URL or stream ID

Declared in ZegoExpressDefines.h

Properties

target

target
public std::string target

Mix stream output target, URL or stream ID, if set to be URL format, only RTMP URL surpported, for example rtmp://xxxxxxxx, addresses with two identical mixed-stream outputs cannot be passed in.

videoConfig

videoConfig
public ZegoMixerOutputVideoConfig videoConfig

Mix stream output video config. On web platforms, this property does not take effect.

targetRoom

targetRoom
public ZegoMixerOutputRoomInfo targetRoom

Specifies the room information for the output stream.

Methods

ZegoMixerOutput

ZegoMixerOutput
public ZegoMixerOutput : videoConfig(), targetRoom("", "")
Declared in ZegoExpressDefines.h

ZegoMixerOutput

ZegoMixerOutput
public ZegoMixerOutput(std::string target) : target(target), videoConfig, targetRoom("", "")
Declared in ZegoExpressDefines.h

ZegoMixerOutputRoomInfo

Room information for the output stream in a mixed stream.

Details

Setting room information for a single output stream; the mixed output stream can be added to the specified room, allowing users in the room to receive notifications of increased stream in the room.

  • Use cases: Manual mixed stream scenario, such as Co-hosting.
  • Available since: 3.18.0
  • Restrictions: Dynamic updates during mixed stream are not supported.

Declared in ZegoExpressDefines.h

Properties

roomID

roomID
public std::string roomID

Specifies the room ID of the output stream. You need to ensure that the room is already present when mixing starts.

userID

userID
public std::string userID

Specifies the user ID of the output stream. It is not recommended to use the same userID as the actual user in the room to avoid conflicts with the SDK's stream addition behavior.

Methods

ZegoMixerOutputRoomInfo

ZegoMixerOutputRoomInfo
public ZegoMixerOutputRoomInfo(const std::string& roomID, const std::string& userID):roomID(roomID), userID(userID)
Construct the room information of an output stream in a mixed stream by using roomID and userID.
Declared in ZegoExpressDefines.h

ZegoMixerOutputVideoConfig

Mix stream output video config object.

Details

Configure the video parameters, coding format and bitrate of mix stream output.

  • Use cases: Manual mixed stream scenario, such as Co-hosting.

Declared in ZegoExpressDefines.h

Properties

videoCodecID

videoCodecID
public ZegoVideoCodecID videoCodecID

Mix stream output video coding format, supporting H.264 and h.265 coding.

bitrate

bitrate
public int bitrate

Mix stream output video bitrate in kbps. The default value is the bitrate configured in [ZegoMixerVideoConfig].

encodeProfile

encodeProfile
public ZegoEncodeProfile encodeProfile

Mix stream video encode profile. Default value is [ZegoEncodeProfileDefault].

encodeLatency

encodeLatency
public int encodeLatency

The video encoding delay of mixed stream output, Valid value range [0, 2000], in milliseconds. The default value is 0.

enableLowBitrateHD

enableLowBitrateHD
public bool enableLowBitrateHD

Enable high definition low bitrate. Default is false.

Methods

ZegoMixerOutputVideoConfig

ZegoMixerOutputVideoConfig
public ZegoMixerOutputVideoConfig: videoCodecID(ZEGO_VIDEO_CODEC_ID_DEFAULT), bitrate(0), encodeProfile(ZEGO_ENCODE_PROFILE_DEFAULT), encodeLatency(0), enableLowBitrateHD(false)
Declared in ZegoExpressDefines.h

ZegoMixerOutputVideoConfig

ZegoMixerOutputVideoConfig
public ZegoMixerOutputVideoConfig(ZegoVideoCodecID codecID, int bitrate): videoCodecID(codecID), bitrate(bitrate), encodeProfile(ZEGO_ENCODE_PROFILE_DEFAULT), encodeLatency(0), enableLowBitrateHD(false)
Declared in ZegoExpressDefines.h

ZegoMixerOutputVideoConfig

ZegoMixerOutputVideoConfig
public ZegoMixerOutputVideoConfig(ZegoVideoCodecID codecID, int bitrate, ZegoEncodeProfile profile, int encodeLatency): videoCodecID(codecID), bitrate(bitrate), encodeProfile(profile), encodeLatency(encodeLatency), enableLowBitrateHD(false)
Declared in ZegoExpressDefines.h

ZegoMixerTask

Mix stream task object.

Details

This class is the configuration class of the stream mixing task. When a stream mixing task is requested to the ZEGO RTC server, the configuration of the stream mixing task is required. This class describes the detailed configuration information of this stream mixing task.

Declared in ZegoExpressDefines.h

Properties

taskID

taskID
public std::string taskID

The task ID of the task

audioConfig

audioConfig
public ZegoMixerAudioConfig audioConfig

The audio config of the task

videoConfig

videoConfig
public ZegoMixerVideoConfig videoConfig

The audio config of the task

inputList

inputList
public std::vector<ZegoMixerInput> inputList

The input list of the task

outputList

outputList
public std::vector<ZegoMixerOutput> outputList

The output list of the task

watermark

watermark
public ZegoWatermark* watermark

The watermark of the task

whiteboard

whiteboard
public ZegoMixerWhiteboard* whiteboard

The whiteboard of the task

backgroundColor

backgroundColor
public int backgroundColor

The background color of the task, The color value corresponding to RGBA is 0xRRGGBBAA, and setting the transparency of the background color is currently not supported. The AA in 0xRRGGBBAA is 00. For example, select RGB as #87CEFA as the background color, this parameter passes 0x87CEFA00.

backgroundImageURL

backgroundImageURL
public std::string backgroundImageURL

The background image URL of the task

enableSoundLevel

enableSoundLevel
public bool enableSoundLevel

Enable or disable sound level callback for the task. If enabled, then the remote player can get the soundLevel of every stream in the inputlist by [onMixerSoundLevelUpdate] callback.

streamAlignmentMode

streamAlignmentMode
public ZegoStreamAlignmentMode streamAlignmentMode

The stream mixing alignment mode

userData

userData
public const unsigned char* userData

User data, the length of user data should not be more than 1000 bytes,After setting, the streaming party can obtain the SEI content by listening to the callback of [onPlayerRecvSEI].

userDataLength

userDataLength
public unsigned int userDataLength

User data length, not greater than 1000. that only data with length will be read by SDK. If the length is greater than the actual length of data, the SDK will read the data according to the actual length of data.

advancedConfig

advancedConfig
public std::unordered_map<std::string, std::string> advancedConfig

Set advanced configuration, such as specifying video encoding and others. If you need to use it, contact ZEGO technical support.

minPlayStreamBufferLength

minPlayStreamBufferLength
public int minPlayStreamBufferLength

Sets the lower limit of the interval range for the adaptive adjustment of the stream playing cache of the stream mixing server. In the real-time chorus KTV scenario, slight fluctuations in the network at the push end may cause the mixed stream to freeze. At this time, when the audience pulls the mixed stream, there is a high probability of the problem of freeze. By adjusting the lower limit of the interval range for the adaptive adjustment of the stream playing cache of the stream mixing server, it can optimize the freezing problem that occurs when playing mixing streams at the player end, but it will increase the delay. It is not set by default, that is, the server uses its own configuration values. It only takes effect for the new input stream setting, and does not take effect for the input stream that has already started mixing.Value Range: [0,10000], exceeding the maximum value will result in a failure of the stream mixing request. On web platforms, this property does not take effect.

mixImageCheckMode

mixImageCheckMode
public ZegoMixImageCheckMode mixImageCheckMode

Set the mixed stream image check mode.

Methods

ZegoMixerTask

ZegoMixerTask
public ZegoMixerTask(std::string taskID=""): taskID(taskID), watermark(nullptr), whiteboard(nullptr), backgroundColor(0), enableSoundLevel(false), streamAlignmentMode(ZEGO_STREAM_ALIGNMENT_MODE_NONE), userData(nullptr), userDataLength(0), minPlayStreamBufferLength(-1), mixImageCheckMode(ZEGO_MIX_IMAGE_CHECK_MODE_NORMAL)
Declared in ZegoExpressDefines.h

ZegoMixerVideoConfig

Mix stream video config object.

Details

Configure video frame rate, bitrate, and resolution for mixer task

Declared in ZegoExpressDefines.h

Properties

width

width
public int width

Video resolution width

height

height
public int height

Video resolution height

fps

fps
public int fps

Video FPS, cannot be modified after starting a mixer task

bitrate

bitrate
public int bitrate

Video bitrate in kbps

quality

quality
public int quality

Video quality, this value is valid when the video rate control mode parameter is set to constant quality. The valid value ranges from 0 to 51. The default value is 23. If you want better video quality, lower the quality value based on 23 to test the adjustment. If you want a smaller file size, test the adjustment by increasing the high quality value at the base of 23. Take the file size under the value x as an example. The file size under the value x + 6 is half the size of the file size under the value x, and the file size under the value x-6 is twice the size of the file size under the value x. On web platforms, this property does not take effect.

rateControlMode

rateControlMode
public ZegoVideoRateControlMode rateControlMode

Video bitrate control mode. On web platforms, this property does not take effect.

Methods

ZegoMixerVideoConfig

ZegoMixerVideoConfig
public ZegoMixerVideoConfig: width(640), height(360), fps(15), bitrate(600), quality(23), rateControlMode(ZEGO_VIDEO_RATE_CONTROL_MODE_CONSTANT_RATE)
Declared in ZegoExpressDefines.h

ZegoMixerVideoConfig

ZegoMixerVideoConfig
public ZegoMixerVideoConfig(int width, int height, int fps, int bitrate): width(width), height(height), fps(fps), bitrate(bitrate), quality(23), rateControlMode(ZEGO_VIDEO_RATE_CONTROL_MODE_CONSTANT_RATE)
Declared in ZegoExpressDefines.h

ZegoMixerWhiteboard

Mixer whiteboard object.

Details

Configure the mix whiteboard ID, aspect ratio and the layout.

Declared in ZegoExpressDefines.h

Properties

whiteboardID

whiteboardID
public unsigned long long whiteboardID

Whiteboard ID.

horizontalRatio

horizontalRatio
public int horizontalRatio

Whiteboard aspect ratio(width), the default aspect ratio is 16:9.

verticalRatio

verticalRatio
public int verticalRatio

Whiteboard aspect ratio(height), the default aspect ratio is 16:9.

isPPTAnimation

isPPTAnimation
public bool isPPTAnimation

Whether the whiteboard will load dynamic PPT files or not, default value is false.

layout

layout
public ZegoRect layout

Whiteboard layout.

zOrder

zOrder
public int zOrder

Whiteboard z-order.

backgroundColor

backgroundColor
public int backgroundColor

Whiteboard background color. Defaule is 0xF1F3F400 (gray). The color value corresponding to RGBA is 0xRRGGBBAA, and setting the transparency of the background color is currently not supported. The AA in 0xRRGGBBAA is 00. For example, select RGB as #87CEFA as the background color, this parameter passes 0x87CEFA00.F

Methods

ZegoMixerWhiteboard

ZegoMixerWhiteboard
Declared in ZegoExpressDefines.h

ZegoNetWorkResourceCache

Media player network cache information

Declared in ZegoExpressDefines.h

Properties

time

time
public unsigned int time

Cached playable duration, unit ms

size

size
public unsigned int size

Cached playable size, unit byte

ZegoNetworkProbeConfig

Network probe config

Declared in ZegoExpressDefines.h

Properties

enableTraceroute

enableTraceroute
public bool enableTraceroute

Whether do traceroute, enabling tranceRoute will significantly increase network detection time

ZegoNetworkProbeHttpResult

http probe result

Declared in ZegoExpressDefines.h

Properties

errorCode

errorCode
public int errorCode

http probe errorCode, 0 means the connection is normal

requestCostTime

requestCostTime
public unsigned int requestCostTime

http request cost time, the unit is millisecond

ZegoNetworkProbeResult

Network probe result

Declared in ZegoExpressDefines.h

Properties

httpProbeResult

httpProbeResult
public ZegoNetworkProbeHttpResult* httpProbeResult

http probe result

tcpProbeResult

tcpProbeResult
public ZegoNetworkProbeTcpResult* tcpProbeResult

tcp probe result

udpProbeResult

udpProbeResult
public ZegoNetworkProbeUdpResult* udpProbeResult

udp probe result

tracerouteResult

tracerouteResult
public ZegoNetworkProbeTracerouteResult* tracerouteResult

traceroute result

ZegoNetworkProbeTcpResult

tcp probe result

Declared in ZegoExpressDefines.h

Properties

errorCode

errorCode
public int errorCode

tcp probe errorCode, 0 means the connection is normal

rtt

rtt
public unsigned int rtt

tcp rtt, the unit is millisecond

connectCostTime

connectCostTime
public unsigned int connectCostTime

tcp connection cost time, the unit is millisecond

ZegoNetworkProbeTracerouteResult

traceroute result

Details

Jump up to 30 times. The traceroute result is for reference and does not represent the final network connection result. The priority is http, tcp, udp probe result.

Declared in ZegoExpressDefines.h

Properties

errorCode

errorCode
public int errorCode

traceroute error code, 0 means normal

tracerouteCostTime

tracerouteCostTime
public unsigned int tracerouteCostTime

Time consumed by trace route, the unit is millisecond

ZegoNetworkProbeUdpResult

udp probe result

Declared in ZegoExpressDefines.h

Properties

errorCode

errorCode
public int errorCode

udp probe errorCode, 0 means the connection is normal

rtt

rtt
public unsigned int rtt

The total time that the SDK send udp data to server and receive a reply, the unit is millisecond

ZegoNetworkSpeedTestConfig

Network speed test config

Declared in ZegoExpressDefines.h

Properties

testUplink
public bool testUplink

Test uplink or not

expectedUplinkBitrate

expectedUplinkBitrate
public int expectedUplinkBitrate

The unit is kbps. Recommended to use the bitrate in ZegoVideoConfig when call startPublishingStream to determine whether the network uplink environment is suitable.

testDownlink
public bool testDownlink

Test downlink or not

expectedDownlinkBitrate

expectedDownlinkBitrate
public int expectedDownlinkBitrate

The unit is kbps. Recommended to use the bitrate in ZegoVideoConfig when call startPublishingStream to determine whether the network downlink environment is suitable.

ZegoNetworkSpeedTestQuality

network speed test quality

Declared in ZegoExpressDefines.h

Properties

connectCost

connectCost
public unsigned int connectCost

Time to connect to the server, in milliseconds. During the speed test, if the network connection is disconnected, it will automatically initiate a reconnection, and this variable will be updated accordingly.

rtt

rtt
public unsigned int rtt

rtt, in milliseconds

packetLostRate

packetLostRate
public double packetLostRate

packet lost rate. in percentage, 0.0 ~ 1.0

quality

quality
public ZegoStreamQualityLevel quality

network quality. excellent, good, medium and poor

ZegoNetworkTimeInfo

The NTP info

Declared in ZegoExpressDefines.h

Properties

timestamp

timestamp
public unsigned long long timestamp

Network timestamp after synchronization, 0 indicates not yet synchronized

maxDeviation

maxDeviation
public int maxDeviation

The max deviation

ZegoObjectSegmentationConfig

Object segmentation config.

Details

It is used to configure parameters when the object segmentation is turned on.

Declared in ZegoExpressDefines.h

Properties

objectSegmentationType

objectSegmentationType
public ZegoObjectSegmentationType objectSegmentationType

The type of object segmentation.

backgroundConfig

backgroundConfig
public ZegoBackgroundConfig backgroundConfig

Background config.

Methods

ZegoObjectSegmentationConfig

ZegoObjectSegmentationConfig
public ZegoObjectSegmentationConfig : objectSegmentationType(ZEGO_OBJECT_SEGMENTATION_TYPE_ANY_BACKGROUND)
Declared in ZegoExpressDefines.h

ZegoPerformanceStatus

System performance monitoring status

Declared in ZegoExpressDefines.h

Properties

cpuUsageApp

cpuUsageApp
public double cpuUsageApp

Current CPU usage of the app, value range [0, 1]

cpuUsageSystem

cpuUsageSystem
public double cpuUsageSystem

Current CPU usage of the system, value range [0, 1]

memoryUsageApp

memoryUsageApp
public double memoryUsageApp

Current memory usage of the app, value range [0, 1]

memoryUsageSystem

memoryUsageSystem
public double memoryUsageSystem

Current memory usage of the system, value range [0, 1]

memoryUsedApp

memoryUsedApp
public double memoryUsedApp

Current memory used of the app, in MB

ZegoPlayStreamQuality

Played stream quality information.

Details

Audio and video parameters and network quality, etc.

Declared in ZegoExpressDefines.h

Properties

videoRecvFPS

videoRecvFPS
public double videoRecvFPS

Video receiving frame rate. The unit of frame rate is f/s

videoDejitterFPS

videoDejitterFPS
public double videoDejitterFPS

Video dejitter frame rate. The unit of frame rate is f/s (Available since 1.17.0)

videoDecodeFPS

videoDecodeFPS
public double videoDecodeFPS

Video decoding frame rate. The unit of frame rate is f/s

videoRenderFPS

videoRenderFPS
public double videoRenderFPS

Video rendering frame rate. The unit of frame rate is f/s

videoKBPS

videoKBPS
public double videoKBPS

Video bit rate in kbps

videoBreakRate

videoBreakRate
public double videoBreakRate

Video break count, break count during the callback cycle (Available since 1.17.0)

audioRecvFPS

audioRecvFPS
public double audioRecvFPS

Audio receiving frame rate. The unit of frame rate is f/s

audioDejitterFPS

audioDejitterFPS
public double audioDejitterFPS

Audio dejitter frame rate. The unit of frame rate is f/s (Available since 1.17.0)

audioDecodeFPS

audioDecodeFPS
public double audioDecodeFPS

Audio decoding frame rate. The unit of frame rate is f/s

audioRenderFPS

audioRenderFPS
public double audioRenderFPS

Audio rendering frame rate. The unit of frame rate is f/s

audioKBPS

audioKBPS
public double audioKBPS

Audio bit rate in kbps

audioBreakRate

audioBreakRate
public double audioBreakRate

Audio break count, break count during the callback cycle (Available since 1.17.0)

mos

mos
public double mos

The audio quality of the playing stream determined by the audio MOS (Mean Opinion Score) measurement method, value range [-1, 5], where -1 means unknown, [0, 5] means valid score, the higher the score, the better the audio quality. For the subjective perception corresponding to the MOS value, please refer to https://docs.zegocloud.com/article/3720#4_4 (Available since 2.16.0)

rtt

rtt
public int rtt

Server to local delay, in milliseconds

packetLostRate

packetLostRate
public double packetLostRate

Packet loss rate, in percentage, 0.0 ~ 1.0

peerToPeerDelay

peerToPeerDelay
public int peerToPeerDelay

Delay from peer to peer, in milliseconds

peerToPeerPacketLostRate

peerToPeerPacketLostRate
public double peerToPeerPacketLostRate

Packet loss rate from peer to peer, in percentage, 0.0 ~ 1.0

level

level

Published stream quality level

delay

delay
public int delay

Delay after the data is received by the local end, in milliseconds

avTimestampDiff

avTimestampDiff
public int avTimestampDiff

The difference between the video timestamp and the audio timestamp, used to reflect the synchronization of audio and video, in milliseconds. This value is less than 0 means the number of milliseconds that the video leads the audio, greater than 0 means the number of milliseconds that the video lags the audio, and 0 means no difference. When the absolute value is less than 200, it can basically be regarded as synchronized audio and video, when the absolute value is greater than 200 for 10 consecutive seconds, it can be regarded as abnormal (Available since 1.19.0)

isHardwareDecode

isHardwareDecode
public bool isHardwareDecode

Whether to enable hardware decoding

videoCodecID

videoCodecID
public ZegoVideoCodecID videoCodecID

Video codec ID (Available since 1.17.0)

totalRecvBytes

totalRecvBytes
public double totalRecvBytes

Total number of bytes received, including audio, video, SEI

audioRecvBytes

audioRecvBytes
public double audioRecvBytes

Number of audio bytes received

videoRecvBytes

videoRecvBytes
public double videoRecvBytes

Number of video bytes received

audioCumulativeBreakCount

audioCumulativeBreakCount
public unsigned int audioCumulativeBreakCount

Accumulated audio break count (Available since 2.9.0)

audioCumulativeBreakTime

audioCumulativeBreakTime
public unsigned int audioCumulativeBreakTime

Accumulated audio break time, in milliseconds (Available since 2.9.0)

audioCumulativeBreakRate

audioCumulativeBreakRate
public double audioCumulativeBreakRate

Accumulated audio break rate, in percentage, 0.0 ~ 100.0 (Available since 2.9.0)

audioCumulativeDecodeTime

audioCumulativeDecodeTime
public unsigned int audioCumulativeDecodeTime

Accumulated audio decode time, in milliseconds (Available since 2.9.0)

videoCumulativeBreakCount

videoCumulativeBreakCount
public unsigned int videoCumulativeBreakCount

Accumulated video break count (Available since 2.9.0)

videoCumulativeBreakTime

videoCumulativeBreakTime
public unsigned int videoCumulativeBreakTime

Accumulated video break time, in milliseconds (Available since 2.9.0)

videoCumulativeBreakRate

videoCumulativeBreakRate
public double videoCumulativeBreakRate

Accumulated video break rate, in percentage, 0.0 ~ 1.0 (Available since 2.9.0)

videoCumulativeDecodeTime

videoCumulativeDecodeTime
public unsigned int videoCumulativeDecodeTime

Accumulated video decode time, in milliseconds (Available since 2.9.0)

muteVideo

muteVideo
public int muteVideo

Mute video (Available since 3.13.0)

muteAudio

muteAudio
public int muteAudio

Mute audio (Available since 3.13.0)

ZegoPlayerConfig

Advanced player configuration.

Details

Configure stream resource mode, CDN configuration and other advanced configurations.

Declared in ZegoExpressDefines.h

Properties

resourceMode

resourceMode
public ZegoStreamResourceMode resourceMode

Stream resource mode.

cdnConfig

cdnConfig
public ZegoCDNConfig * cdnConfig

The CDN configuration for playing stream. If set, the stream is play according to the URL instead of the streamID. After that, the streamID is only used as the ID of SDK internal callback.

roomID

roomID
public std::string roomID

The Room ID. It only needs to be filled in the multi-room mode, which indicates which room this stream needs to be bound to. This parameter is ignored in single room mode.

videoCodecID

videoCodecID
public ZegoVideoCodecID videoCodecID

The video encoding type of the stream, please contact ZEGO technical support if you need to use it, otherwise this parameter can be ignored.

sourceResourceType

sourceResourceType
public ZegoResourceType sourceResourceType

The resource type of the source stream, please contact ZEGO technical support if you need to use it, otherwise this parameter can be ignored.

codecTemplateID

codecTemplateID
public int codecTemplateID

Preconfigured codec template ID, please contact ZEGO technical support if you need to use it, otherwise this parameter can be ignored.

resourceSwitchMode

resourceSwitchMode
public ZegoStreamResourceSwitchMode resourceSwitchMode

Play resource switching strategy mode, the default is ZegoStreamResourceSwitchModeDefault

resourceWhenStopPublish

resourceWhenStopPublish
public ZegoStreamResourceType resourceWhenStopPublish

Play resource type when stop publish, the default is ZegoStreamResourceTypeDefault. This setting takes effect only if the user sets [resourceMode] to ZegoStreamResourceModeDefaut and [resourceSwitchMode] to ZegoStreamResourceSwitchModeDefault or ZegoStreamResourceSwitchModeSwitchToRTC.

adaptiveSwitch

adaptiveSwitch
public int adaptiveSwitch

Whether to enable adaptive switching of streams, 1 means on, 0 means off. Valid only if [resourceMode] is ZegoStreamResourceModeOnlyL3. Please contact ZEGO technical support if you need to use it, otherwise this parameter can be ignored.

adaptiveTemplateIDList

adaptiveTemplateIDList
public std::vector<int> adaptiveTemplateIDList

Stream adaptive transcoding template ID list. Please contact ZEGO technical support if you need to use it, otherwise this parameter can be ignored.

customResourceConfig

customResourceConfig
public ZegoCustomPlayerResourceConfig customResourceConfig

Play stream resource type configuration when [resourceMode] is ZegoStreamResourceModeCustom.

switchStreamConfig

switchStreamConfig
public ZegoSwitchPlayingStreamConfig switchStreamConfig

Extended parameters for the [switchPlayingStream] interface.

Methods

ZegoPlayerConfig

ZegoPlayerConfig
public ZegoPlayerConfig: resourceMode(ZEGO_STREAM_RESOURCE_MODE_DEFAULT), cdnConfig(nullptr), roomID(""), videoCodecID(ZEGO_VIDEO_CODEC_ID_UNKNOWN), sourceResourceType(ZEGO_RESOURCE_TYPE_RTC), codecTemplateID(0),resourceSwitchMode(ZEGO_STREAM_RESOURCE_SWITCH_MODE_DEFAULT),resourceWhenStopPublish(ZEGO_STREAM_RESOURCE_TYPE_DEFAULT), adaptiveSwitch(0)
Declared in ZegoExpressDefines.h

ZegoPosition

Request configuration of song or accompaniment.

Declared in ZegoExpressDefines.h

Properties

coordinate

coordinate
public float[3] coordinate

The coordinates of the oneself in the world coordinate system. The parameter is a float array of length 3. The three values ​​represent the front, right, and top coordinate values ​​in turn.

motionOrientation

motionOrientation
public ZegoPositionOrientation motionOrientation

Motion orientation.

cameraOrientation

cameraOrientation
public ZegoPositionOrientation cameraOrientation

Camera orientation, for 3D range spatializer.

ZegoPositionOrientation

Orientation.

Declared in ZegoExpressDefines.h

Properties

axisForward

axisForward
public float[3] axisForward

The unit vector of the front axis of its own coordinate system. The parameter is a float array with a length of 3. The three values ​​represent the front, right, and top coordinate values ​​in turn.

axisRight

axisRight
public float[3] axisRight

The unit vector of the right axis of its own coordinate system. The parameter is a float array with a length of 3. The three values ​​represent the front, right, and top coordinate values ​​in turn.

axisUp

axisUp
public float[3] axisUp

The unit vector of the up axis of its own coordinate system. The parameter is a float array with a length of 3. The three values ​​represent the front, right, and top coordinate values ​​in turn.

ZegoProxyInfo

Proxy config.

Details

Set proxy config.

Declared in ZegoExpressDefines.h

Properties

ip

ip
public std::string ip

ip. Under local proxy: local proxy ip configured by the developer. under cloud proxy: proxy ip provided by ZEGO (either hostname or ip will do).

port

port
public unsigned int port

port. Under Local Proxy: Local proxy port configured by the developer. Under Cloud Proxy: Proxy port provided by ZEGO.

hostName

hostName
public std::string hostName

hostname.Under Local Proxy: Local proxy hostname configured by the developer. Under cloud proxy: proxy hostname provided by ZEGO. proxy hostname (either hostname or ip will do).

userName

userName
public std::string userName

userName.Under Local Proxy: the authentication username of the local Proxy configured by the developer, can be ignored if there is none. Under cloud proxy: can be ignored.

password

password
public std::string password

password.Under local proxy: authentication password of local proxy configured by developer, can be ignored if there is none. Under cloud proxy: can be ignored.

Methods

ZegoProxyInfo

ZegoProxyInfo
public ZegoProxyInfo:ip(""), port(0), hostName(""), userName(""), password("")
Declared in ZegoExpressDefines.h

ZegoPublishDualStreamConfig

Dual stream info.

Declared in ZegoExpressDefines.h

Properties

streamType

streamType
public ZegoVideoStreamType streamType

streamType

encodeWidth

encodeWidth
public int encodeWidth

Video resolution width to be adjusted

encodeHeight

encodeHeight
public int encodeHeight

Video resolution height to be adjusted

fps

fps
public int fps

Video FPS to be adjusted

bitrate

bitrate
public int bitrate

Video bitrate in kbps to be adjusted

ZegoPublishStreamQuality

Published stream quality information.

Details

Audio and video parameters and network quality, etc.

Declared in ZegoExpressDefines.h

Properties

videoCaptureFPS

videoCaptureFPS
public double videoCaptureFPS

Video capture frame rate. The unit of frame rate is f/s

videoEncodeFPS

videoEncodeFPS
public double videoEncodeFPS

Video encoding frame rate. The unit of frame rate is f/s

videoSendFPS

videoSendFPS
public double videoSendFPS

Video transmission frame rate. The unit of frame rate is f/s

videoKBPS

videoKBPS
public double videoKBPS

Video bit rate in kbps

audioCaptureFPS

audioCaptureFPS
public double audioCaptureFPS

Audio capture frame rate. The unit of frame rate is f/s

audioSendFPS

audioSendFPS
public double audioSendFPS

Audio transmission frame rate. The unit of frame rate is f/s

audioKBPS

audioKBPS
public double audioKBPS

Audio bit rate in kbps

rtt

rtt
public int rtt

Local to server delay, in milliseconds

packetLostRate

packetLostRate
public double packetLostRate

Packet loss rate, in percentage, 0.0 ~ 1.0

level

level

Published stream quality level

isHardwareEncode

isHardwareEncode
public bool isHardwareEncode

Whether to enable hardware encoding

videoCodecID

videoCodecID
public ZegoVideoCodecID videoCodecID

Video codec ID (Available since 1.17.0)

totalSendBytes

totalSendBytes
public double totalSendBytes

Total number of bytes sent, including audio, video, SEI

audioSendBytes

audioSendBytes
public double audioSendBytes

Number of audio bytes sent

videoSendBytes

videoSendBytes
public double videoSendBytes

Number of video bytes sent

audioTrafficControlRate

audioTrafficControlRate
public int audioTrafficControlRate

Audio traffic control ratio, in percentage, 0 ~ 100. A value of -1 indicates failed streaming. Higher values indicate greater traffic control impact.

videoTrafficControlRate

videoTrafficControlRate
public int videoTrafficControlRate

Video traffic control ratio, in percentage, 0 ~ 100. A value of -1 indicates failed streaming. Higher values indicate greater traffic control impact.

ZegoPublisherConfig

Advanced publisher configuration.

Details

Configure room id

Declared in ZegoExpressDefines.h

Properties

roomID

roomID
public std::string roomID

The Room ID, It is not necessary to pass in single room mode, but the ID of the corresponding room must be passed in multi-room mode

forceSynchronousNetworkTime

forceSynchronousNetworkTime
public int forceSynchronousNetworkTime

Whether to synchronize the network time when pushing streams. 1 is synchronized with 0 is not synchronized. And must be used with setStreamAlignmentProperty. It is used to align multiple streams at the mixed stream service or streaming end, such as the chorus scene of KTV.

streamCensorshipMode

streamCensorshipMode
public ZegoStreamCensorshipMode streamCensorshipMode

When pushing a flow, review the pattern of the flow. By default, no audit is performed. If you want to use this function, contact ZEGO technical support.

streamCensorFlag

streamCensorFlag
public int streamCensorFlag

Inspect flag. If you want to use this function, contact ZEGO technical support.

codecNegotiationType

codecNegotiationType
public ZegoCapabilityNegotiationType codecNegotiationType

Codec capability negotiation type. By default, no reference to the outcome of the capability negotiation. If you want to use this function, contact ZEGO technical support.

streamTitle

streamTitle
public std::string streamTitle

Stream title, a utf8 string with a maximum length of 255 bytes or less.

Methods

ZegoPublisherConfig

ZegoPublisherConfig
public ZegoPublisherConfig: roomID(""), forceSynchronousNetworkTime(0), streamCensorshipMode(ZEGO_STREAM_CENSORSHIP_MODE_NONE), streamCensorFlag(0), codecNegotiationType(ZEGO_CAPABILITY_NEGOTIATION_TYPE_NONE)
Declared in ZegoExpressDefines.h

ZegoPublisherTakeSnapshotConfig

The config of publish stream snapshot.

Declared in ZegoExpressDefines.h

Properties

position

position
  • Default value: .

Methods

ZegoPublisherTakeSnapshotConfig

ZegoPublisherTakeSnapshotConfig
Declared in ZegoExpressDefines.h

ZegoReceiveRangeParam

Receive range configuration.

Declared in ZegoExpressDefines.h

Properties

min

min
public float min

The minimum distance at which the 3D sound effect starts to have attenuation effect, the value needs to be >= 0 and <= max, the default value is 0.

max

max
public float max

The maximum range received, the value needs to be >= min, the default value is 0.

Methods

ZegoReceiveRangeParam

ZegoReceiveRangeParam
Declared in ZegoExpressDefines.h

ZegoRect

View related coordinates.

Declared in ZegoExpressDefines.h

Properties

x

x
public int x

The horizontal offset from the top-left corner

y

y
public int y

The vertical offset from the top-left corner

width

width
public int width

The width of the rectangle

height

height
public int height

The height of the rectangle

Methods

ZegoRect

ZegoRect
public ZegoRect : x(0), y(0), width(0), height(0)
Declared in ZegoExpressDefines.h

ZegoRect

ZegoRect
public ZegoRect(int x, int y, int w, int h) : x(x), y(y), width(w), height(h)
Declared in ZegoExpressDefines.h

ZegoReverbAdvancedParam

Audio reverberation advanced parameters.

Details

Developers can use the SDK's built-in presets to change the parameters of the reverb.

Declared in ZegoExpressDefines.h

Properties

roomSize

roomSize
public float roomSize

Room size(%), in the range [0.0, 1.0], to control the size of the "room" in which the reverb is generated, the larger the room, the stronger the reverb.

reverberance

reverberance
public float reverberance

Echo(%), in the range [0.0, 100.0], to control the trailing length of the reverb.

damping

damping
public float damping

Reverb Damping(%), range [0.0, 100.0], controls the attenuation of the reverb, the higher the damping, the higher the attenuation.

wetOnly

wetOnly
public bool wetOnly

only wet

wetGain

wetGain
public float wetGain

wet gain(dB), range [-20.0, 10.0]

dryGain

dryGain
public float dryGain

dry gain(dB), range [-20.0, 10.0]

toneLow

toneLow
public float toneLow

Tone Low. 100% by default

toneHigh

toneHigh
public float toneHigh

Tone High. 100% by default

preDelay

preDelay
public float preDelay

PreDelay(ms), range [0.0, 200.0]

stereoWidth

stereoWidth
public float stereoWidth

Stereo Width(%). 0% by default

Methods

ZegoReverbAdvancedParam

ZegoReverbAdvancedParam
public ZegoReverbAdvancedParam : roomSize(.0f), reverberance(.0f), damping(.0f), wetOnly(false), wetGain(.0f), dryGain(.0f), toneLow(100.0f), toneHigh(100.0f), preDelay(.0f), stereoWidth(.0f)
Declared in ZegoExpressDefines.h

ZegoReverbEchoParam

Audio reverberation echo parameters.

Declared in ZegoExpressDefines.h

Properties

inGain

inGain
public float inGain

Gain of input audio signal, in the range [0.0, 1.0]

outGain

outGain
public float outGain

Gain of output audio signal, in the range [0.0, 1.0]

numDelays

numDelays
public int numDelays

Number of echos, in the range [0, 7]

delay

delay
public int[7] delay

Respective delay of echo signal, in milliseconds, in the range [0, 5000] ms

decay

decay
public float[7] decay

Respective decay coefficient of echo signal, in the range [0.0, 1.0]

ZegoReverbParam

Audio reverberation parameters.

Details

Developers can use the SDK's built-in presets to change the parameters of the reverb.

Declared in ZegoExpressDefines.h

Properties

roomSize

roomSize
public float roomSize

Room size, in the range [0.0, 1.0], to control the size of the "room" in which the reverb is generated, the larger the room, the stronger the reverb.

reverberance

reverberance
public float reverberance

Echo, in the range [0.0, 0.5], to control the trailing length of the reverb.

damping

damping
public float damping

Reverb Damping, range [0.0, 2.0], controls the attenuation of the reverb, the higher the damping, the higher the attenuation.

dryWetRatio

dryWetRatio
public float dryWetRatio

Dry/wet ratio, the range is greater than or equal to 0.0, to control the ratio between reverberation, direct sound and early reflections; dry part is set to 1 by default; the smaller the dry/wet ratio, the larger the wet ratio, the stronger the reverberation effect.

ZegoRoiRect

Coordinates used by the ROI function.

Declared in ZegoExpressDefines.h

Properties

x

x
public int x

The horizontal offset from the top-left corner

y

y
public int y

The vertical offset from the top-left corner

width

width
public int width

The width of the rectangle

height

height
public int height

The height of the rectangle

strength

strength
public int strength

ROI strength, currently supported value range is [0, 4], 0 is no effect, 4 is the strongest.

ZegoRoomConfig

Advanced room configuration.

Details

Configure maximum number of users in the room and authentication token, etc.

Declared in ZegoExpressDefines.h

Properties

maxMemberCount

maxMemberCount
public unsigned int maxMemberCount

The maximum number of users in the room, Passing 0 means unlimited, the default is unlimited.

isUserStatusNotify

isUserStatusNotify
public bool isUserStatusNotify

Whether to enable the user in and out of the room callback notification [onRoomUserUpdate], the default is off. If developers need to use ZEGO Room user notifications, make sure that each user who login sets this flag to true

token

token
public std::string token

The token issued by the developer's business server is used to ensure security. For the generation rules, please refer to Using Token Authentication, the default is an empty string, that is, no authentication. In versions 2.17.0 and above, if appSign is not passed in when calling the [createEngine] API to create an engine, or if appSign is empty, this parameter must be set for authentication when logging in to a room.

capabilityNegotiationTypes

capabilityNegotiationTypes
public unsigned int capabilityNegotiationTypes

The bitmask marker for capability negotiation, refer to enum [ZegoRoomCapabilityNegotiationTypesBitMask], when this param converted to binary, 0b01 that means 1 << 0 for enable the capability negotiation of all user in the room, 0x10 that means 1 << 1 for enable the capability negotiation of publisher in the room. The masks can be combined to allow different types of capability negotiation.

roomType

roomType
public unsigned int roomType

The type of the room, generally, it can be ignored and set to 0.

Methods

ZegoRoomConfig

ZegoRoomConfig
public ZegoRoomConfig:maxMemberCount(0), isUserStatusNotify(false), token(""), capabilityNegotiationTypes(0), roomType(0)
Declared in ZegoExpressDefines.h

ZegoRoomExtraInfo

Room extra information.

Declared in ZegoExpressDefines.h

Properties

key

key
public std::string key

The key of the room extra information.

value

value
public std::string value

The value of the room extra information.

updateUser

updateUser
public ZegoUser updateUser

The user who update the room extra information.Please do not fill in sensitive user information in this field, including but not limited to mobile phone number, ID number, passport number, real name, etc.

updateTime

updateTime
public unsigned long long updateTime

Update time of the room extra information, UNIX timestamp, in milliseconds.

ZegoRoomRecvTransparentMessage

Received a transparent message from the room.

Details

Room transparent message, including message content, sending user, sending type, sending mode

Declared in ZegoExpressDefines.h

Properties

sendUser

sendUser
public ZegoUser sendUser

send message user

content

content
public std::string content

Message send content.

ZegoRoomSendTransparentMessage

Transparent message info.

Details

Room transparent message, including room id, message content, sending user, sending type, sending mode, timeout period

Declared in ZegoExpressDefines.h

Properties

sendMode

sendMode

send mode

sendType

sendType

send type

content

content
public std::string content

Message send content.

recvUserList

recvUserList
public std::vector<ZegoUser> recvUserList

Message receiver list, when sendType appointed ZegoRoomTransparentMessageModeOnlyServer don't fill in. When appointed ZegoRoomTransparentMessageModeClientAndServer or ZegoRoomTransparentMessageModeOnlyClient, empty room will be sent to all online users.

timeOut

timeOut
public int timeOut

send message timeout, The default value is 10s.

Methods

ZegoRoomSendTransparentMessage

ZegoRoomSendTransparentMessage
public ZegoRoomSendTransparentMessage:sendMode(ZEGO_ROOM_TRANSPARENT_MESSAGE_MODE_ONLY_CLIENT), sendType(ZEGO_ROOM_TRANSPARENT_MESSAGE_NORMAL), timeOut(10)
Declared in ZegoExpressDefines.h

ZegoRoomStreamList

Room stream list.

Details

Room stream list.

Declared in ZegoExpressDefines.h

Properties

publishStreamList

publishStreamList
public std::vector<ZegoStream> publishStreamList

Publish stream list

playStreamList

playStreamList
public std::vector<ZegoStream> playStreamList

Play stream list

ZegoRtcStatsInfo

RTC Network Statistics

Declared in ZegoExpressDefines.h

Properties

totalTxBandwidth

totalTxBandwidth
public double totalTxBandwidth

total upstream bandwidth, in kbps

avgTxRtt

avgTxRtt
public unsigned int avgTxRtt

upstream average rtt, in milliseconds

avgTxPacketLostRate

avgTxPacketLostRate
public double avgTxPacketLostRate

upstream average packet lost rate. in percentage, 0.0 ~ 1.0

totalRxBandwidth

totalRxBandwidth
public double totalRxBandwidth

total downlink bandwidth, in kbps

avgRxRtt

avgRxRtt
public unsigned int avgRxRtt

downlink average rtt, in milliseconds

avgRxPacketLostRate

avgRxPacketLostRate
public double avgRxPacketLostRate

downlink average packet lost rate. in percentage, 0.0 ~ 1.0

avgPeerToPeerDelay

avgPeerToPeerDelay
public unsigned int avgPeerToPeerDelay

average peer to peer delay, in milliseconds

ZegoSEIConfig

SEI configuration

Details

Used to set the relevant configuration of the Supplemental Enhancement Information.

Declared in ZegoExpressDefines.h

Properties

type

type
public ZegoSEIType type

SEI type

Methods

ZegoSEIConfig

ZegoSEIConfig
public ZegoSEIConfig(ZegoSEIType type = ZEGO_SEI_TYPE_ZEGO_DEFINED) : type(type)
Declared in ZegoExpressDefines.h

ZegoSceneConfig

Scene config.

Declared in ZegoExpressDefines.h

Properties

channelCount

channelCount
public unsigned int channelCount

State channel count.

Methods

ZegoSceneConfig

ZegoSceneConfig
Declared in ZegoExpressDefines.h

ZegoSceneParam

Scene param.

Declared in ZegoExpressDefines.h

Properties

user

user
public ZegoUser user

User object instance, configure userID, userName. that the userID needs to be globally unique with the same appID, otherwise the user who logs in later will kick out the user who logged in first.

sceneID

sceneID
public long long sceneID

Scene ID.

templateID

templateID
public unsigned int templateID

Scene template ID.

position

position
public ZegoPosition position

User position.

broadcastMode

broadcastMode
public ZegoBroadcastMode broadcastMode

Broadcast user's own information mode, the default is ALL.

token

token
public std::string token

Authentication token.

Methods

ZegoSceneParam

ZegoSceneParam
Declared in ZegoExpressDefines.h

ZegoScenePlayerConfig

Advanced scene player configuration.

Declared in ZegoExpressDefines.h

Properties

rangeSceneHandle

rangeSceneHandle
public int rangeSceneHandle

Range scene handle. Obtained through [getHandle] of ZegoRangeScene instance.

resourceMode

resourceMode
public ZegoStreamResourceMode resourceMode

Stream resource mode.

cdnConfig

cdnConfig
public ZegoCDNConfig * cdnConfig

The CDN configuration for playing stream. If set, the stream is play according to the URL instead of the streamID. After that, the streamID is only used as the ID of SDK internal callback.

Methods

ZegoScenePlayerConfig

ZegoScenePlayerConfig
public ZegoScenePlayerConfig: rangeSceneHandle(-1), resourceMode(ZEGO_STREAM_RESOURCE_MODE_DEFAULT), cdnConfig(nullptr)
Declared in ZegoExpressDefines.h

ZegoScenePublisherConfig

Advanced scene publisher configuration.

Declared in ZegoExpressDefines.h

Properties

rangeSceneHandle

rangeSceneHandle
public int rangeSceneHandle

Range scene handle. Obtained through [getHandle] of ZegoRangeScene instance.

Methods

ZegoScenePublisherConfig

ZegoScenePublisherConfig
public ZegoScenePublisherConfig: rangeSceneHandle(-1)
Declared in ZegoExpressDefines.h

ZegoSceneStreamConfig

Scene stream config.

Declared in ZegoExpressDefines.h

Properties

enablePlayInRange

enablePlayInRange
public bool enablePlayInRange

Enable play stream in range or not.

enablePublishToWorld

enablePublishToWorld
public bool enablePublishToWorld

Enable publish stream to world or not.

Methods

ZegoSceneStreamConfig

ZegoSceneStreamConfig
Declared in ZegoExpressDefines.h

ZegoScreenCaptureAudioConfig

Screen capture audio config

Declared in ZegoExpressDefines.h

Properties

enableWindowCapture

enableWindowCapture
public bool enableWindowCapture

Whether to collect window sound. true for collection, false for no collection, default false. (only for Windows 10 2004 and above versions)

ZegoScreenCaptureConfig

Screen capture configuration parameters.

Declared in ZegoExpressDefines.h

Properties

captureVideo

captureVideo
public bool captureVideo

Whether to capture video when screen capture. The default is true.

captureAudio

captureAudio
public bool captureAudio

Whether to capture audio when screen capture. The default is true.

microphoneVolume

microphoneVolume
public unsigned int microphoneVolume

Set Microphone audio volume for ReplayKit. The range is 0 ~ 200. The default is 100. (only for iOS)

applicationVolume

applicationVolume
public unsigned int applicationVolume

Set Application audio volume for ReplayKit. The range is 0 ~ 200. The default is 100. (only for iOS and Android)

audioParam

audioParam
public ZegoAudioFrameParam audioParam

Set the audio capture parameters during screen capture. (only for Android)

cropRect

cropRect
public ZegoRect cropRect

Set the crop rectangle during screen capture. The crop rectangle must be included in the rectangle of the original data, unit is pixel. (only for iOS/Android)

orientation

orientation
public ZegoScreenCaptureOrientation orientation

Set the capture orientation of the screen capture. The capture orientation will be fixed, ignoring the system returned orientation. (only for iOS/Android)

muteExtensMicrophone

muteExtensMicrophone
public bool muteExtensMicrophone

Set whether to mute the microphone of the extension process. The default is false. (only for iOS)

Methods

ZegoScreenCaptureConfig

ZegoScreenCaptureConfig
Declared in ZegoExpressDefines.h

ZegoScreenCaptureSourceInfo

The screen captures source information.

Declared in ZegoExpressDefines.h

Properties

sourceType

sourceType
public ZegoScreenCaptureSourceType sourceType

Target type for screen capture. (only for desktop)

sourceID

sourceID
public void * sourceID

The ID of the capture source.

sourceName

sourceName
public std::string sourceName

Capture source name (in UTF8 encoding).

thumbnailImage

thumbnailImage
public ZegoImageBuffer thumbnailImage

Thumbnail of the capture window.

iconImage

iconImage
public ZegoImageBuffer iconImage

The image content of the icon.

ZegoSoundLevelConfig

Configuration for start sound level monitor.

Declared in ZegoExpressDefines.h

Properties

millisecond

millisecond
public unsigned int millisecond

Monitoring time period of the sound level, in milliseconds, has a value range of [100, 3000]. Default is 100 ms.

enableVAD

enableVAD
public bool enableVAD

Set whether the sound level callback includes the VAD detection result.

ZegoSoundLevelInfo

Sound level info object.

Declared in ZegoExpressDefines.h

Properties

soundLevel

soundLevel
public float soundLevel

Sound level value.

vad

vad
public int vad

Whether the stream corresponding to StreamID contains voice, 0 means noise, 1 means normal voice. This value is valid only when the [enableVAD] parameter in the [ZegoSoundLevelConfig] configuration is set to true when calling [startSoundLevelMonitor].

ZegoStream

Stream object.

Details

Identify an stream object

Declared in ZegoExpressDefines.h

Properties

user

user
public ZegoUser user

User object instance.Please do not fill in sensitive user information in this field, including but not limited to mobile phone number, ID number, passport number, real name, etc.

streamID

streamID
public std::string streamID
  • Caution: You cannot include URL keywords, otherwise publishing stream and playing stream will fails. Only support numbers, English characters and '-', '_'.

extraInfo

extraInfo
public std::string extraInfo

Stream extra info

ZegoStreamRelayCDNInfo

Relay to CDN info.

Details

Including the URL of the relaying CDN, relaying state, etc.

Declared in ZegoExpressDefines.h

Properties

url

url
public std::string url

URL of publishing stream to CDN

state

state

State of relaying to CDN

updateReason

updateReason
public ZegoStreamRelayCDNUpdateReason updateReason

Reason for relay state changed

stateTime

stateTime
public unsigned long long stateTime

The timestamp when the state changed, UNIX timestamp, in milliseconds.

ZegoSwitchPlayingStreamConfig

Extended parameters for the [switchPlayingStream] interface.

Details

Extended parameters for the [switchPlayingStream] interface.

Declared in ZegoExpressDefines.h

Properties

switchType

switchType
public ZegoSwitchPlayingStreamType switchType

Switch playing stream type.

switchTimeout

switchTimeout
public int switchTimeout

Switch the stream timeout, the unit is seconds.

Methods

ZegoSwitchPlayingStreamConfig

ZegoSwitchPlayingStreamConfig
public ZegoSwitchPlayingStreamConfig: switchType(ZEGO_SWITCH_PLAYING_STREAM_TYPE_DEFAULT), switchTimeout(30)
Declared in ZegoExpressDefines.h

ZegoTeamParam

Team param.

Declared in ZegoExpressDefines.h

Properties

teamID

teamID
public unsigned int teamID

Team ID.

Methods

ZegoTeamParam

ZegoTeamParam
Declared in ZegoExpressDefines.h

ZegoTestNetworkConnectivityResult

test connectivity result

Declared in ZegoExpressDefines.h

Properties

connectCost

connectCost
public unsigned int connectCost

connect cost

ZegoTrafficControlInfo

Externally encoded data traffic control information.

Declared in ZegoExpressDefines.h

Properties

width

width
public int width

Video resolution width to be adjusted

height

height
public int height

Video resolution height to be adjusted

fps

fps
public int fps

Video FPS to be adjusted

bitrate

bitrate
public int bitrate

Video bitrate in kbps to be adjusted

ZegoUser

User object.

Details

Configure user ID and username to identify users in the room. that the userID must be unique under the same appID, otherwise, there will be mutual kicks when logging in to the room. It is strongly recommended that userID corresponds to the user ID of the business APP, that is, a userID and a real user are fixed and unique, and should not be passed to the SDK in a random userID. Because the unique and fixed userID allows ZEGO technicians to quickly locate online problems.

Declared in ZegoExpressDefines.h

Properties

userID

userID
public std::string userID
  • Privacy reminder: Please do not fill in sensitive user information in this field, including but not limited to mobile phone number, ID number, passport number, real name, etc.
  • Caution: Only support numbers, English characters and '~', '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '_', '+', '=', '-', '`', ';', '’', ',', '.', '<', '>', ''. Do not use '%' if you need to communicate with the Web SDK.

userName

userName
public std::string userName

User Name, a utf8 string with a maximum length of 256 bytes or less.Please do not fill in sensitive user information in this field, including but not limited to mobile phone number, ID number, passport number, real name, etc.

Methods

ZegoUser

ZegoUser
public ZegoUser
Declared in ZegoExpressDefines.h

ZegoUser

ZegoUser
public ZegoUser(std::string userID, std::string userName):userID(userID),userName(userName)
Declared in ZegoExpressDefines.h

ZegoVideoConfig

Video config.

Details

Configure parameters used for publishing stream, such as bitrate, frame rate, and resolution. Developers should note that the width and height resolution of the mobile and desktop are opposite. For example, 360p, the resolution of the mobile is 360x640, and the desktop is 640x360. When using external capture, the capture and encoding resolution of RTC cannot be set to 0*0, otherwise, there will be no video data in the publishing stream in the entire engine life cycle.

Declared in ZegoExpressDefines.h

Properties

captureWidth

captureWidth
public int captureWidth

Capture resolution width, control the width of camera image acquisition. SDK requires this member to be set to an even number. Only the camera is not started and the custom video capture is not used, the setting is effective. For performance reasons, the SDK scales the video frame to the encoding resolution after capturing from camera and before rendering to the preview view. Therefore, the resolution of the preview image is the encoding resolution. If you need the resolution of the preview image to be this value, Please call [setCapturePipelineScaleMode] first to change the capture pipeline scale mode to [Post]

captureHeight

captureHeight
public int captureHeight

Capture resolution height, control the height of camera image acquisition. SDK requires this member to be set to an even number. Only the camera is not started and the custom video capture is not used, the setting is effective. For performance reasons, the SDK scales the video frame to the encoding resolution after capturing from camera and before rendering to the preview view. Therefore, the resolution of the preview image is the encoding resolution. If you need the resolution of the preview image to be this value, Please call [setCapturePipelineScaleMode] first to change the capture pipeline scale mode to [Post]

encodeWidth

encodeWidth
public int encodeWidth

Encode resolution width, control the image width of the encoder when publishing stream. SDK requires this member to be set to an even number. The settings before and after publishing stream can be effective

encodeHeight

encodeHeight
public int encodeHeight

Encode resolution height, control the image height of the encoder when publishing stream. SDK requires this member to be set to an even number. The settings before and after publishing stream can be effective

fps

fps
public int fps

Frame rate, control the frame rate of the camera and the frame rate of the encoder. Publishing stream set to 60 fps, playing stream to take effect need contact technical support

bitrate

bitrate
public int bitrate

Bit rate in kbps. The settings before and after publishing stream can be effective. The SDK will automatically set the bit rate suitable for the scenario selected by the developer. If the bit rate manually set by the developer exceeds the reasonable range, the SDK will automatically process the bit rate according to the reasonable range. If you need to configure a high bit rate due to business needs, please contact ZEGO Business.

codecID

codecID
public ZegoVideoCodecID codecID

The codec id to be used, the default value is [default]. Settings only take effect before publishing stream

keyFrameInterval

keyFrameInterval
public int keyFrameInterval
  • Required: No.
  • Default value: 2 seconds.
  • Value range: [2, 5].
  • Caution: The setting is only valid before pushing.

Methods

ZegoVideoConfig

ZegoVideoConfig
public ZegoVideoConfig(ZegoVideoConfigPreset preset = ZEGO_VIDEO_CONFIG_PRESET_360P)
Declared in ZegoExpressDefines.h

ZegoVideoEncodedFrameParam

Object for video encoded frame fieldeter.

Details

Including video encoded frame format, width and height, etc.

Declared in ZegoExpressDefines.h

Properties

format

format

Video encoded frame format

isKeyFrame

isKeyFrame
public bool isKeyFrame

Whether it is a keyframe

rotation

rotation
public int rotation

Video frame counterclockwise rotation angle

width

width
public int width

Video frame width

height

height
public int height

Video frame height

SEIData

SEIData
public const unsigned char* SEIData

SEI data (Optional, if you don't need to send SEI, set it to nullptr. Deprecated, use [sendSEI] instead). Useful when set format as [AVCC] or [AnnexB]

SEIDataLength

SEIDataLength
public unsigned int SEIDataLength

Length of the SEI data (Optional, if you don't need to send SEI, set it to 0. Deprecated, use [sendSEI] instead). Useful when set format as [AVCC] or [AnnexB]

isExternalClock

isExternalClock
public bool isExternalClock

Whether to use the external timestamp completely. The default is false. When set to false, the SDK will adjust based on the timestamps of the audio frame and video frame to ensure audio-video synchronization. When set to true, the SDK does not adjust the timestamp and uses the external timestamp completely.

Methods

ZegoVideoEncodedFrameParam

ZegoVideoEncodedFrameParam
public ZegoVideoEncodedFrameParam:format(ZEGO_VIDEO_ENCODED_FRAME_FORMAT_AVCC), isKeyFrame(false), rotation(0), width(0), height(0), SEIData(nullptr), SEIDataLength(0), isExternalClock(false)
Declared in ZegoExpressDefines.h

ZegoVideoFrameParam

Object for video frame fieldeter.

Details

Including video frame format, width and height, etc.

Declared in ZegoExpressDefines.h

Properties

format

format
public ZegoVideoFrameFormat format

Video frame format

strides

strides
public int[4] strides

Number of bytes per line (for example: BGRA only needs to consider strides [0], I420 needs to consider strides [0,1,2])

width

width
public int width

Video frame width. When use custom video capture, the video data meeting the 32-bit alignment can obtain the maximum performance. Taking BGRA as an example, width * 4 is expected to be multiple of 32.

height

height
public int height

Video frame height

rotation

rotation
public int rotation

The rotation direction of the video frame, the SDK rotates clockwise

ZegoVocalRangeParam

Vocal range configuration.

Declared in ZegoExpressDefines.h

Properties

min

min
public float min

The minimum distance at which the 3D sound effect starts to have attenuation effect, the value needs to be >= 0 and <= max, the default value is 0.

max

max
public float max

The maximum range of the sound, the value needs to be >= min, the default value is 0.

Methods

ZegoVocalRangeParam

ZegoVocalRangeParam
Declared in ZegoExpressDefines.h

ZegoVoiceChangerParam

Voice changer parameter.

Details

Developer can use the built-in presets of the SDK to change the parameters of the voice changer.

Declared in ZegoExpressDefines.h

Properties

pitch

pitch
public float pitch

Pitch parameter, value range [-12.0, 12.0], the larger the value, the sharper the sound, set it to 0.0 to turn off. that on v2.18.0 and older version, the value range is [-8.0, 8.0].

ZegoWatermark

Watermark object.

Details

Configure a watermark image URL and the layout of the watermark in the screen.

Declared in ZegoExpressDefines.h

Properties

imageURL

imageURL
public std::string imageURL

The path of the watermark image. Support local file absolute path (file://xxx). The format supports png, jpg. The maximum length is less than 512 bytes.

layout

layout
public ZegoRect layout

Watermark image layout

Methods

ZegoWatermark

ZegoWatermark
Declared in ZegoExpressDefines.h

ZegoWatermark

ZegoWatermark
public ZegoWatermark(std::string imageURL, ZegoRect layout) :imageURL(imageURL), layout(layout)
Declared in ZegoExpressDefines.h

Previous

Interface

Next

Enum

On this page

Back to top