Struct
ZegoAudioConfig
推流音频配置
详情
配置推流的音频码率、声道数、音频编码
属性
bitrate
channel
codecID
ZegoAudioFrameParam
音频帧的参数对象
详情
包括音频帧的采样率、声道数
属性
sampleRate
channel
ZegoCDNConfig
CDN 配置对象
详情
包括 CDN 的 URL 以及鉴权参数字符串
属性
url
authParam
protocol
protocol: string URL 支持的协议,可选值为 "tcp" 和 "quic",若要使用多个,用英文的逗号分割,按顺序尝试。若需要使用请联系 ZEGO 技术支持,否则可以忽略此参数(可以留空或设置为空字符串)。
quicVersion
quicVersion: string QUIC 版本。如果 [protocol] 有 QUIC 协议,需要填写该信息。如果有多个版本号,用英文的逗号分割。若需要使用请联系 ZEGO 技术支持,否则可以忽略此参数(可以留空或设置为空字符串)。
httpdns
quicConnectMode
quicConnectMode: number QUIC 建立链接模式,若为1 则会优先使用quic 0 rtt 去建立链接,否则正常建立链接。如果 [protocol] 有 QUIC 协议,此值生效。
customParams
ZegoCanvas
视图对象
详情
配置 View 对象、视图模式、视图背景颜色
属性
view
viewMode
ZegoDeviceInfo
设备信息
详情
包括设备的 ID 与名称
属性
deviceID
deviceName
ZegoEffectsBeautyParam
美颜配置参数
详情
配置美颜的美白、红润、磨皮、锐化参数。
属性
whitenIntensity
rosyIntensity
smoothIntensity
sharpenIntensity
ZegoEngineConfig
引擎进阶配置
属性
advancedConfig
ZegoEngineProfile
创建引擎的配置
详情
创建引擎的配置
属性
appID
appID: number ZEGO 为开发者签发的应用 ID,请从 ZEGO 管理控制台 https://console-express.zego.im 申请。appID 取值范围 0~4294967295。
appSign
appSign: string - 取值范围:'0' ~ '9', 'a' ~ 'z'。例:"9dc9a25bh2f2137446897071c8c033fa33b91c3dd2a85e0c000ae82c0dad3"。2.17.0 及以上版本 appSign 允许传空或者不传。如果传空或者不传,则必须在调用 [loginRoom] 接口登录房间时将 token 填入 [ZegoRoomConfig] 参数中,用于鉴权。token 的生成方式请参考 使用 Token 鉴权 。
scenario
scenario: ZegoScenario 房间场景,SDK 会针对指定的场景的做一些音视频配置优化以达成在此场景下最优的效果。指定场景后,开发者可以使用 [setRoomScenario] 来实现在不销毁引擎 [destroyEngine] 的前提下切换其他场景。指定场景后,开发者可以调用其他 API 来继续调整音视频配置。各个场景之间的差异以及如何选择合适的场景请参考 https://doc-zh.zego.im/article/16316
ZegoLogConfig
日志配置
详情
调用 [setLogConfig] 自定义日志配置时,需要通过该参数配置。
- 业务场景:当需要自定义日志存储路径或日志文件大小上限时,需要这个配置。
- 注意事项:无。
属性
logPath
logPath: string 用于自定义日志文件的存储路径。
- 业务场景:当需要自定义日志存储路径时,需要这个配置。
- 是否必填:否。
- 默认值:各平台的默认路径有所不同,具体参考官网文档 https://doc-zh.zego.im/faq/express_sdkLog
- 注意事项:开发者需要确保对该路径下文件的读写权限。
logSize
logSize: number 用于自定义日志文件大小上限。
- 业务场景:当需要自定义日志文件大小上限时,需要这个配置。
- 是否必填:否。
- 默认值:5MB (5 * 1024 * 1024 Bytes)。
- 取值范围:最小1MB (1 * 1024 * 1024 Bytes),最大100M (100 * 1024 * 1024 Bytes),0表示不需要写日志。
- 注意事项:日志文件大小上限越大,承载的日志信息越多,但是日志上传时间也会更长。
logCount
ZegoMediaPlayerResource
用于指定播放器的多媒体资源。
详情
用于在加载多媒体资源时,配置加载参数。
属性
loadType
startPosition
filePath
resourceID
onlineResourceCachePath
maxCachePendingLength
maxCachePendingLength: number 在线资源最大的缓存待使用长度,单位 byte,最小设置 10M(10 * 1024 * 1024),默认0-不做限制,尝试缓存整个文件。
ZegoNetworkSpeedTestConfig
网络测速配置
属性
testUplink
expectedUplinkBitrate
testDownlink
expectedDownlinkBitrate
expectedDownlinkBitrate: number 单位 kbps。用于确定网络下行环境是否适合拉取指定码率的数据,建议用推流的码率来测试。
ZegoNetworkSpeedTestQuality
网络测速质量
属性
connectCost
rtt
packetLostRate
quality
ZegoPerformanceStatus
系统性能监控状态
属性
cpuUsageApp
cpuUsageSystem
memoryUsageApp
memoryUsageSystem
memoryUsedApp
ZegoPlayStreamQuality
拉流质量对象
详情
音视频参数与网络质量等
属性
videoRecvFPS
videoDejitterFPS
videoDecodeFPS
videoRenderFPS
videoKBPS
videoBreakRate
audioRecvFPS
audioDejitterFPS
audioDecodeFPS
audioRenderFPS
audioKBPS
audioBreakRate
mos
mos: number 音频 MOS (平均主观意见分) 评估方法对拉流音频的质量评分,取值范围 [-1, 5],其中 -1 表示未知,[0, 5] 表示有效的评分,分数越高,音频质量越好。评分对应的主观感受请查阅 https://doc-zh.zego.im/article/1074#4_4 (2.16.0 及以上版本支持)
rtt
packetLostRate
peerToPeerDelay
peerToPeerPacketLostRate
level
delay
avTimestampDiff
isHardwareDecode
videoCodecID
totalRecvBytes
audioRecvBytes
videoRecvBytes
audioCumulativeBreakCount
audioCumulativeBreakTime
audioCumulativeBreakRate
audioCumulativeBreakRate: number 累计音频卡顿率,单位为百分比,0.0 ~ 100.0 (2.9.0 及以上版本支持)
audioCumulativeDecodeTime
videoCumulativeBreakCount
videoCumulativeBreakTime
videoCumulativeBreakRate
videoCumulativeDecodeTime
muteVideo
muteAudio
ZegoPlayerConfig
拉流进阶配置。
详情
配置资源策略模式、CDN 配置以及其他高级配置。
属性
resourceMode
cdnConfig
cdnConfig: ZegoCDNConfig 拉流的 CDN 配置,若设置后,则按照 URL 拉流而不是按照 streamID 拉流,此后 streamID 仅作为 SDK 内部回调的标识。
roomID
videoCodecID
sourceResourceType
codecTemplateID
resourceSwitchMode
resourceSwitchMode: ZegoStreamResourceSwitchMode 拉流资源切换策略模式,默认为 ZegoStreamResourceSwitchModeDefault
resourceWhenStopPublish
resourceWhenStopPublish: ZegoStreamResourceType 下麦时切换的拉流资源类型,默认为 ZegoStreamResourceTypeDefault。只有用户设置 [resourceMode] 为 ZegoStreamResourceModeDefaut 时,且 [resourceSwitchMode] 为 ZegoStreamResourceSwitchModeDefault 或者 ZegoStreamResourceSwitchModeSwitchToRTC,该设置生效。
ZegoPublishStreamQuality
推流质量对象
详情
音视频参数与网络质量等
属性
videoCaptureFPS
videoEncodeFPS
videoSendFPS
videoKBPS
audioCaptureFPS
audioSendFPS
audioKBPS
rtt
packetLostRate
level
isHardwareEncode
videoCodecID
totalSendBytes
audioSendBytes
videoSendBytes
ZegoPublisherConfig
推流进阶配置
详情
配置房间 ID
属性
roomID
forceSynchronousNetworkTime
forceSynchronousNetworkTime: number 推流时是否同步网络时间,1-同步 0-不同步。且必须与 setStreamAlignmentProperty配合使用。用于在混流服务或拉流端对多条流进行对齐,比如 KTV 的合唱场景。
streamCensorshipMode
streamCensorshipMode: ZegoStreamCensorshipMode 推流时,审查流的模式。默认不审查。如需要使用此功能,需要联系ZEGO技术支持。
streamCensorFlag
ZegoRect
视图相关所使用的坐标
属性
x
y
width
height
ZegoReverbAdvancedParam
音频混响高级参数
详情
开发者可以使用 SDK 的内置预置来改变混响的参数。
属性
roomSize
reverberance
damping
wetOnly
wetGain
dryGain
toneLow
toneHigh
preDelay
stereoWidth
ZegoReverbEchoParam
音频混响回声参数
属性
inGain
outGain
numDelays
delay
decay
ZegoRoiRect
ROI 功能所使用的矩形坐标。
属性
x
y
width
height
strength
ZegoRoomConfig
房间进阶配置
详情
配置房间的最大用户数量、鉴权 token 等
属性
maxMemberCount
isUserStatusNotify
isUserStatusNotify: boolean 是否开启用户进出房间回调通知 [onRoomUserUpdate],默认关闭。若开发者需要使用 ZEGO 房间用户广播通知,请确保每个登录的用户都将此标记设置为true
token
token: string 由开发者业务服务器下发的 token,用以保证安全性,生成规则请参考 使用 Token 鉴权,默认为空字符串,即不鉴权。2.17.0 及以上版本如果调用 [createEngine] 接口创建引擎时未传入appSign,或者appSign为空,则登录房间时必须设置此参数用于鉴权。
ZegoRoomExtraInfo
房间附加消息
属性
key
value
updateUser
updateTime
ZegoScreenCaptureConfig
屏幕采集配置参数。
属性
captureVideo
captureAudio
microphoneVolume
applicationVolume
applicationVolume: number 设置屏幕录制时 Application 音频音量。范围为 0 ~ 200,默认为 100。(适用于 iOS 和 Android 平台)
audioParam
cropRect
orientation
orientation: ZegoScreenCaptureOrientation 设置屏幕录制时采集画面的朝向,将会对采集画面做固定朝向。(仅适用 iOS/Android 平台)
muteExtensMicrophone
audioDeviceMode
audioDeviceMode: ZegoScreenCaptureAudioDeviceMode - 注意事项:1. 只有当音频主源一直为麦克风时,音频设备模式才生效;
- 只作用于 [startScreenCapture] 接口,[updateScreenCapture] 不生效;
- 采集过程中音频设备模式发生变化导致屏幕采集音频输出异常,可以通过 [onMobileScreenCaptureExceptionOccurred] 回调监听 AudioDeviceException,如有必要,需要重启采集;
- 停止采集后会恢复采集之前的音频设备模式。
ZegoSoundLevelConfig
启动声浪监控的配置
详情
用于 startSoundLevelMonitor 函数,其中的 enableVAD 参数用于设置声浪回调是否检测 VAD,开启后结果将从 [onCapturedSoundLevelInfoUpdate] 和 [onRemoteSoundLevelInfoUpdate] 回调中体现。
- 业务场景:开发者需要判断用户说话音量是否太小时,可开启 VAD 声音检测。
- 支持版本:2.10.0 及以上。
- 注意事项:VAD 算法有性能开销,建议按需设置。
属性
millisecond
enableVAD
ZegoSoundLevelInfo
声浪信息对象
属性
soundLevel
vad
vad: number StreamID 对应的流是否包含声音,0: 表示噪声,1: 表示正常声音;调用 [startSoundLevelMonitor] 时设置的 ZegoSoundLevelConfig 配置中的 enableVAD 参数设为 true 后此值才有效。
ZegoStream
音视频流对象
详情
标识一条音视频流
属性
user
streamID
extraInfo
ZegoStreamRelayCDNInfo
转推 CDN 信息
详情
包括转推 CDN 的 URL、转推状态等
属性
url
state
updateReason
stateTime
ZegoUser
用户对象
详情
配置用户 ID 和用户名,用于标识房间内的用户。 注意 userID 在同一个 appID 下需唯一,否则登录房间时会出现互踢的情况。 强烈建议 userID 与业务 APP 的用户 ID 一一对应,即一个 userID 与一个真实用户是固定且唯一的,而不应该是以随机的 userID 的方式传给 SDK 的方式。因为唯一且固定的 userID 可以让 ZEGO 技术人员快速定位线上问题。
属性
userID
userID: string - 隐私保护声明:请勿在此字段填写用户敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
- 注意事项:仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '_', '+', '=', '-', '`', ';', '’', ',', '.', '<', '>', '\'。如果需要与 Web SDK 互通,请不要使用 '%'。
userName
ZegoVideoConfig
视频配置
详情
配置码率、帧率、分辨率等推流用到的参数。 开发者应该注意的是,移动端与桌面端的宽高分辨率是相反的,例如,360p,移动端的分辨率为 360x640,而桌面端为 640x360。 使用外部采集时,RTC的采集和编码分辨率不能设置为0*0,不然会导致整个引擎生命周期里的推流,都没有视频数据。
属性
captureWidth
captureWidth: number 采集分辨率宽度,控制摄像头图像采集的宽度。SDK 要求设置此成员为偶数。仅摄像头启动前且没有使用自定义视频采集时,设置有效。出于性能考虑,SDK 在采集摄像头画面后、渲染预览画面之前,就将视频帧缩放为编码分辨率,因此预览画面的分辨率是编码分辨率,如果您需要预览画面的分辨率为此值,请先调用 [setCapturePipelineScaleMode] 将采集缩放模式改为 [Post]
captureHeight
captureHeight: number 采集分辨率高度,控制摄像头图像采集的高度。SDK 要求设置此成员为偶数。仅摄像头启动前且没有使用自定义视频采集时,设置有效。出于性能考虑,SDK 在采集摄像头画面后、渲染预览画面之前,就将视频帧缩放为编码分辨率,因此预览画面的分辨率是编码分辨率,如果您需要预览画面的分辨率为此值,请先调用 [setCapturePipelineScaleMode] 将采集缩放模式改为 [Post]
encodeWidth
encodeHeight
fps
bitrate
bitrate: number 码率,单位为 kbps。推流前后设置均可生效。SDK 会根据开发者选择的场景,自动设置适配该场景的码率。若开发者手动设置的码率超出合理范围,SDK会自动按照合理区间处理码率。如因业务需要配置高码率,请联系 ZEGO 商务。
codecID
keyFrameInterval
ZegoVoiceChangerParam
变声器参数
详情
开发者可以使用 SDK 的内置预置来改变变声器的参数。

