Interface
ZegoAutoMixerTask
自动混流任务对象
详情
调用 [startAutoMixerTask] 函数向 ZEGO RTC 服务器发起自动混流任务时,需要通过该参数配置自动混流任务,包括任务 ID、房间 ID、音频配置、输出流列表、是否开启声浪回调通知。
- 业务场景:当向 ZEGO RTC 服务器发起自动混流任务时,需要这个配置。
属性
taskID
taskID: string 混流任务 id(客户自定义,务必保证唯一),必填,最大为256个字符,仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '
roomID
roomID: string 自动混流任务的房间 ID。
- 业务场景:当发起自动混流任务时,需要配置该参数。
- 是否必填:是。
- 取值范围:长度不超过 128 字节的字符串。
- 注意事项:仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '_', '+', '=', '-', '`', ';', '’', ',', '.', '<', '>', ''。如果需要与 Web SDK 互通,请不要使用 '%'。
audioConfig
audioConfig: ZegoMixerAudioConfig 自动混流任务的音频配置,可配置音频码率、音频声道,编码 ID、多路音频流混音模式。
- 业务场景:如果对自动混流任务的音频有特殊需求,比如需要调整音频码率,可根据需要调整该参数,否则不用配置。
- 是否必填:否。
- 默认值:默认音频码率为 "48 kbps", 默认音频声道为 "ZEGO_AUDIO_CHANNEL_MONO", 默认编码 ID 为 "ZEGO_AUDIO_CODEC_ID_DEFAULT",默认多路音频流混音模式为 "ZEGO_AUDIO_MIX_MODE_RAW"。
- 建议值:根据需求设置。
outputList
outputList: ZegoMixStreamOutput[] 自动混流任务的输出流列表,列表中为 URL 或者流 ID,若为 URL 格式 目前只支持 RTMP URL 格式:rtmp://xxxxxxxx。
- 业务场景:当发起自动混流任务时,需要配置该参数指明混流输出目标。Mix stream output target
- 是否必填:是。
enableSoundLevel
enableSoundLevel: boolean 开启混流音浪回调通知,用于获取混流中每个音频输入的音浪。开启后拉混流时可通过 on [AutoMixerSoundLevelUpdate] 回调收到每条单流的声浪信息。
streamAlignmentMode
minPlayStreamBufferLength
minPlayStreamBufferLength: number 设置混流服务器拉流缓存自适应调整的区间范围下限。在实时合唱 KTV 场景下,推流端网络轻微波动可能会导致混流的卡顿,此时观众拉混流的时候,会有比较高概率出现卡顿的问题。通过调节混流服务器拉流缓存自适应调整的区间范围下限,可优化观众端拉混流出现的卡顿问题,但会增大延迟。默认不设置,即服务端使用自身配置值。只会对新的输入流设置生效,对于已经开始混流的输入流不生效。
- 取值范围:[0,10000],超过最大值混流会失败。
ZegoBarrageMessageInfo
房间弹幕消息
属性
fromUser
message
sendTime
messageID
ZegoBroadcastMessageInfo
广播消息
属性
fromUser
message
sendTime
messageID
ZegoLogConfig
日志配置选项
- 支持版本:1.0.0
废弃时间:无
属性
logLevel
ZegoMixStreamAdvance
属性
backgroundColor
backgroundColor: number 混流背景颜色; backgroundColor 为十六进制的 RGB,输入格式必须为 0xRRGGBB00。例如纯白色则传 0xffffff00。
backgroundImage
backgroundImage: string 混流背景图片; backgroundImage 需要提前在即构后台预设 imageId,输入格式为 preset-id://xxx
videoCodec
videoCodec: 'VP8' | 'H264' | 'H265' | 'vp8' | 'h264' | 'h265'; 混流视频编码,'vp8'(string) 或 ' h264' (string),默认 'h264'(string)
userData
userData: Uint8Array 用户自定义数据,长度不超过 1000 字节,设置后拉流方可通过监听 [onPlayerRecvSEI] 的回调获取 SEI 内容。注意必须使用 [ByteBuffer.allocateDirect] 函数创建,否则数据不能传给SDK
ZegoMixStreamConfig
属性
taskID
taskID: string 混流任务 id(客户自定义,务必保证唯一),必填,最大为256个字符,仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '
inputList
outputList
outputConfig
watermark
enableSoundLevel
enableSoundLevel: boolean 开启混流音浪回调通知,用于获取混流中每个音频输入的音浪。开启后拉混流时可通过 [mixerSoundLevelUpdate] 回调收到每条单流的声浪信息。 注:小程序拉流暂不支持 [mixerSoundLevelUpdate] 回调。
streamAlignmentMode
whiteboard
ZegoMixStreamInput
属性
streamID
contentType
contentType: "VIDEO" | "AUDIO" | "VIDEO_ONLY" 混流内容类型;contentType 取值为'VIDEO'(音视频)、'AUDIO'(纯音频),"VIDEO_ONLY"(纯视频), 默认为'VIDEO'
layout
renderMode
imageInfo
label
cornerRadius
soundLevelID
volume
isAudioFocus
ZegoMixStreamLayout
属性
top
left
bottom
right
ZegoMixStreamOutput
属性
target
videoConfig
ZegoMixStreamOutputConfig
属性
outputBitrate
outputFPS
outputWidth
outputHeight
outputAudioCodecID
outputAudioCodecID: 0 | 1 | 2 | 3 混流输出音频编码 outputAudioCodecID 可选0:HE-AAC,1: AAC-LC,2:MP3,3: OPULS ;默认为0。 注意:如果使用 CDN 录制,音频编码请选择 AAC-LC。这是因为部分浏览器(如 Google Chrome 和 Microsoft Edge)不兼容 HE-AAC 音频编码格式,从而导致录制文件无法播放。
outputAudioBitrate
outputAudioChannels
audioMixMode
audioMixMode: ZegoAudioMixMode 多路音频流混音模式。若 [ZegoAudioMixMode] 选择为 [Focused],SDK 将会选择 4 路已设置 [isAudioFocus] 的输入流作为焦点语音突出,若未选择或选择少于 4 路,则会自动补齐 4 路。
ZegoMixerOutputVideoConfig
详情
配置混流输出的视频参数,编码格式、码率。
- 业务场景:手动混流场景,比如多人连麦直播。
属性
videoCodecID
bitrate
encodeProfile
encodeLatency
enableLowBitrateHD
ZegoPlayAudioStats
属性
audioBitrate
audioCodec
audioJitter
audioLevel
audioPacketsLost
audioPacketsLostRate
audioQuality
audioSamplingRate
muteState
audioFPS
audioCumulativeDecodeTime
audioCumulativeBreakTime
audioCumulativeBreakRate
ZegoPlayStats
拉流质量回调详细信息
属性
video
audio
codecImplementationName
currentRoundTripTime
googAvailableSendBandwidth
nackCount
pliCount
sampleTimeWindow
totalRoundTripTime
ZegoPlayVideoStats
属性
frameHeight
frameWidth
googCodecName
muteState
videoBitrate
videoFPS
videoPacketsLost
videoPacketsLostRate
videoTransferFPS
videoFramesDecoded
videoCumulativeDecodeTime
videoCumulativeBreakTime
videoCumulativeBreakRate
ZegoPlayerState
拉流状态
属性
streamID
state
state: 'NO_PLAY' | 'PLAY_REQUESTING' | 'PLAYING' NO_PLAY:未拉流状态,PLAY_REQUESTING:正在请求拉流状态,PLAYING:正在拉流状态
errorCode
extendedData
ZegoPublishAudioStats
属性
audioBitrate
audioCodec
audioPacketsLost
audioPacketsLostRate
googCodecName
muteState
audioFPS
audioQuality
ZegoPublishStats
属性
video
audio
codecImplementationName
currentRoundTripTime
googActualEncBitrate
googAvailableSendBandwidth
googBandwidthLimitedResolution
googBandwidthLimitedResolution: string 是否因为宽带受限而降低发送的视频分辨率(谷歌浏览器特有字段,且新版本已废弃)
googCpuLimitedResolution
googFrameHeightInput
googFrameRateInput
googFrameWidthInput
googTargetEncBitrate
muted
nackCount
paused
pliCount
qualityLimitationReason
sinkId
totalRoundTripTime
volume
ZegoPublishStreamAudioConfig
属性
ANS
AGC
AEC
ZegoPublishVideoStats
属性
frameHeight
frameWidth
googCodecName
muteState
videoBitrate
videoFPS
videoPacketsLost
videoPacketsLostRate
videoTransferFPS
isHardwareEncode
ZegoPublisherState
推流状态
属性
streamID
state
state: 'PUBLISHING' | 'NO_PUBLISH' | 'PUBLISH_REQUESTING' NO_PUBLISH:未推流状态,PUBLISH_REQUESTING:正在请求推流状态,PUBLISHING:正在推流状态
errorCode
extendedData
ZegoRTMEvent
信令服务相关事件集合
详情
描述事件名及其对应的回调参数。
- 业务场景:用于约束注册事件接口 on 和注销事件接口 off 的参数。
属性
roomUserUpdate
roomStateUpdate
roomOnlineUserCountUpdate
IMRecvBroadcastMessage
IMRecvBarrageMessage
IMRecvCustomCommand
roomExtraInfoUpdate
tokenWillExpire
roomStateChanged
roomStateChanged: RoomStateChangedCallBack 当房间的连接状态改变时触发该回调,并通知改变的原因。
- 业务场景:开发者可以通过这个回调来判断房间内当前用户的状态。开发者调用房间相关函数 (参考 “相关接口”) 时会收到此通知。用户设备的网络情况变化时也可能收到此通知(SDK 在断线时会自动重新登录房间。
- 隐私保护声明:提醒用户尽量不要在某些参数(例如userName、userID)传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
- 注意事项:若长时间处于正在请求连接状态 LOGINING,一般是因为用户端网络不稳定导致。
方法
RoomUserUpdateCallBack
RoomUserUpdateCallBack(roomID: string, updateType: 'DELETE' | 'ADD', userList: ZegoUser[]): void参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 发生用户变化房间的ID |
| updateType | 'DELETE' | 'ADD' | 用户行为,DELETE 表示离开,ADD 表示进入 |
| userList | ZegoUser[] | 发生变化用户的具体信息 |
详情
当前登录的房间,如果用户发生新增,删除等,触发回调通知当前用户
触发条件:其他用户登录,退出时触发
限制频率:无
关注回调:无
重点提示:触发前提是登录时,设置了关注用户变化,即 loginRoom 的参数 config 的 userUpdate 设置为 true
- 支持版本:1.0.0
废弃时间:无
RoomStateUpdateCallBack
RoomStateUpdateCallBack(roomID: string, state: 'DISCONNECTED' | 'CONNECTING' | 'CONNECTED', errorCode: number, extendedData: string): void参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 房间ID |
| state | 'DISCONNECTED' | 'CONNECTING' | 'CONNECTED' | DISCONNECTED: 登出房间或房间和服务器断开,并重试后仍旧失败。 CONNECTING: 断开并开始重连。 CONNECTED: 登录成功或重连成功。 |
| errorCode | number | 断开时候的具体错误码 |
| extendedData | string | 扩展信息 |
详情
房间连接状态回调,state 分别为'DISCONNECTED','CONNECTING','CONNECTED'
触发条件:登录房间、登出房间或断网重连等情况触发。
限制频率:无
重点提示:登录前注册才会收到回调,2.16.0 及以上版本建议使用 roomStateChanged。
- 支持版本:1.0.0
废弃时间:无
RoomStateChangedCallBack
RoomStateChangedCallBack(roomID: string, reason: ZegoRoomStateChangedReason, errorCode: number, extendedData: string): void参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 房间ID |
| reason | ZegoRoomStateChangedReason | 房间状态改变原因 |
| errorCode | number | 断开时候的具体错误码 |
| extendedData | string | 扩展信息 |
详情
房间连接状态回调,state 分别为'LOGINING','LOGINED','LOGIN_FAILED' ,'RECONNECTING','RECONNECTED','RECONNECT_FAILED','KICKOUT','LOGOUT','LOGOUT_FAILED'
触发条件:在断开连接,重试连接及重连成功时触发
限制频率:无
重点提示:登录前注册才会收到回调
- 支持版本:2.16.0
废弃时间:无
RoomOnlineUserCountUpdateCallBack
RoomOnlineUserCountUpdateCallBack(roomID: string, count: number): void参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 发生用户变化房间的ID |
| count | number | 当前在线用户数量 |
详情
回调当前房间内的在线人数
触发条件:用户成功登录房间时触发,成功登录后每30s触发一次
重点提示:无
- 支持版本:1.11.0
废弃时间:无
IMRecvBroadcastMessageCallBack
IMRecvBroadcastMessageCallBack(roomID: string, chatData: ZegoBroadcastMessageInfo[]): void| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 房间ID |
| chatData | ZegoBroadcastMessageInfo[] | 房间消息信息 |
IMRecvBarrageMessageCallBack
IMRecvBarrageMessageCallBack(roomID: string, messageInfo: ZegoBarrageMessageInfo[]): void| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 房间ID |
| messageInfo | ZegoBarrageMessageInfo[] | 弹幕消息信息 |
IMRecvCustomCommandCallBack
IMRecvCustomCommandCallBack(roomID: string, fromUser: ZegoUser, command: string): void| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 房间ID |
| fromUser | ZegoUser | 发送消息用户信息 |
| command | string | 收到的自定义消息 |
roomExtraInfoUpdateCallBack
roomExtraInfoUpdateCallBack(roomID: string, roomExtraInfoList: ZegoRoomExtraInfo[], type: string, data: string): void| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 房间ID |
| roomExtraInfoList | ZegoRoomExtraInfo[] | 房间附加消息数组 |
| type | string | 消息类型 |
| data | string | 消息内容 |
tokenWillExpireCallBack
tokenWillExpireCallBack(roomID: string): void参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | token将要过期房间的ID |
详情
token 将要过期通知, 收到通知后请主动调用renewToken更新token
触发条件:token 中包含过期时间前30s触发该回调
限制频率:无
关注接口:renewToken
重点提示:token过期时间取自token, 请确保生成token的服务器时间准确
- 支持版本:2.6.0
废弃时间:无
ZegoRoomConfig
房间相关配置
属性
userUpdate
maxMemberCount
ZegoRoomExtraInfo
属性
key
value
updateUser
updateTime
ZegoRoomRecvTransparentMessage
收到房间的透传消息
属性
sendUser
content
ZegoRoomSendTransparentMessage
房间透传消息
详情
房间透传消息,包括房间id, 消息内容,发送用户,发送类型,发送模式,超时时间。
属性
sendMode
sendType
content
recvUserList
recvUserList: ZegoUser[] 消息接收者列表,当sendType 指定为ZegoRoomTransparentMessageModeOnlyServer 可不填。当指定为 ZegoRoomTransparentMessageModeClientAndServer 或 ZegoRoomTransparentMessageModeOnlyClient 时,为空将发送给房间所有在线用户。
timeOut
ZegoServerResponse
属性
errorCode
extendedData
ZegoSoundLevelInfo
音浪信息
属性
streamID
soundLevel
type
ZegoStreamList
流信息
属性
streamID
user
extraInfo
urlsFLV
urlsRTMP
urlsHLS
urlsHttpsFLV
urlsHttpsHLS
ZegoUser
属性
userID
userID: string 请勿在此字段填写用户敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。 用户 ID,由开发者自己生成,最大 64 字节的字符串。仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '.
userName
ZegoVideoCodec
属性
H264
VP8
H265
ZegoWebPublishOption
属性
streamParams
streamParams: string 推流备选参数 ; 备选参数 streamParams 格式如下:'zg_expired=XX&zg_nonce=XX&zg_token=XX',只有需要配置鉴权才传入(可选功能)
extraInfo
videoCodec
videoCodec: 'VP8' | 'H264' | 'H265' 推流视频编码,只能传入 'VP8' (string) 或 'H264' (string),默认值为 'H264' 。
roomID
isSEIStart
SEIType
forceSynchronousNetworkTime
forceSynchronousNetworkTime: number 推流时是否同步网络时间。且必须与 setStreamAlignmentProperty 方法配合使用。用于在混流服务或拉流端对多条流进行对齐,比如 KTV 的合唱场景。传 1 为开启,0 为关闭,默认是关闭。
enableDTX
inspectFlag
inspectFlag: ZegoInspectFlagType - 注意事项:当设置为不允许送审时,审核服务商将不会拉取此条流送审;在使用流注入方式实现跨房间 PK 的业务场景时,建议将此字段设置为"不允许",以避免同一条流在多个房间内被重复送审。
trafficControlFocusOnMode
trafficControlFocusOnMode: TrafficControlFocusOnMode 触发流量控制的因素, 默认为TrafficControlFocusOnRemote
trafficControlMinVideoBitrate
trafficControlMinVideoBitrate: number 最低视频码率,单位为 kbps,当达不到最低视频码率时,以极低的视频帧率发送
enableTrafficControl
enableAutoSwitchVideoCodec
enableAutoSwitchVideoCodec: boolean 当 videoCodec 不可用时,是否自动切换为可用的 videoCodec, 默认 false。 比如:当前设备不支持 H264,开启该配置后,SDK 会自动切换至 VP8。
trafficControlMinVideoMode
trafficControlMinVideoMode: TrafficControlMinVideoBitrateMode 流控触发最低码率时的视频发送模式。传 0 表示低码率切换纯音频;默认表示低码率时降低视频帧率。
ZegoWechatMiniEvent
媒体服务相关事件集合
详情
描述事件名及其对应的回调参数。
- 业务场景:用于约束注册事件接口 on 和注销事件接口 off 的参数。
属性
publishQualityUpdate
publisherStateUpdate
playQualityUpdate
streamExtraInfoUpdate
playerStateUpdate
roomStreamUpdate
mixerSoundLevelUpdate
autoMixerSoundLevelUpdate
autoMixerSoundLevelUpdate: AutoMixerSoundLevelUpdateCallBack 自动混流中的每条单流的声浪更新通知。
backgroundEffectError
recvExperimentalAPI
mixerRelayCDNStateUpdate
方法
PublishQualityUpdateCallBack
PublishQualityUpdateCallBack(streamID: string, stats: ZegoPublishStats): void参数
| 名称 | 类型 | 描述 |
|---|---|---|
| streamID | string | 推流流ID |
| stats | ZegoPublishStats | 推流质量描述 |
详情
订阅推流质量回调
触发条件:推流成功后
限制频率:无
关注回调:无
重点提示:每 3 秒回调一次
- 支持版本:1.0.0
废弃时间:无
PublisherStateUpdateCallBack
PublisherStateUpdateCallBack(result: ZegoPublisherState): void参数
| 名称 | 类型 | 描述 |
|---|---|---|
| result | ZegoPublisherState | 推流状态结果 |
详情
推流的状态通知,推流是异步过程,中间的状态切换都通过该接口回调。监听该回调,对重试依旧不能成功的情况,做错误日志收集,提示客户
触发条件:开始推流后
限制频率:无
关注回调:无
重点提示:必须在推流前监听
- 支持版本:1.0.0
废弃时间:无
RoomStreamUpdateCallBack
RoomStreamUpdateCallBack(roomID: string, updateType: 'DELETE' | 'ADD', streamList: ZegoStreamList[]): void参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 房间ID |
| updateType | 'DELETE' | 'ADD' | DELETE:流删除,ADD:流新增 |
| streamList | ZegoStreamList[] | 更新流列表,数组顺序是以服务器接收到的时间进行排序。 |
详情
监听已登录房间内其他用户流的变化(增加,删除)
触发条件:房间内其他用户有流新增或删除
限制频率:无
重点提示:需要在登录房间前调用
- 支持版本:1.0.0
废弃时间:无
PlayQualityUpdateCallBack
PlayQualityUpdateCallBack(streamID: string, stats: ZegoPlayStats): void参数
| 名称 | 类型 | 描述 |
|---|---|---|
| streamID | string | 流 ID |
| stats | ZegoPlayStats | 拉流质量回调信息 |
详情
订阅拉流质量回调
触发条件:拉流成功后
限制频率:无
关注回调:无
重点提示:每 3 秒回调一次
- 支持版本:1.0.0
废弃时间:无
StreamExtraInfoUpdateCallBack
StreamExtraInfoUpdateCallBack(roomID: string, streamList: { streamID: string; user: ZegoUser; extraInfo: string }[]): void参数
| 名称 | 类型 | 描述 |
|---|---|---|
| roomID | string | 房间ID |
| streamList | { streamID: string; user: ZegoUser; extraInfo: string }[] | 流信息 |
详情
接收对端设置的流附加信息
触发条件:流附加消息更新
- 支持版本:1.0.0
废弃时间:无
PlayerStateUpdateCallBack
PlayerStateUpdateCallBack(result: ZegoPlayerState): void参数
| 名称 | 类型 | 描述 |
|---|---|---|
| result | ZegoPlayerState | 拉流状态结果 |
详情
拉流的状态通知,拉流是异步过程,中间的状态切换都通过该接口回调。监听该回调,对重试依旧不能成功的情况,做错误日志收集,提示客户
触发条件:开始拉流后
限制频率:无
关注回调:无
重点提示:必须在拉流前监听
- 支持版本:1.0.0
废弃时间:无
ZegoWxConfig
属性
wxContext
pushAtr
playAtr
ZegoWxPlayOption
属性
streamParams
isMix
sourceType
sourceType: "CDN" | "BGP" 拉流来源,"BGP" 为 ZEGO RTC 服务器,"CDN" 为 CDN 服务器,需要 AppID 启用 CDN 配置;RTC 拉流默认是 "BGP",拉混流默认值是 "CDN"。

