logo
实时音视频
当前页

Interface

AudioFrameOptions

音频数据回调相关配置选项

属性

frameSize

frameSize
frameSize: number

每次回调的音频数据中每个声道包含的采样数据个数,只能设为下列值:256, 512, 1024, 2048, 4096, 8192, 16384。默认为 4096。

  • 注意事项:frameSize 在首次设置生效。

sampleRate

sampleRate
sampleRate: 8000 | 16000 | 22050 | 24000 | 32000 | 44100 | 48000

指定回调音频数据转换采样率,只能设为下列值:8000、16000、22050、24000、32000、44100、48000。默认是根据 AudioContext 的原采样率来设置。

channelCount

channelCount
channelCount: 1 | 2

指定回调音频数据的声道数,只能设为下列值:1、2。默认是根据原数据的声道数决定。

bitDepth

bitDepth
bitDepth: 32 | 16

音频数据位深,只能设为下列值: 32 即 32-bit float、16 即 16-bit。默认值为 32。

BackgroundBlurOptions

背景虚化相关参数

属性

blurDegree

blurDegree
blurDegree: number

背景虚化等级

BackgroundVirtualOptions

虚拟背景处理相关参数

属性

source

source
source: HTMLImageElement

objectFit

objectFit
objectFit: string

图片视图处理模式,"cover" 为覆盖容器;"contain" 为显示全部内容;"fill" 为拉伸填充。默认值是 ”cover“。

BufferIntervals

buffer 间隔参数

详情

buffer 间隔参数

属性

minInterval

minInterval
minInterval: number

buffer 区间下限,minInterval 的可选范围在 [0, 1000] ms 区间,默认0

maxInterval

maxInterval
maxInterval: number

buffer 区间上限,maxInterval 的可选范围在 [1000, 10000] ms 区间,默认 2000 ms

ConstraintExtend

ZegoCamera及ZegoSreen的分辨率、码率等配置的约束扩展。

  • 业务场景:创建预览音视频流时约束扩展。
  • 注意事项:对于四种形式,优先级为 exact > ideal >= max = min。即:
  1. 出现exact时,忽略其他选项。若无法满足,则采集失败
  2. 出现ideal,没有min、max时,尽量靠近ideal ⅰ. 若能达到,则可以浮动在 ideal ± 10 ⅱ. 若不能达到,则选用最靠近的值
  3. 不出现exact,出现ideal,有min时,尽量靠近ideal的同时,大于min。若无法满足大于min,则采集失败
  4. 不出现exact,出现ideal,有max时,尽量靠近ideal的同时,小于max。若无法满足小于max,则采集失败
  5. 不出现exact,出现ideal,有min和max时,尽量靠近ideal的同时,大于min且小于max。若无法满足,则采集失败
  6. 不出现exact,不出现ideal,出现min时,大于min。若无法满足大于min,则采集失败
  7. 不出现exact,不出现ideal,出现max时,小于max。若无法满足小于max,则采集失败
  8. 不出现exact,不出现ideal,出现min和max时,大于min且小于max。若无法满足,则采集失败。

属性

exact

exact
exact: number

可选参数,出现该选项时忽略其他选项。严格指定采集设备最终输出的值,如果设备不支持指定的值,采集会失败。

ideal

ideal
ideal: number

可选参数,期望采集设备最终输出的值,如果设备不支持指定的值,会尽量输出一个最靠近的值。

max

max
max: number

可选参数,采集设备最终输出的值上限。

min

min
min: number

可选参数,采集设备最终输出的值下限。

ExceptionData

详情

exceptionUpdate 相关的事件信息

属性

code

code

事件码

message

message
message: string

信息描述

MediaInfo

描述播放器插件拉取 CDN 流解析到的媒体信息数据

属性

frameWidth

frameWidth
frameWidth: number

视频帧宽度

frameHeight

frameHeight
frameHeight: number

视频帧高度

frameRate

frameRate
frameRate: number

视频资源的原始帧率

sampleRate

sampleRate
sampleRate: number

音频采样率

duration

duration
duration: number

视频资源时长,对于 CDN 的直播流来说,通常值为 -1。

channelCount

channelCount
channelCount: number

音频声道数目,默认会使用双声道渲染音频

videoCodecName

videoCodecName
videoCodecName: string

视频编码格式名称

audioCodecName

audioCodecName
audioCodecName: string

音频编码格式名称

formatName

formatName
formatName: string

媒体封装格式名称

QualityStats

描述播放器流质量数据

详情

流质量统计数据

属性

decodeType

decodeType
decodeType: string

解码方式

videoNetDataKBPerSecond

videoNetDataKBPerSecond
videoNetDataKBPerSecond: number

视频拉流网络码率

audioNetDataKBPerSecond

audioNetDataKBPerSecond
audioNetDataKBPerSecond: number

音频拉流网络码率

videoDecodedKBPerSecond

videoDecodedKBPerSecond
videoDecodedKBPerSecond: number

视频解码码率(MSE无效

audioDecodedKBPerSecond

audioDecodedKBPerSecond
audioDecodedKBPerSecond: number

音频解码码率(MSE无效

hasAudio

hasAudio
hasAudio: boolean

是否有音频数据

hasVideo

hasVideo
hasVideo: boolean

是否有视频数据

videoRenderFPS

videoRenderFPS
videoRenderFPS: number

视频渲染帧率

audioRenderFPS

audioRenderFPS
audioRenderFPS: number

音频渲染帧率(MSE无效

audioMuted

audioMuted
audioMuted: boolean

播放是否被静音

targetVideoFPS

targetVideoFPS
targetVideoFPS: number

目标视频渲染帧率

targetAudioFPS

targetAudioFPS
targetAudioFPS: number

目标音频渲染帧率

netQuality

netQuality
netQuality: number

网络质量分数(0~100),100 代表网络极好,0 代表拉不到流

totalRecvBytes

totalRecvBytes
totalRecvBytes: number

接收到的数据总字节数

videoRecvBytes

videoRecvBytes
videoRecvBytes: number

接收到的视频数据字节数

audioRecvBytes

audioRecvBytes
audioRecvBytes: number

接收到的音频数据字节数

seiRecvBytes

seiRecvBytes
seiRecvBytes: number

接收到的SEI数据字节数

RangeAudioPlayStats

详情

范围语音拉流质量。

属性

audioBitrate

audioBitrate
audioBitrate: number

音频码率

audioCodec

audioCodec
audioCodec: string

音频编码格式"opus"

audioJitter

audioJitter
audioJitter: number

网络抖动

audioLevel

audioLevel
audioLevel: number

音量

audioPacketsLost

audioPacketsLost
audioPacketsLost: number

丢包数

audioPacketsLostRate

audioPacketsLostRate
audioPacketsLostRate: number

丢包率

audioQuality

audioQuality
audioQuality: number

拉流音频质量,-1 表示未知,0 表示 极好,1 表示好,2 表示中等,3 表示 差,4 表示极差

audioSamplingRate

audioSamplingRate
audioSamplingRate: number

采样率

muteState

muteState
muteState: "0" | "1"

音轨是否被关闭

audioFPS

audioFPS
audioFPS: number

音频帧率

audioSendLevel

audioSendLevel
audioSendLevel: number

音频发送能量

googCodecName

googCodecName
googCodecName: string

音频编码格式

audioCumulativeDecodeTime

audioCumulativeDecodeTime
audioCumulativeDecodeTime: number

累计音频解码时长,单位为毫秒 (2.19.0 及以上版本支持)。

audioCumulativeBreakTime

audioCumulativeBreakTime
audioCumulativeBreakTime: number

累计视频卡顿时长,单位为毫秒 (2.19.0 及以上版本支持)。

audioCumulativeBreakRate

audioCumulativeBreakRate
audioCumulativeBreakRate: number

累计视频卡顿率,单位为 1,取值范围 [0,1](2.19.0 及以上版本支持)。

peerToPeerDelay

peerToPeerDelay
peerToPeerDelay: number

端到端延迟,单位为 ms。

peerToPeerPacketLostRate

peerToPeerPacketLostRate
peerToPeerPacketLostRate: number

端到端丢包率,单位 1。

RangeAudioPublishStats

详情

范围语音推流质量。

属性

audioBitrate

audioBitrate
audioBitrate: number

音频码率

audioCodec

audioCodec
audioCodec: string

音频编码格式

audioPacketsLost

audioPacketsLost
audioPacketsLost: number

音频丢包数

audioPacketsLostRate

audioPacketsLostRate
audioPacketsLostRate: number

音频丢包率

googCodecName

googCodecName
googCodecName: string

音频编码格式

muteState

muteState
muteState: '0' | '1'

音轨是否被关闭

audioFPS

audioFPS
audioFPS: number

音频帧率

audioQuality

audioQuality
audioQuality: number

推流音频质量,-1 表示未知,0 表示 极好,1 表示好,2 表示中等,3 表示 差,4 表示极差

SoundLevelDelegateOptions

音浪回调设置选项。

属性

enableInBackground

enableInBackground
enableInBackground: boolean

设置在页面隐藏时是否保持开启获取获取音浪和回调音浪回调,2.18.0 及以后版本默认为关闭。

  • 业务场景:在页面隐藏时关闭获取音浪可以减少性能消耗。

StreamViewEvent

媒体流播放组件相关事件集合。

详情

描述事件名及其对应的回调参数。

  • 业务场景:用于约束注册事件接口 on 和注销事件接口 off 的参数。

属性

autoplayFailed

autoplayFailed
autoplayFailed: () => void

自动播放失败事件。

canPlayVideo

canPlayVideo
canPlayVideo: () => void

在用户可以开始播放视频时触发。

canPlayAudio

canPlayAudio
canPlayAudio: () => void

在用户可以开始播放音频时触发。

ZegoAudioEffectPlayOptions

音效播放器设置选项。

属性

path

path
path: string

指定加载在线音频资源地址,如果 audioEffectID 上已经加载了音效,会直接使用加载好的音效。

  1. 在线音频文件需要符合 浏览器的同源策略
  2. 支持 MP3、AAC 以及浏览器支持的其他音频格式。

ZegoAudioFrame

音频原始数据信息。

属性

channels

channels
channels: Float32Array[]

音频原始数据,数组中是各个声道的音频原始数据。

channelCount

channelCount
channelCount: number

声道数

sampleRate

sampleRate
sampleRate: number

音频采样率

ZegoAutoMixerTask

自动混流任务对象

详情

调用 [startAutoMixerTask] 函数向 ZEGO RTC 服务器发起自动混流任务时,需要通过该参数配置自动混流任务,包括任务 ID、房间 ID、音频配置、输出流列表、是否开启声浪回调通知。

  • 业务场景:当向 ZEGO RTC 服务器发起自动混流任务时,需要这个配置。

属性

taskID

taskID
taskID: string

混流任务 id(客户自定义,务必保证唯一),必填,最大为256个字符,仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '

roomID

roomID
roomID: string

自动混流任务的房间 ID。

  • 业务场景:当发起自动混流任务时,需要配置该参数。
  • 是否必填:是。
  • 取值范围:长度不超过 128 字节的字符串。
  • 注意事项:仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '_', '+', '=', '-', '`', ';', '’', ',', '.', '<', '>', ''。如果需要与 Web SDK 互通,请不要使用 '%'。

audioConfig

audioConfig
audioConfig: ZegoMixerAudioConfig

自动混流任务的音频配置,可配置音频码率、音频声道,编码 ID、多路音频流混音模式。

  • 业务场景:如果对自动混流任务的音频有特殊需求,比如需要调整音频码率,可根据需要调整该参数,否则不用配置。
  • 是否必填:否。
  • 默认值:默认音频码率为 "48 kbps", 默认音频声道为 "ZEGO_AUDIO_CHANNEL_MONO", 默认编码 ID 为 "ZEGO_AUDIO_CODEC_ID_DEFAULT",默认多路音频流混音模式为 "ZEGO_AUDIO_MIX_MODE_RAW"。
  • 建议值:根据需求设置。

outputList

outputList
outputList: ZegoMixStreamOutput[]

自动混流任务的输出流列表,列表中为 URL 或者流 ID,若为 URL 格式 目前只支持 RTMP URL 格式:rtmp://xxxxxxxx。

  • 业务场景:当发起自动混流任务时,需要配置该参数指明混流输出目标。Mix stream output target
  • 是否必填:是。

enableSoundLevel

enableSoundLevel
enableSoundLevel: boolean

开启混流音浪回调通知,用于获取混流中每个音频输入的音浪。开启后拉混流时可通过 on [AutoMixerSoundLevelUpdate] 回调收到每条单流的声浪信息。

streamAlignmentMode

streamAlignmentMode
streamAlignmentMode: number

流对齐模式,0 为关闭,1为开启。

minPlayStreamBufferLength

minPlayStreamBufferLength
minPlayStreamBufferLength: number

设置混流服务器拉流缓存自适应调整的区间范围下限。在实时合唱 KTV 场景下,推流端网络轻微波动可能会导致混流的卡顿,此时观众拉混流的时候,会有比较高概率出现卡顿的问题。通过调节混流服务器拉流缓存自适应调整的区间范围下限,可优化观众端拉混流出现的卡顿问题,但会增大延迟。默认不设置,即服务端使用自身配置值。只会对新的输入流设置生效,对于已经开始混流的输入流不生效。

  • 取值范围:[0,10000],超过最大值混流会失败。

ZegoAutoSwitchDeviceConfig

自动切换摄像头接口相关配置约束

属性

camera

camera
camera: boolean

是否开启摄像头设备的自动切换

  • 是否必填:否

microphone

microphone
microphone: boolean

是否开启麦克风设备的自动切换

  • 是否必填:否

ZegoBarrageMessageInfo

房间弹幕消息

属性

fromUser

fromUser
fromUser: ZegoUser

发送消息用户

message

message
message: string

消息内容

sendTime

sendTime
sendTime: number

发送时间

messageID

messageID
messageID: string

消息ID

ZegoBroadcastMessageInfo

广播消息

属性

fromUser

fromUser
fromUser: ZegoUser

发送消息用户

message

message
message: string

消息内容

sendTime

sendTime
sendTime: number

发送时间

messageID

messageID
messageID: number

消息ID

ZegoCamera

创建摄像头媒体流相关参数约束

详情

该类用于约束接口 createStream 的参数 source.camera。

  • 业务场景:创建摄像头音视频流。
  • 注意事项:1. 创建流成功后拿到的 stream 为 mediaStream 对象,开发者可通过赋值给 <video> 或 <audio> 对象的 srcObject 属性进行渲染。
  1. audioInput 和 videoInput 不指定时使用默认设备。
  2. 降噪、自动增益、回声消除三者默认是根据浏览器能力来决定是否开启,若无特殊情况,建议客户保持这三项不做修改。
  3. 当 camera 的 videoQuality 为 4 时,camera 增加 width / height / frameRate / bitrate 属性,这几个参数只支持正整数,必须要把这四个属性也传递给 SDK。
  4. 如果设置了 facingMode 参数,会忽略 videoInput 参数。

属性

audio

audio
audio: boolean

是否需要音频,默认为 true

audioInput

audioInput
audioInput: string

音频输入设备,不传则为浏览器选择的默认设备

audioBitrate

audioBitrate
audioBitrate: number

音频码率,默认为 48kbps

video

video
video: boolean

是否需要视频,默认是 true。

videoInput

videoInput
videoInput: string

视频输入设备,不传则为浏览器选择的默认设备。

videoQuality

videoQuality
videoQuality: 1|2|3|4

视频质量等级,默认质量等级为 4 ,(2.21.0 之前版本默认等级为 2): 1:分辨率 320 * 240,帧率 15,码率 300 kbps。 2:分辨率 640 * 480,帧率:15,码率 800 kbps。 3:分辨率 1280 * 720,帧率:20,码率 1500 kbps。 4:当 videoQuality 为 4 时,width、height、frameRate 和 bitrate 四个参数都可以自定义修改,不传则以场景化配置值为准,默认为通用场景值:分辨率 640 * 480,帧率:15,码率 800 kbps。

facingMode

facingMode
facingMode: 'user'|'environment'

摄像头朝向,“user” 表示前置摄像头,“environment” 表示后置摄像头。不传默认是使用 videoInput 指定的设备或者操作系统默认摄像头设备。

channelCount

channelCount
channelCount: 1|2

声道数,1 为单声道,2 为双声道,默认为单声道。在 Safari 浏览器上拉流如果开启麦克风采集会失去立体声效果,需要避免在拉流时开启麦克风。

ANS

ANS
ANS: boolean

是否开启降噪,不传会根据浏览器能力决定是否开启,通常默认是开启。

AGC

AGC
AGC: boolean

是否开启自动增益,不传会根据浏览器能力决定是否开启,通常默认是开启。

AEC

AEC
AEC: boolean

是否开启回声消除,不传会根据浏览器能力决定是否开启,通常默认是开启。

width

width
width: number | ConstraintExtend

分辨率宽,videoQuality 为 4 时生效。

height

height
height: number | ConstraintExtend

分辨率高,videoQuality 为 4 时生效

bitrate

bitrate
bitrate: number

码率,单位 kb/s,videoQuality 为 4 时生效。

frameRate

frameRate
frameRate: number | ConstraintExtend

帧率,videoQuality 为 4 时生效

startBitrate

startBitrate
startBitrate: "default" | "target"

开始码率,默认为 “default”,环境要求:谷歌内核浏览器及 2.7.0 以上版本的 SDK 。 值为 “default” 表示使用 webrtc 默认开始码率 300kbps 然后慢慢上升;值为 “target” 表示快速上升到已设置的目标码率。

videoOptimizationMode

videoOptimizationMode
videoOptimizationMode: "default" | "motion" | "detail"

视频优化模式,默认为 “default“ ; 值为 “motion” 表示流畅模式,在大多数情况下,SDK 不会降低帧率,但是可能会降低发送分辨率。 值为 ”detail“ 表示清晰模式,在大多数情况,SDK 不会降低发送分辨率,但是可能会降低帧率。

minBitrate

minBitrate
minBitrate: number

推流码率最小值。当网络较差的时候可接受的视频质量下降码率的最小值。

  • 业务场景:期望视频持续高质量则把 minBitrate设置为接近目标码率的值。视频质量要求不高的推流可以把 minBitrate 设置得较低。

keyFrameInterval

keyFrameInterval
keyFrameInterval: number

视频关键帧间隔时长,单位秒。

  • 默认值:2 秒。
  • 取值范围:[2, 6]。

ZegoCapabilityDetection

属性

webRTC

webRTC
webRTC: boolean

是否支持webRTC协议,true代表可以使用webRTC协议传输流

customCapture

customCapture
customCapture: boolean

是否支持自定义流(不通过摄像头或者屏幕捕捉采集到的其他流, 比如video标签播放的mp4等)

camera

camera
camera: boolean

摄像头是否有权限调用

microphone

microphone
microphone: boolean

麦克风是否有权限调用

screenSharing

screenSharing
screenSharing: boolean

是否支持屏幕共享功能

videoCodec

videoCodec
videoCodec: ZegoVideoCodec

浏览器支持的视频编码格式; 需要注意的是有些浏览器检测会支持某一种编码格式,但实际系统阉割了该功能, 所以如果某个编码格式返回false,则一定不支持, true 不一定100%支持

errInfo

errInfo

检测失败相关错误信息,设备相关的错误说明可以参考 MediaDevices.getUserMedia 接口文档的异常说明。

result

result
result: boolean

根据传入的类型判断是否支持

ZegoCapabilityError

属性

name

name
name: string

错误名称

message

message
message: string

错误描述信息

ZegoCapabilityErrorInfo

检测结果相关错误信息。

属性

webRTC

webRTC

customCapture

customCapture
customCapture: ZegoCapabilityError

camera

camera

具体错误说明可以参考 MediaDevices.getUserMedia 接口文档的异常说明。

microphone

microphone
microphone: ZegoCapabilityError

具体错误说明可以参考 MediaDevices.getUserMedia 接口文档的异常说明。

extendedData

extendedData
extendedData: string

ZegoCaptureCamera

创建摄像头媒体流相关参数约束

详情

该类用于约束接口 [createZegoStream] 的参数 source.camera.video。或者 [createZegoStream]创建的ZegoLocalStream实例的方法[startCaptureCamera]、[startCaptureCameraAndMicrophone]。

  • 业务场景:创建摄像头音视频流。
  • 注意事项:1. 调用 [createZegoStream] 成功后拿到的 ZegoLocalStream实例,在成功采集到摄像头视频流后,可以通过调用ZegoLocalStream.playCaptureVideo播放采集视频流,通过ZegoLocalStream.playVideo待推送或者推流中的视频流。
  1. input 不指定时使用默认设备。
  2. 当 camera 的 quality 为 4 时,camera 增加 width / height / frameRate,这几个参数只支持正整数,必须要把这三个属性也传递给 SDK。
  3. 如果设置了 facingMode 参数,会忽略 input 参数。

属性

input

input
input: string

视频输入设备,不传则为浏览器选择的默认设备。

quality

quality
quality: 1|2|3|4

视频质量等级,默认质量等级为 4 ,(2.21.0 之前版本默认等级为 2): 1:分辨率 320 * 240,帧率 15,码率 300 kbps。 2:分辨率 640 * 480,帧率:15,码率 800 kbps。 3:分辨率 1280 * 720,帧率:20,码率 1500 kbps。 4:当 quality 为 4 时,width、height、frameRate 和 bitrate 四个参数都可以自定义修改,不传则以场景化配置值为准,默认为通用场景值:分辨率 640 * 480,帧率:15,码率 800 kbps。

facingMode

facingMode
facingMode: 'user'|'environment'

摄像头朝向,“user” 表示前置摄像头,“environment” 表示后置摄像头,默认是 input 参数指定的设备或者浏览器选择的默认设备。

width

width
width: number | ConstraintExtend

分辨率宽,quality 为 4 时生效。

height

height
height: number | ConstraintExtend

分辨率高,quality 为 4 时生效。

frameRate

frameRate
frameRate: number | ConstraintExtend

帧率,quality 为 4 时生效。

optimizationMode

optimizationMode
optimizationMode: "default" | "motion" | "detail"

视频优化模式,默认为 “default“ ; 值为 “motion” 表示流畅模式,在大多数情况下,SDK 不会降低帧率,但是可能会降低发送分辨率。 值为 ”detail“ 表示清晰模式,在大多数情况,SDK 不会降低发送分辨率,但是可能会降低帧率。

keyFrameInterval

keyFrameInterval
keyFrameInterval: number

视频关键帧间隔时长,单位秒。

  • 默认值:2 秒。
  • 取值范围:[2, 6]。

ZegoCaptureMicrophone

采集麦克风媒体流相关参数约束

详情

该类用于约束接口 [createZegoStream] 的参数 source.camera.audio, 或者 [createZegoStream]创建的ZegoLocalStream实例的方法[startCaptureMicrophone]、[startCaptureCameraAndMicrophone]。

  • 业务场景:采集麦克风媒体流。
  • 注意事项:1. 调用 [createZegoStream] 成功后拿到的 ZegoLocalStream实例,在成功采集到麦克风流后,可以通过调用ZegoLocalStream.playCaptureAudio播放采集音频,通过ZegoLocalStream.playAudio待推送或者推流中的音频。
  1. input 不指定时使用默认设备。
  2. 降噪、自动增益、回声消除三者默认是根据浏览器能力来决定是否开启,若无特殊情况,建议客户保持这三项不做修改。

属性

input

input
input: string

音频输入设备,不传则为浏览器选择的默认设备

channelCount

channelCount
channelCount: 1|2

声道数,1 为单声道,2 为双声道,默认为单声道。

ANS

ANS
ANS: boolean

是否开启降噪,不传会根据浏览器能力决定是否开启,通常默认是开启。

AGC

AGC
AGC: boolean

是否开启自动增益,不传会根据浏览器能力决定是否开启,通常默认是开启。

AEC

AEC
AEC: boolean

是否开启回声消除,不传会根据浏览器能力决定是否开启,通常默认是开启。

ZegoCaptureScreenAudio

创建屏幕共享媒体流的共享音频相关参数约束

详情

该类用于约束接口 [createZegoStream] 的参数 source.screen.audio, 或者 [createZegoStream]创建的ZegoLocalStream实例的方法[startCaptureScreenWithAudio]。

  • 业务场景:创建包含共享音频的屏幕共享媒体流。

属性

ANS

ANS
ANS: boolean

是否开启降噪,默认关闭。

AGC

AGC
AGC: boolean

是否开启自动增益,默认关闭。

AEC

AEC
AEC: boolean

是否开启回声消除,默认开启。

ZegoCaptureScreenVideo

创建屏幕共享媒体流相关参数约束

详情

该类用于约束接口 [createZegoStream] 的参数 source.screen.video, 或者 [createZegoStream]创建的ZegoLocalStream实例的方法[startCaptureScreenWithAudio]、[startCaptureScreen]。

  • 业务场景:创建屏幕共享媒体流。
  • 注意事项:当 quality 为 4 时,camera 增加 width / height / frameRate,这几个参数只支持正整数,必须要把这三个属性也传递给 SDK。

属性

quality

quality
quality: 1|2|3|4

一般而言,屏幕共享视频质量的选择要根据实际情况和场景来确定,screen 中的 quality 提供三种预设值:

1:帧率较大,适合对流畅度要求较高的场景。 2:适合在流畅度和清晰度之间取得平衡的场景。 3:码率较大,适合对清晰度要求较高的场景。 除了以上三种预设值,quality 还提供一种自定义取值 4,可自定义帧率、码率,screen 增加 frameRate 属性,使用时需要把这个属性也传递给 SDK。

视频质量等级,默认质量等级为 2 1 帧率:20 码率: 800K 2 帧率:15 码率: 1500K 3 帧率:5 码率: 2000K 4 帧率

width

width
width: number | ConstraintExtend

分辨率宽

height

height
height: number | ConstraintExtend

分辨率高

frameRate

frameRate
frameRate: number | ConstraintExtend

帧率

optimizationMode

optimizationMode
optimizationMode: "default" | "motion" | "detail"

视频优化模式,默认为 “default“ ; 值为 “motion” 表示流畅模式,在大多数情况下,SDK 不会降低帧率,但是可能会降低发送分辨率。 值为 ”detail“ 表示清晰模式,在大多数情况,SDK 不会降低发送分辨率,但是可能会降低帧率

sourceID

sourceID
sourceID: string

指定屏幕共享画面 ID , 仅限chrome 内核浏览器使用

keyFrameInterval

keyFrameInterval
keyFrameInterval: number

视频关键帧间隔时长,单位秒。屏幕共享可以通过调大关键帧的间隔时长以减少视频编码性能压力。

  • 默认值:2 秒。
  • 取值范围:[2, 6]。

captureElement

captureElement
captureElement: HTMLElement

支持屏幕共享视频仅共享传入的DOM元素区域。

  • 业务场景:支持屏幕共享视频仅共享传入的DOM元素区域,而不是整个tab标签页。
  • 注意事项:1. 仅支持 Chrome 104 或以上版本的浏览器;如果共享的 DOM 元素中包含多媒体元素(img、video 等),需使用 Chrome 116 或以上版本的浏览器。为达到更好的体验,建议您直接使用 Chrome 最新版本。 2.建议您使用 CSS 固定 DOM 元素的位置,避免浏览器页面滚动时、DOM 出现在视口的大小发生变化,导致采集到的视频分辨率频繁变化,造成部分 Android 设备拉流解码失败。

ZegoCheckSingleType

属性

webRTC

webRTC
webRTC: "webRTC"

检测浏览器是否支持 webRTC

customCapture

customCapture
customCapture: "customCapture"

检测浏览器是否支持 自定义流

camera

camera
camera: "camera"

检测摄像头是否有权限调用

microphone

microphone
microphone: "microphone"

检测麦克风是否有权限调用

screenSharing

screenSharing
screenSharing: "screenSharing"

检测是否支持屏幕共享

H264

H264
H264: "H264"

检测是否支持H264编码格式

VP8

VP8
VP8: "VP8"

检测是否支持VP8编码格式

ZegoCopyrightedMusicConfig

版权音乐配置。

属性

user

user
user: ZegoUser

用户对象实例,配置用户 ID、用户名。 注意此处设置的用户 ID 需要与登录房间时设置的用户 ID 保持一致,否则会出现请求版权音乐后台服务失败的情况。

ZegoCopyrightedMusicDownloadResponse

下载歌曲返回结果。

属性

errorCode

errorCode
errorCode: number

错误码,详情请参考 常见错误码文档。

urls

urls
urls: string[]

歌曲链接列表,如果下载的是伴奏,第一个链接是伴奏,第二个是原曲。

ZegoCopyrightedMusicEvent

版权音乐功能相关事件集合。

详情

描述事件名及其对应的回调参数。

  • 业务场景:用于约束注册事件接口 on 和注销事件接口 off 的参数。

属性

downloadProgressUpdate

downloadProgressUpdate
downloadProgressUpdate: DownloadProgressUpdateCallBack

加载歌曲或伴奏进度回调。

songLineScoreComplete

songLineScoreComplete
songLineScoreComplete: SongLineScoreCompleteCallBack

开始歌曲打分,歌曲播放每一行打分完成回调,可以通过该回调获取这一行分数信息。调 startScore 接口需要传 ZegoStartScoreParams.enableSongLineScoreCompleteEvent 值为 true 才能开启该事件回调。

ZegoCopyrightedMusicGetKrcLyricByTokenResponse

获取 krc 格式歌词完成回调。

属性

errorCode

errorCode
errorCode: number

错误码,详情请参考 常见错误码文档。

lyrics

lyrics
lyrics: any

lrc 格式歌词,专用于逐行格式歌词场景,详情请参考 https://doc-zh.zego.im/article/15563。

ZegoCopyrightedMusicGetLrcLyricResponse

获取 lrc 格式歌词完成回调结果。

属性

errorCode

errorCode
errorCode: number

错误码,详情请参考 常见错误码文档。

lyrics

lyrics
lyrics: any

lrc 格式歌词,专用于逐行格式歌词场景,详情请参考 https://doc-zh.zego.im/article/15563。

ZegoCopyrightedMusicGetStandardPitchResponse

获取标准音高线数据完成回调结果。

属性

errorCode

errorCode
errorCode: number

错误码,详情请参考 常见错误码文档。

pitch

pitch
pitch: any

标准音高线数据。详情请参考 Android:https://doc-zh.zego.im/article/15148, iOS:https://doc-zh.zego.im/article/15147

ZegoCopyrightedMusicRequestConfig

获取资源的配置。

属性

songID

songID
songID: string

歌曲 ID。

vendorID

vendorID

版权方。

mode

mode

计费模式。

masterID

masterID
masterID: string

房主 ID, 当计费模式为按房主计费时必传。指明按哪个房主进行点歌/点伴奏/高潮片段。

sceneID

sceneID
sceneID: number

场景 ID, 指明实际业务,详情可咨询 ZEGO 技术支持。

ZegoCopyrightedMusicRequestResourceResponse

获取资源的结果。

属性

errorCode

errorCode
errorCode: number

错误码,详情请参考 常见错误码文档。

resource

resource
resource: any

点歌服务返回的 JSON,包含歌曲资源信息,详细请参考 https://doc-zh.zego.im/article/15563#1_1。

ZegoCopyrightedMusicSendExtendedRequestResponse

扩展请求结果。

属性

errorCode

errorCode
errorCode: number

错误码,详情请参考 常见错误码文档。

result

result
result: any

请求返回结果

ZegoCustom

创建第三方媒体流相关参数约束

详情

该类用于约束接口 createStream 的参数 source.custom。

  • 业务场景:分享网络或本地的视频资源。

属性

source

source
source: HTMLMediaElement | MediaStream

第三方源,<video>或<audio>媒体对象或MediaStream

bitrate

bitrate
bitrate: number

视频码率

audioBitrate

audioBitrate
audioBitrate: number

音频码率,默认为 48kbps

channelCount

channelCount
channelCount: number
  • 注意事项:在 Safari 浏览器上拉流如果开启麦克风采集会失去立体声效果,需要避免在拉流时开启麦克风。

startBitrate

startBitrate
startBitrate: "default" | "target"

开始码率,默认为 “default”,环境要求:谷歌内核浏览器及 2.7.0 以上版本的 SDK 。 值为 “default” 表示使用 webrtc 默认开始码率 300kbps 然后慢慢上升;值为 “target” 表示快速上升到已设置的目标码率。

videoOptimizationMode

videoOptimizationMode
videoOptimizationMode: "default" | "motion" | "detail"

视频优化模式,默认为 “default“ ; 值为 “motion” 表示流畅模式,在大多数情况下,SDK 不会降低帧率,但是可能会降低发送分辨率。 值为 ”detail“ 表示清晰模式,在大多数情况,SDK 不会降低发送分辨率,但是可能会降低帧率

minBitrate

minBitrate
minBitrate: number

推流码率最小值。当网络较差的时候可接受的视频质量下降码率的最小值。

  • 业务场景:期望视频持续高质量则把 minBitrate设置为接近目标码率的值。视频质量要求不高的推流可以把 minBitrate 设置得较低。

keyFrameInterval

keyFrameInterval
keyFrameInterval: number

视频关键帧间隔时长,单位秒。

  • 默认值:2 秒。
  • 取值范围:[2, 6]。

ZegoCustomAudio

创建第三方音频媒体流相关参数约束

详情

该类用于约束接口 [createZegoStream] 的参数 source.custom.video, 或者 [createZegoStream]创建的ZegoLocalStream实例的方法[startCaptureCustomAudio]、[startCaptureCustomVideoAndAudio]。

  • 业务场景:分享网络或本地的音频资源。

属性

source

source
source: HTMLMediaElement | MediaStream

第三方源,<video>或<audio>媒体对象或MediaStream

channelCount

channelCount
channelCount: number

声道数,1为单声道,2为双声道,默认单声道

ZegoCustomPlayerResourceConfig

自定义拉流资源类型配置。
3.7.0 版本开始支持。

属性

beforePublish

beforePublish
beforePublish: 0 | 1 | 2

开始推流前拉流选择的资源类型。0 表示仅从 RTC 拉流;1 表示仅从 CDN 拉流;2 表示仅从 L3。

publishing

publishing
publishing: 0 | 1 | 2

推流中拉流选择的资源类型。0 表示仅从 RTC 拉流;1 表示仅从 CDN 拉流;2 表示仅从 L3。

afterPublish

afterPublish
afterPublish: 0 | 1 | 2

停止推流后拉流选择的资源类型。0 表示仅从 RTC 拉流;1 表示仅从 CDN 拉流;2 表示仅从 L3。

ZegoCustomVideo

创建第三方视频媒体流相关参数约束

详情

该类用于约束接口 [createZegoStream] 的参数 source.custom.video, 或者 [createZegoStream]创建的ZegoLocalStream实例的方法[startCaptureCustomVideo]、[startCaptureCustomVideoAndAudio]。

  • 业务场景:分享网络或本地的视频资源。

属性

source

source
source: HTMLMediaElement | MediaStream

第三方源,<video>或<audio>媒体对象或MediaStream

optimizationMode

optimizationMode
optimizationMode: "default" | "motion" | "detail"

视频优化模式,默认为 “default“ ; 值为 “motion” 表示流畅模式,在大多数情况下,SDK 不会降低帧率,但是可能会降低发送分辨率。 值为 ”detail“ 表示清晰模式,在大多数情况,SDK 不会降低发送分辨率,但是可能会降低帧率

keyFrameInterval

keyFrameInterval
keyFrameInterval: number

视频关键帧间隔时长,单位秒。

  • 默认值:2 秒。
  • 取值范围:[2, 6]。

ZegoDataChannelEvent

实时有序数据功能相关事件集合。

详情

描述事件名及其对应的回调参数。

  • 业务场景:用于约束注册事件接口 on 和注销事件接口 off 的参数。

属性

receiveRealTimeSequentialData

receiveRealTimeSequentialData
receiveRealTimeSequentialData: PlayerRecvRealtimeSequentialDataCallBack

实时信令接收更新事件。

ZegoDeviceInfo

属性

deviceName

deviceName
deviceName: string

deviceID

deviceID
deviceID: string

ZegoDeviceInfos

属性

microphones

microphones
microphones: ZegoDeviceInfo[]

speakers

speakers
speakers: ZegoDeviceInfo[]

cameras

cameras
cameras: ZegoDeviceInfo[]

ZegoEffectsBeautyParam

基础美颜参数选项。

属性

whitenIntensity

whitenIntensity
whitenIntensity: number

美白强度,取值范围 [0,100],默认值 50。

rosyIntensity

rosyIntensity
rosyIntensity: number

红润强度,取值范围 [0,100],默认值 50。

smoothIntensity

smoothIntensity
smoothIntensity: number

磨皮强度,取值范围 [0,100],默认值 50。

sharpenIntensity

sharpenIntensity
sharpenIntensity: number

锐化强度,取值范围 [0,100],默认值 50。

ZegoElectronScreenSource

属性

id

id
id: string

id

name

name
name: string

屏幕名称

thumbnail

thumbnail
thumbnail: any

屏幕快照

ZegoExpressPlayerConfig

播放器插件初始化配置

属性

container

container
container: HTMLDivElement

放置播放器渲染组件的容器。您可以在指定容器的 div 标签上设置相关属性:

  • zg-width,播放器组件的宽度,非必选。如果只设置了宽度,渲染组件的高度将会按照视频比例等比例缩放。
  • zg-height,播放器组件的高度,非必选。如果只设置了高度,渲染组件的宽度将会按照视频比例等比例缩放。
  • 调用时机:播放器实例化时调用。
  • 注意事项:如果容器同时设置宽和高,如果播放视频帧的比例和容器设置对宽高比不一致,默认会对播放画面进行拉伸缩放处理。

mode

mode
mode: string

播放模式,目前仅支持 "live" 模式,即直播拉流模式。

engineType

engineType
engineType: string

可选值,传入 SDK 的引擎实例的类型,可选 "express" 和 "liveroom",如果不传值默认使用的是 "express",即代表初始化传入的是 express sdk 的引擎实例。如果设置选项 "liveroom",则代表指定播放器插件兼容 liveroom sdk 的引擎实例。

decodeType

decodeType
decodeType: string

可选值,指定播放器解码优先采用的解码类型,可选值为字符串 "WebCodecs"、"wasm" 或 "MSE"。如果不传值播放器默认优先使用 "WebCodecs" 类型进行解码。

"WebCodecs" 解码类型,代表优先使用浏览器 WebCodecs API 进行硬件解码,在解码速率上会比软解更快。需要注意的是,WebCodecs 解码只在 PC Chrome 浏览器和少部分 Android 机型的 Chrome 浏览器上支持。

"MSE" 解码类型,代表优先使用浏览器的 MSE(Media Source Extensions)API 解码,在解码速率上会比软解更快,在浏览器的兼容性上比 WebCodecs 方案更好,支持移动端 IOS 之外的浏览器。但相比 WebCodecs 解码和 wasm 解码,播放器受 MSE API 方案限制,收集到的质量监测数据相对会更少一些。

"wasm" 解码类型,代表指定使用优先使用软解进行播放,但在解码效率上会比 WebCodecs 解码更差一些。

在播放器解码时,默认按照 “WebCodecs 硬解 > MSE 硬解 > 软解” 的优先级顺序进行解码播放。如果浏览器不支持某种解码方式或者在中途解码失败,会自动回退到下一种方式。

ZegoExpressPlayerError

描述播放器插件的错误信息

属性

code

code
code: number

错误码

msg

msg
msg: string

错误详细描述

ZegoFontStyle

字体风格。

详情

字体风格配置,可用于配置字体类型、字体大小、字体颜色、字体透明度。

  • 业务场景:手动混流场景时,设置文字水印,比如多人连麦直播。

属性

type

type
  • 是否必填:否。
  • 默认值:思源黑体 [ZegoFontTypeSourceHanSans]。

size

size
size: number
  • 是否必填:否。
  • 默认值:24。
  • 取值范围:[12,100] 的整数。

color

color
color: number
  • 是否必填:否。
  • 默认值:16777215(白色)。
  • 取值范围:[0,16777215] 的整数。

transparency

transparency
transparency: number
  • 是否必填:否。
  • 默认值:0。
  • 取值范围:[0,100],0 为不透明,100 为完全透明。

border

border
border: boolean
  • 是否必填:否。
  • 默认值:否。
  • 取值范围:是/否。

borderColor

borderColor
borderColor: number
  • 是否必填:否。
  • 默认值:0。
  • 取值范围:[0,16777215]。

ZegoLabelInfo

文本信息。

详情

文本信息配置,可用于配置文本内容、文本位置、文本风格。

  • 业务场景:手动混流场景时,设置文字水印,比如多人连麦直播。

属性

text

text
text: string
  • 是否必填:是。
  • 取值范围:最大支持显示100个中文字符,300 个英文字符。

left

left
left: number
  • 是否必填:否。
  • 默认值:0。

top

top
top: number
  • 是否必填:否。
  • 默认值:0。

font

font
  • 是否必填:否。

ZegoLocalAduioOptions

ZegoLocalStream媒体流播放音频选项。

属性

enableAutoplayDialog

enableAutoplayDialog
enableAutoplayDialog: boolean

自动播放失败弹窗,默认开启,当出现自动播放失败时,SDK 会弹窗引导用户点击页面,来恢复音视频播放。可设置为 false 关闭。

ZegoLocalProxyConfig

代理服务器的域名和路径配置信息。

详情

代理服务器的域名和路径配置信息。

属性

accesshubProxy

accesshubProxy
accesshubProxy: string

用于中转 SDK 与 ZEGO 后台的信令数据包。格式是$\{域名\}:$\{端口\}/$\{路径\},端口和路径根据代理配置按需填写。

loggerProxy

loggerProxy
loggerProxy: number

设置日志上报代理,用于排查问题,请务必设置该代理。格式是$\{域名\}:$\{端口\}/$\{路径\},端口和路径根据代理配置按需填写。

detaillogProxy

detaillogProxy
detaillogProxy: string

主动上报日志服务,可选参数。格式是$\{域名\}:$\{端口\}/$\{路径\},端口和路径根据代理配置按需填写。

ZegoLocalStreamConfig

createStream 接口的配置参数约束

详情

该类用于约束接口 createStream 的配置参数。

  • 业务场景:创建预览音视频流。
  • 注意事项:camera、screen 和 custom 三个参数在每次调用接口 createStream 时只能选填其中一个。

属性

camera

camera
camera: ZegoCamera

摄像头麦克风采集流相关配置

screen

screen
screen: boolean | ZegoScreen

屏幕捕捉采集流相关配置

custom

custom
custom: ZegoCustom

第三方流采集相关配置

ZegoLocalStreamEvent

ZegoLocalStream媒体流相关事件集合。

详情

描述事件名及其对应的回调参数。

  • 业务场景:用于约束注册事件接口 on 和注销事件接口 off 的参数。

属性

autoplayFailed

autoplayFailed
autoplayFailed: (player: HTMLMediaElement) => void

调用[playVideo]或者[playAudio]播放失败后事件回调。player为播放媒体的audio或者video DOM节点。

canPlayVideo

canPlayVideo
canPlayVideo: (e: Event) => void;

在用户调用[playVideo]后,可以开始播放视频时触发。

canPlayAudio

canPlayAudio
canPlayAudio: (e: Event) => void;

在用户调用[playAudio]后,可以开始播放音频时触发。

autoplayCaptureFailed

autoplayCaptureFailed
autoplayCaptureFailed: (player: HTMLMediaElement) => void

调用[playCaptureVideo]或者[playCaptureAudio]后播放失败的事件回调。player为播放媒体的audio或者video DOM节点。

canPlayCaptureVideo

canPlayCaptureVideo
canPlayCaptureVideo: (e: Event) => void

在用户调用[playCaptureVideo]后,可以开始播放视频时触发。

canPlayCaptureAudio

canPlayCaptureAudio
canPlayCaptureAudio: (e: Event) => void;

在用户调用[playCaptureAudio]后,可以开始播放音频时触发。

videoTrackChanged

videoTrackChanged
videoTrackChanged: (videoTrack: MediaStreamTrack) => void;

本地流视轨更新回调。videoTrackChanged 回调得到的是前处理后的视轨,captureVideoTrackChanged 拿到的是前处理前的采集视轨。

  • 注意事项:如果没有对音视频渲染特殊处理的需求,不建议使用该回调,大部分场景推荐用 ZegoStreamView 进行渲染。

audioTrackChanged

audioTrackChanged
audioTrackChanged: (audioTrack: MediaStreamTrack) => void;

本地流音轨更新回调。audioTrackChanged 回调得到的是前处理后的音轨,captureAudioTrackChanged 拿到的是前处理前的采集音轨。

  • 注意事项:如果没有对音视频渲染特殊处理的需求,不建议使用该回调,大部分场景推荐用 ZegoStreamView 进行渲染。

captureVideoTrackChanged

captureVideoTrackChanged
captureVideoTrackChanged: (videoTrack: MediaStreamTrack) => void;

本地流采集视轨更新回调。videoTrackChanged 回调得到的是前处理后的视轨,captureVideoTrackChanged 拿到的是前处理前的采集视轨。

  • 注意事项:如果没有对音视频渲染特殊处理的需求,不建议使用该回调,大部分场景推荐用 ZegoStreamView 进行渲染。

captureAudioTrackChanged

captureAudioTrackChanged
captureAudioTrackChanged: (audioTrack: MediaStreamTrack) => void;

本地流采集音轨更新回调。audioTrackChanged 回调得到的是前处理后的音轨,captureAudioTrackChanged 拿到的是前处理前的采集音轨。

  • 注意事项:如果没有对音视频渲染特殊处理的需求,不建议使用该回调,大部分场景推荐用 ZegoStreamView 进行渲染。

ZegoLocalViewOptions

本地媒体流播放选项。

属性

mirror

mirror
mirror: boolean

镜像显示,true 为开启,false 为关闭,默认是关闭。

objectFit

objectFit
objectFit: "cover" | "contain" | "fill"

视频画面显示模式,"cover" 为覆盖容器;"contain" 为显示全部内容;"fill" 为拉伸填充。默认是 "contain"。

enableAutoplayDialog

enableAutoplayDialog
enableAutoplayDialog: boolean

自动播放失败弹窗,默认开启,当出现自动播放失败时,SDK 会弹窗引导用户点击页面,来恢复音视频播放。可设置为 false 关闭。

clearLastFrame

clearLastFrame
clearLastFrame: boolean

当视频数据中断时是否去掉最后一帧画面。true 为清除,false 为保留,默认是 true。

ZegoLogConfig

日志配置选项

  • 支持版本:1.0.0

废弃时间:无

属性

logLevel

logLevel
logLevel: 'debug' | 'info' | 'warn' | 'error' | 'report' | 'disable'

本地 log 级别,等级越高,打印日志越少

ZegoMixStreamAdvance

属性

backgroundColor

backgroundColor
backgroundColor: number

混流背景颜色; backgroundColor 为十六进制的 RGB,输入格式必须为 0xRRGGBB00。例如纯白色则传 0xffffff00。

backgroundImage

backgroundImage
backgroundImage: string

混流背景图片; backgroundImage 需要提前在即构后台预设 imageId,输入格式为 preset-id://xxx

videoCodec

videoCodec
videoCodec: 'VP8' | 'H264' | 'H265' | 'vp8' | 'h264' | 'h265';

混流视频编码,'vp8'(string) 或 ' h264' (string),默认 'h264'(string)

userData

userData
userData: Uint8Array

用户自定义数据,长度不超过 1000 字节,设置后拉流方可通过监听 [onPlayerRecvSEI] 的回调获取 SEI 内容。注意必须使用 [ByteBuffer.allocateDirect] 函数创建,否则数据不能传给SDK

ZegoMixStreamConfig

属性

taskID

taskID
taskID: string

混流任务 id(客户自定义,务必保证唯一),必填,最大为256个字符,仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '

inputList

inputList
inputList: ZegoMixStreamInput[]

混流输入流列表

outputList

outputList
outputList: string[] | ZegoMixStreamOutput[]

混流输出流列表

outputConfig

outputConfig

混流输出配置

watermark

watermark
watermark: ZegoWatermark

混流水印

enableSoundLevel

enableSoundLevel
enableSoundLevel: boolean

开启混流音浪回调通知,用于获取混流中每个音频输入的音浪。开启后拉混流时可通过 [mixerSoundLevelUpdate] 回调收到每条单流的声浪信息。 注:小程序拉流暂不支持 [mixerSoundLevelUpdate] 回调。

streamAlignmentMode

streamAlignmentMode
streamAlignmentMode: number

流对齐模式,0 为关闭,1为开启。

whiteboard

whiteboard
whiteboard: ZegoMixerWhiteboard

混流白板输入对象

ZegoMixStreamInput

属性

streamID

streamID
streamID: string

输入流 ID

contentType

contentType
contentType: "VIDEO" | "AUDIO" | "VIDEO_ONLY"

混流内容类型;contentType 取值为'VIDEO'(音视频)、'AUDIO'(纯音频),"VIDEO_ONLY"(纯视频), 默认为'VIDEO'

layout

layout

流在输出画布上的布局,当 contentType 为 “AUDIO” 时 layout 参数可不传。

renderMode

renderMode

渲染模式,0 为填充模式,1 为适应模式。

imageInfo

imageInfo
imageInfo: ZegoMixerImageInfo

用户图片信息。

label

label

文字水印

cornerRadius

cornerRadius
cornerRadius: number

视频画面圆角半径,单位 px。

  • 是否必填:否。
  • 取值范围:不超过 [layout] 参数设置的视频画面的宽高。
  • 默认值:0。

soundLevelID

soundLevelID
soundLevelID: number

混流音浪 ID,用于在 [mixerSoundLevelUpdate] 中找对应输入流的音浪值。

volume

volume
volume: number

输入流音量, 有效范围 [0, 200], 默认是 100。

isAudioFocus

isAudioFocus
isAudioFocus: boolean

当前输入流是否开启焦点语音,开启了会突出此路流的声音。默认 false。

ZegoMixStreamLayout

属性

top

top
top: number

目标位置,上

left

left
left: number

目标位置,左

bottom

bottom
bottom: number

目标位置,下

right
right: number

目标位置,右

ZegoMixStreamOutput

属性

target

target
target: string

混流输出流 ID 或 URL

videoConfig

videoConfig

混流输出视频设置。

ZegoMixStreamOutputConfig

属性

outputBitrate

outputBitrate
outputBitrate: number

混流输出视频码率,kbps 数值 (必须,且大于 0)

outputFPS

outputFPS
outputFPS: number

混流输出视频帧率

outputWidth

outputWidth
outputWidth: number

混流输出视频分辨率宽度

outputHeight

outputHeight
outputHeight: number

混流输出视频分辨率高度

outputAudioCodecID

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

outputAudioBitrate
outputAudioBitrate: number

混流输出音频码率,kbps

outputAudioChannels

outputAudioChannels
outputAudioChannels: 1 | 2

混流输出声道数

audioMixMode

audioMixMode
audioMixMode: ZegoAudioMixMode

多路音频流混音模式。若 [ZegoAudioMixMode] 选择为 [Focused],SDK 将会选择 4 路已设置 [isAudioFocus] 的输入流作为焦点语音突出,若未选择或选择少于 4 路,则会自动补齐 4 路。

ZegoMixerAudioConfig

混流音频配置

详情

配置混流任务的音频码率、声道数、音频编码

属性

bitrate

bitrate
bitrate: number

音频码率,单位为 kbps,默认为 48 kbps,开始混流任务后不能修改

channel

channel
channel: 1 | 2

音频声道,默认为 Mono 单声道

codecID

codecID

音频编码 ID

ZegoMixerImageInfo

混流中单条输入流的图片信息

详情

为单条输入流的内容设置图片,用于替代视频,即当使用图片时不显示视频。图片复用的 [ZegoMixerInput] 中的 layout 布局。

  • 业务场景:开发者在视频连麦过程中,需要暂时关闭摄像头显示图像,或音频连麦时,显示图片等。
  • 支持版本:2.24.0 及以上。
  • 使用限制:图片大小限制在 1M 以内。

属性

url

url
url: string

图片路径,不为空显示图片,否则显示视频。支持 JPG 和 PNG 格式。支持 2 种使用方式:1. URI:将图片提供给 ZEGO 技术支持进行配置,配置完成后会提供图片 URI,例如:preset-id://xxx.jpg。2. URL:仅支持 HTTP 协议。

displayMode

displayMode
displayMode: number

图片显示模式。0:默认值。当 url 不为空时,覆盖视频内容,显示图片。 1:根据摄像头状态,判断是否显示图片。摄像头关闭,显示图片。摄像头打开,显示视频内容(无需手动清空 url 参数)。2:根据输入流是否为空流,判断是否显示图片。输入流连续3秒为空流时,显示图片。判断空流时长默认为3秒,若需额外配置请联系 ZEGO 技术支持。输入流有视频数据时,显示视频内容。

ZegoMixerOutputVideoConfig

详情

配置混流输出的视频参数,编码格式、码率。

  • 业务场景:手动混流场景,比如多人连麦直播。

属性

videoCodecID

videoCodecID
videoCodecID: string

混流输出视频编码格式,支持 H.264, H.265 编码

bitrate

bitrate
bitrate: number

混流输出视频码率,单位为 kbps。默认值为 [ZegoMixStreamOutputConfig] 中配置的 bitrate。

encodeProfile

encodeProfile
encodeProfile: ZegoEncodeProfile

混流输出视频编码规格。默认值为 [ZegoEncodeProfileDefault]。

encodeLatency

encodeLatency
encodeLatency: number

混流输出视频编码延时,有效值范围 [0, 2000], 单位毫秒。默认值为 0。

enableLowBitrateHD

enableLowBitrateHD
enableLowBitrateHD: boolean

开启高清低码,默认值为 false

ZegoOptions

ZegoExpressEngine可选参数

属性

scenario

scenario
scenario: ZegoScenario

房间场景

ZegoPlayAudioStats

属性

audioBitrate

audioBitrate
audioBitrate: number

音频码率

audioCodec

audioCodec
audioCodec: string

音频编码格式"opus"

audioJitter

audioJitter
audioJitter: number

网络抖动

audioLevel

audioLevel
audioLevel: number

音量

audioPacketsLost

audioPacketsLost
audioPacketsLost: number

丢包数

audioPacketsLostRate

audioPacketsLostRate
audioPacketsLostRate: number

丢包率

audioQuality

audioQuality
audioQuality: number

拉流音频质量,-1 表示未知,0 表示 极好,1 表示好,2 表示中等,3 表示 差,4 表示极差

audioSamplingRate

audioSamplingRate
audioSamplingRate: number

采样率

muteState

muteState
muteState: "0" | "1"

音轨是否被关闭

audioFPS

audioFPS
audioFPS: number

音频帧率

audioSendLevel

audioSendLevel
audioSendLevel: number

音频发送能量

googCodecName

googCodecName
googCodecName: string

音频编码格式

audioCumulativeDecodeTime

audioCumulativeDecodeTime
audioCumulativeDecodeTime: number

累计音频解码时长,单位为毫秒 (2.19.0 及以上版本支持)。

audioCumulativeBreakTime

audioCumulativeBreakTime
audioCumulativeBreakTime: number

累计音频卡顿时长,单位为毫秒 (2.19.0 及以上版本支持)。

audioCumulativeBreakRate

audioCumulativeBreakRate
audioCumulativeBreakRate: number

累计音频卡顿率,单位为 1,取值范围 [0,1](2.19.0 及以上版本支持)。

ZegoPlayStats

拉流质量回调详细信息

属性

video

video

视频相关描述

audio

audio

音频相关描述

peerToPeerDelay

peerToPeerDelay
peerToPeerDelay: number | undefined

端到端延迟,单位为 ms。

peerToPeerPacketLostRate

peerToPeerPacketLostRate
peerToPeerPacketLostRate: number | undefined

端到端丢包率,单位 1。(2.13.0 及以前版本单位为 %)

codecImplementationName

codecImplementationName
codecImplementationName: string

具体实现编码器的名称

currentRoundTripTime

currentRoundTripTime
currentRoundTripTime: number

表示当前本端发送到远程对端并返回所需的秒数

googAvailableSendBandwidth

googAvailableSendBandwidth
googAvailableSendBandwidth: string

发送视频数据可用的带宽(谷歌浏览器特有字段,且新版本已废弃)

nackCount

nackCount
nackCount: number

接收端在检测到一个或多个数据包在传输过程中丢失后向发送端发送 NACK 数据包的次数

pliCount

pliCount
pliCount: number

流的接收端向发送端发送 PLI 数据包的次数

sampleTimeWindow

sampleTimeWindow
sampleTimeWindow: number

样本时间窗口

totalRoundTripTime

totalRoundTripTime
totalRoundTripTime: number

发送 STUN 连接和同意检查请求与接收响应之间经过的总秒数

ZegoPlayVideoStats

属性

frameHeight

frameHeight
frameHeight: number

接收视频高

frameWidth

frameWidth
frameWidth: number

接收视频宽

googCodecName

googCodecName
googCodecName: string

视频编码格式

muteState

muteState
muteState: "0"|"1"

视轨是否被关闭

videoBitrate

videoBitrate
videoBitrate: number

视频码率

videoFPS

videoFPS
videoFPS: number

视频解码帧率

videoPacketsLost

videoPacketsLost
videoPacketsLost: number

视频丢包数

videoPacketsLostRate

videoPacketsLostRate
videoPacketsLostRate: number

视频丢包率

videoTransferFPS

videoTransferFPS
videoTransferFPS: number

视频接收帧率

videoQuality

videoQuality
videoQuality: number

拉流视频质量,-1 表示未知,0 表示 极好,1 表示好,2 表示中等,3 表示 差,4 表示极差

videoFramesDecoded

videoFramesDecoded
videoFramesDecoded: number

视频解码总大小

videoFramesDropped

videoFramesDropped
videoFramesDropped: number

当前实际接收的视频帧丢失数

videoCumulativeDecodeTime

videoCumulativeDecodeTime
videoCumulativeDecodeTime: number

累计视频解码时长,单位为毫秒 (2.19.0 及以上版本支持)。

videoCumulativeBreakTime

videoCumulativeBreakTime
videoCumulativeBreakTime: number

累计视频卡顿时长,单位为毫秒 (2.19.0 及以上版本支持

videoCumulativeBreakRate

videoCumulativeBreakRate
videoCumulativeBreakRate: number

累计视频卡顿率,单位为百分比,0.0 ~ 1.0 (2.9.0 及以上版本支持

ZegoPlayerState

拉流状态

属性

streamID

streamID
streamID: string

流id

state

state
state: 'NO_PLAY' | 'PLAY_REQUESTING' | 'PLAYING'

NO_PLAY:未拉流状态,PLAY_REQUESTING:正在请求拉流状态,PLAYING:正在拉流状态

errorCode

errorCode
errorCode: number

错误码

extendedData

extendedData
extendedData: string

扩展信息

ZegoProxyInfo

代理信息。

详情

配置代理信息。

属性

hostName

hostName
hostName: string

域名。云代理下:由 ZEGO 提供的代理域名。

port

port
port: number

代理服务端口号。

ZegoPublishAudioStats

属性

audioBitrate

audioBitrate
audioBitrate: number

音频码率

audioCodec

audioCodec
audioCodec: string

音频编码格式

audioPacketsLost

audioPacketsLost
audioPacketsLost: number

音频丢包数

audioPacketsLostRate

audioPacketsLostRate
audioPacketsLostRate: number

音频丢包率

googCodecName

googCodecName
googCodecName: string

音频编码格式

muteState

muteState
muteState: '0' | '1'

音轨是否被关闭

audioFPS

audioFPS
audioFPS: number

音频帧率

audioQuality

audioQuality
audioQuality: number

推流音频质量,-1 表示未知,0 表示 极好,1 表示好,2 表示中等,3 表示 差,4 表示极差

ZegoPublishStats

属性

video

video

推流视频数据

audio

audio

推流音频数据

codecImplementationName

codecImplementationName
codecImplementationName: string

具体实现编码器的名称

currentRoundTripTime

currentRoundTripTime
currentRoundTripTime: number

表示当前本端发送到远程对端并返回所需的秒数

googActualEncBitrate

googActualEncBitrate
googActualEncBitrate: string

视频编码器实际输出的码率(谷歌浏览器特有字段,且新版本已废弃)

googAvailableSendBandwidth

googAvailableSendBandwidth
googAvailableSendBandwidth: string

发送视频数据可用的带宽(谷歌浏览器特有字段,且新版本已废弃)

googBandwidthLimitedResolution

googBandwidthLimitedResolution
googBandwidthLimitedResolution: string

是否因为宽带受限而降低发送的视频分辨率(谷歌浏览器特有字段,且新版本已废弃)

googCpuLimitedResolution

googCpuLimitedResolution
googCpuLimitedResolution: string

是否因为CPU不足而降低发送的视频分辨率(谷歌浏览器特有字段,且新版本已废弃)

googFrameHeightInput

googFrameHeightInput
googFrameHeightInput: string

发送端设置的分辨率高(谷歌浏览器特有字段,且新版本已废弃)

googFrameRateInput

googFrameRateInput
googFrameRateInput: string

发送端设置的初始帧率(谷歌浏览器特有字段,且新版本已废弃)

googFrameWidthInput

googFrameWidthInput
googFrameWidthInput: string

发送端设置的分辨率宽(谷歌浏览器特有字段,且新版本已废弃)

googTargetEncBitrate

googTargetEncBitrate
googTargetEncBitrate: string

视频编码的目标码率(谷歌浏览器特有字段,且新版本已废弃)

muted

muted
muted: boolean

是否静音

nackCount

nackCount
nackCount: number

接收端在检测到一个或多个数据包在传输过程中丢失后向发送端发送 NACK 数据包的次数

paused

paused
paused: boolean

是否暂停

pliCount

pliCount
pliCount: number

流的接收端向发送端发送 PLI 数据包的次数

qualityLimitationReason

qualityLimitationReason
qualityLimitationReason: string

限制流质量的原因

sinkId

sinkId
sinkId: string

输出的音频设备 ID

totalRoundTripTime

totalRoundTripTime
totalRoundTripTime: number

发送 STUN 连接和同意检查请求与接收响应之间经过的总秒数

volume

volume
volume: number

音量值

ZegoPublishStreamAudioConfig

属性

ANS

ANS
ANS: boolean

是否开启降噪

AGC

AGC
AGC: boolean

是否开启自动增益

AEC

AEC
AEC: boolean

是否开启回声消除

ZegoPublishStreamConfig

属性

width

width
width: number | ConstraintExtend

分辨率宽

height

height
height: number | ConstraintExtend

分辨率高

frameRate

frameRate
frameRate: number | ConstraintExtend

帧率

maxBitrate

maxBitrate
maxBitrate: number

最大码率

videoQuality

videoQuality
videoQuality: number

视频质量等级,默认质量等级为 2

ZegoPublishVideoStats

属性

frameHeight

frameHeight
frameHeight: number

采集视频高

frameWidth

frameWidth
frameWidth: number

采集视频宽

googCodecName

googCodecName
googCodecName: string

视频编码格式

muteState

muteState
muteState: "0"|"1"

视轨是否被关闭

videoBitrate

videoBitrate
videoBitrate: number

视频码率

videoFPS

videoFPS
videoFPS: number

视频编码帧率

videoPacketsLost

videoPacketsLost
videoPacketsLost: number

视频丢包数

videoPacketsLostRate

videoPacketsLostRate
videoPacketsLostRate: number

视频丢包率

videoTransferFPS

videoTransferFPS
videoTransferFPS: number

视频发送帧率

videoQuality

videoQuality
videoQuality: number

推流质量,-1 表示未知,0 表示 极好,1 表示好,2 表示中等,3 表示 差,4 表示极差

isHardwareEncode

isHardwareEncode
isHardwareEncode: boolean

是否开启硬编,true 为开启,false 为关闭,undefined 为未知。

ZegoPublisherState

推流状态

属性

streamID

streamID
streamID: string

流ID

state

state
state: 'PUBLISHING' | 'NO_PUBLISH' | 'PUBLISH_REQUESTING'

NO_PUBLISH:未推流状态,PUBLISH_REQUESTING:正在请求推流状态,PUBLISHING:正在推流状态

errorCode

errorCode
errorCode: number

错误码

extendedData

extendedData
extendedData: string

扩展信息

ZegoRTCEvent

媒体服务相关事件集合

详情

描述事件名及其对应的回调参数。

  • 业务场景:用于约束注册事件接口 on 和注销事件接口 off 的参数。

属性

publishQualityUpdate

publishQualityUpdate
publishQualityUpdate: PublishQualityUpdateCallBack

推流质量回调

publisherStateUpdate

publisherStateUpdate
publisherStateUpdate: PublisherStateUpdateCallBack

推流状态回调

screenSharingEnded

screenSharingEnded
screenSharingEnded: ScreenSharingEndedCallBack

屏幕共享中断回调

playQualityUpdate

playQualityUpdate
playQualityUpdate: PlayQualityUpdateCallBack

拉流质量回调,每次回调间隔3s

streamExtraInfoUpdate

streamExtraInfoUpdate
streamExtraInfoUpdate: StreamExtraInfoUpdateCallBack

接收对端设置的流附加信息

playerStateUpdate

playerStateUpdate
playerStateUpdate: PlayerStateUpdateCallBack

拉流状态回调

remoteCameraStatusUpdate

remoteCameraStatusUpdate
remoteCameraStatusUpdate: RemoteCameraStatusUpdateCallBack

推流端的摄像头状态发生改变时触发

remoteMicStatusUpdate

remoteMicStatusUpdate
remoteMicStatusUpdate: RemoteMicStatusUpdateCallBack

推流端的麦克风状态改变时触发

soundLevelUpdate

soundLevelUpdate
soundLevelUpdate: SoundLevelUpdateCallBack

音浪回调

videoDeviceStateChanged

videoDeviceStateChanged
videoDeviceStateChanged: videoDeviceStateChangedCallBack

监听视频设备状态变化

audioDeviceStateChanged

audioDeviceStateChanged
audioDeviceStateChanged: audioDeviceStateChangedCallBack

监听音频设备状态变化

deviceError

deviceError
deviceError: deviceErrorCallBack

监听设备异常

capturedSoundLevelUpdate

capturedSoundLevelUpdate
capturedSoundLevelUpdate: CapturedSoundLevelUpdateCallBack

本地采集音频声浪回调

playerRecvSEI

playerRecvSEI
playerRecvSEI: PlayerRecvSEICallBack

收到远端流的 SEI 内容

beautyEffectError

beautyEffectError
beautyEffectError: BeautyEffectErrorCallBack

美颜功能发生异常错误。

roomStreamUpdate

roomStreamUpdate
roomStreamUpdate: RoomStreamUpdateCallBack

相同房间内其他用户推的流增加或减少的通知。 收到流删除通知时,开发者可将 extendedData 由字符串转为 json 对象得到 stream_delete_reason 字段,该字段为流删除原因的数组,stream_delete_reason[].code 字段可能为如下值:1(用户主动停止推流); 2(用户心跳超时); 3(用户重复登录); 4(用户被踢出); 5(用户断线); 6(被服务端移除)

exceptionUpdate

exceptionUpdate
web exceptionUpdate: ExceptionUpdateCallBack

监听推拉流的采集、编码解码异常/恢复正常事件通知

屏幕共享流存在采集停止页面以及共享页面无音频情况,所以不建议以 exceptionUpdate 返回的数据作异常参考

networkQuality

networkQuality
web networkQuality: NetworkQualityCallBack

房间内正在推流的用户的网络质量回调

mixerSoundLevelUpdate

mixerSoundLevelUpdate
mixerSoundLevelUpdate: MixerSoundLevelUpdateCallBack

混流中的每条单流的声浪更新通知。

autoMixerSoundLevelUpdate

autoMixerSoundLevelUpdate
autoMixerSoundLevelUpdate: AutoMixerSoundLevelUpdateCallBack

自动混流中的每条单流的声浪更新通知。

backgroundEffectError

backgroundEffectError
backgroundEffectError: BackgroundEffectErrorCallBack

背景虚化、虚拟的功能发生异常错误。

recvExperimentalAPI

recvExperimentalAPI
recvExperimentalAPI: RecvExperimentalAPICallBack

实验性 API 回调

mixerRelayCDNStateUpdate

mixerRelayCDNStateUpdate
mixerRelayCDNStateUpdate: MixerRelayCDNStateUpdateCallBack

混流转推 CDN 状态回调

playerVideoTrackUpdate

playerVideoTrackUpdate
playerVideoTrackUpdate: PlayerTrackUpdateCallBack

拉流的视轨发生改变时触发。 使用场景:当需要单独拿拉流得到的视轨进行视频渲染处理时使用。大部分场景都可以用 ZegoStreamView 渲染音视频,不推荐使用该事件回调。

playerAudioTrackUpdate

playerAudioTrackUpdate
playerAudioTrackUpdate: PlayerTrackUpdateCallBack

拉流的音轨发生改变时触发。 使用场景:当需要单独拿拉流得到的音轨进行音频渲染处理时使用。大部分场景都可以用 ZegoStreamView 渲染音视频,不推荐使用该事件回调。

publisherVideoEncoderChanged

publisherVideoEncoderChanged
publisherVideoEncoderChanged: PublisherVideoEncoderChangedCallBack

推流编码更新回调。

  • 业务场景:当推流设置了enableAutoSwitchVideoCodec为true 且内部发生了编码切换时触发。

方法

BackgroundEffectErrorCallBack

BackgroundEffectErrorCallBack
BackgroundEffectErrorCallBack(stream: MediaStream, errorCode: number, extendedData: string): void
背景虚化、虚拟功能发生异常错误时触发事件。
名称类型描述
streamMediaStream开启背景虚化、虚拟功能对应的媒体流对象。
errorCodenumber错误码。
extendedDatastring错误描述信息。

MixerRelayCDNStateUpdateCallBack

MixerRelayCDNStateUpdateCallBack
MixerRelayCDNStateUpdateCallBack(taskID: string, infoList: Array<ZegoStreamRelayCDNInfo>): void
混流转推 CDN 状态更新通知。
名称类型描述
taskIDstring混流任务 ID。
infoListArray<ZegoStreamRelayCDNInfo>当前 CDN 正在混流的信息列表。

RecvExperimentalAPICallBack

RecvExperimentalAPICallBack
RecvExperimentalAPICallBack(content: Object): void
接收实验性 API 回调,请在 ZEGO 技术支持的帮助下使用此功能
名称类型描述
contentObject回调的内容,JSON 对象。

ExceptionUpdateCallBack

ExceptionUpdateCallBack
ExceptionUpdateCallBack(streamID: string, eventData: ExceptionData): void
推拉流采集、编码解码异常事件或恢复正常事件回调。
名称类型描述
streamIDstring流媒体ID
eventDataExceptionData

PlayerRecvSEICallBack

PlayerRecvSEICallBack
PlayerRecvSEICallBack(streamID: string, data: Uint8Array): void
收到远端流的 SEI 内容<br/>拉流成功后,当远端流调用 sendSEI 后,本端会收到此回调<br/>若只拉纯音频流,将收不到推流端发送的 SEI 信息
名称类型描述
streamIDstring流 ID
dataUint8ArraySEI 内容

BeautyEffectErrorCallBack

BeautyEffectErrorCallBack
BeautyEffectErrorCallBack(stream: MediaStream, errorCode: number, extendedData: string): void
美颜功能发生异常错误时触发事件。
名称类型描述
streamMediaStream开启美颜功能对应的媒体流对象。
errorCodenumber错误码。
extendedDatastring错误描述信息。

PublishQualityUpdateCallBack

PublishQualityUpdateCallBack
PublishQualityUpdateCallBack(streamID: string, stats: ZegoPublishStats): void
订阅推流质量回调

参数

名称类型描述
streamIDstring推流流ID
statsZegoPublishStats推流质量描述

详情

订阅推流质量回调

触发条件:推流成功后

限制频率:无

关注回调:无

重点提示:每 3 秒回调一次

  • 支持版本:1.0.0

废弃时间:无

PublisherStateUpdateCallBack

PublisherStateUpdateCallBack
PublisherStateUpdateCallBack(result: ZegoPublisherState): void
推流状态回调

参数

名称类型描述
resultZegoPublisherState推流状态结果

详情

推流的状态通知,推流是异步过程,中间的状态切换都通过该接口回调。监听该回调,对重试依旧不能成功的情况,做错误日志收集,提示客户

触发条件:开始推流后

限制频率:无

关注回调:无

重点提示:必须在推流前监听

  • 支持版本:1.0.0

废弃时间:无

ScreenSharingEndedCallBack

ScreenSharingEndedCallBack
ScreenSharingEndedCallBack(mediaStream: MediaStream): void
屏幕共享中断回调

参数

名称类型描述
mediaStreamMediaStream创建屏幕共享流得到的流对象

详情

监听因为点击系统停止按钮,或者关闭捕捉进程等导致的屏幕共享流被动关闭

触发条件:屏幕共享后点击系统停止或者关闭捕捉进程等

限制频率:无

重点提示:必须在屏幕共享前监听

  • 支持版本:1.0.0

废弃时间:无

NetworkQualityCallBack

NetworkQualityCallBack
NetworkQualityCallBack(userID: string, upstreamQuality: QualityGrade, downstreamQuality: QualityGrade): void
房间内正在推流的用户的网络质量回调。

参数

名称类型描述
userIDstring用户ID,本端用户为空,对端用户不为空
upstreamQualityQualityGrade上行网络质量等级,0 到 4 分别是由好到坏,-1 为未知。
downstreamQualityQualityGrade下行网络质量等级,0 到 4 分别是由好到坏,-1 为未知。

详情

房间内正在推流的用户的网络质量回调。

触发条件:流质量开始更新。

限制频率:无

重点提示:需要在推拉流前绑定。

  • 支持版本:2.24.0

    废弃时间:无

MixerSoundLevelUpdateCallBack

MixerSoundLevelUpdateCallBack
MixerSoundLevelUpdateCallBack(soundLevels: Map<number, number>): void
混流中的每条单流的声浪更新通知。

参数

名称类型描述
soundLevelsMap<number, number>混流中每条单流的声浪键值对,key 为每条单流的 soundLevelID,value 为对应的单流的声浪值。取值范围:value 的取值范围为 0.0 ~ 100.0。

详情

开发者可根据此回调在观众拉混流的 UI 界面显示哪条流的主播在说话的效果。

  • 业务场景:常用于需要多个视频画面合成一个视频时使用混流,比如教育类,直播老师和学生的画面。

    触发条件:开发者调用 [startPlayingStream] 函数并且拉流选项开启接收 SEI,开始拉混流后触发回调,回调通知周期为 100 ms。

  • 支持版本:3.0.0

    废弃时间:无

  • 注意事项:该功能需要联系技术支持开通混流服务端相应功能配置。

AutoMixerSoundLevelUpdateCallBack

AutoMixerSoundLevelUpdateCallBack
AutoMixerSoundLevelUpdateCallBack(soundLevels: soundLevels: Map<string, number>): void
自动混流中的每条单流的声浪更新通知。

参数

名称类型描述
soundLevelssoundLevels: Map<string, number>混流中每条单流的声浪键值对,key 为每条单流的 streamID,value 为对应的单流的声浪值,value 的取值范围为 0.0 ~ 100.0。

详情

开发者可根据此回调在观众拉混流的 UI 界面显示哪条流的主播在说话的效果。

  • 业务场景:常用于需要多个视频画面合成一个视频时使用混流,比如教育类,直播老师和学生的画面。

    触发条件:开发者调用 [startPlayingStream] 函数并且拉流选项开启接收 SEI,开始拉混流后触发回调,回调通知周期为 100 ms。

  • 支持版本:3.0.0

    废弃时间:无

  • 注意事项:该功能需要联系 ZEGO 技术支持开通混流服务端相应功能配置。

RoomStreamUpdateCallBack

RoomStreamUpdateCallBack
RoomStreamUpdateCallBack(roomID: string, updateType: 'DELETE' | 'ADD', streamList: ZegoStreamList[], extendedData: string): void
监听已登录房间内其他用户流的变化(增加,删除)

参数

名称类型描述
roomIDstring房间ID
updateType'DELETE' | 'ADD'DELETE:流删除,ADD:流新增
streamListZegoStreamList[]更新流列表,数组顺序是以服务器接收到的时间进行排序。
extendedDatastring扩展信息

详情

监听已登录房间内其他用户流的变化(增加,删除)

触发条件:房间内其他用户有流新增或删除

限制频率:无

重点提示:需要在登录房间前调用

  • 支持版本:1.0.0

废弃时间:无

PlayQualityUpdateCallBack

PlayQualityUpdateCallBack
PlayQualityUpdateCallBack(streamID: string, stats: ZegoPlayStats): void
拉流质量回调,拉流成功后开始触发

参数

名称类型描述
streamIDstring流 ID
statsZegoPlayStats拉流质量回调信息

详情

订阅拉流质量回调

触发条件:拉流成功后

限制频率:无

关注回调:无

重点提示:每 3 秒回调一次

  • 支持版本:1.0.0

废弃时间:无

StreamExtraInfoUpdateCallBack

StreamExtraInfoUpdateCallBack
StreamExtraInfoUpdateCallBack(roomID: string, streamList: { streamID: string; user: ZegoUser; extraInfo: string }[]): void
流附加消息变化时回调

参数

名称类型描述
roomIDstring房间ID
streamList{ streamID: string; user: ZegoUser; extraInfo: string }[]流信息

详情

接收对端设置的流附加信息

触发条件:流附加消息更新

  • 支持版本:1.0.0

废弃时间:无

PlayerStateUpdateCallBack

PlayerStateUpdateCallBack
PlayerStateUpdateCallBack(result: ZegoPlayerState): void
拉流状态发生变化时回调

参数

名称类型描述
resultZegoPlayerState拉流状态结果

详情

拉流的状态通知,拉流是异步过程,中间的状态切换都通过该接口回调。监听该回调,对重试依旧不能成功的情况,做错误日志收集,提示客户

触发条件:开始拉流后

限制频率:无

关注回调:无

重点提示:必须在拉流前监听

  • 支持版本:1.0.0

废弃时间:无

RemoteMicStatusUpdateCallBack

RemoteMicStatusUpdateCallBack
RemoteMicStatusUpdateCallBack(streamID: string, status: 'OPEN' | 'MUTE'): void
拉流麦克风状态回调
名称类型描述
streamIDstring流 ID
status'OPEN' | 'MUTE'所拉流的麦克风状态 'OPEN'表示开启 'MUTE'表示关闭

SoundLevelUpdateCallBack

SoundLevelUpdateCallBack
SoundLevelUpdateCallBack(soundLevelList: ZegoSoundLevelInfo[]): void
推拉流音浪回调,该接口目前不兼容safari
名称类型描述
soundLevelListZegoSoundLevelInfo[]声浪信息列表,包括流id,声浪大小,及流状态

PlayerTrackUpdateCallBack

PlayerTrackUpdateCallBack
PlayerTrackUpdateCallBack(streamID: string, track: MediaStreamTrack): void
拉流视轨更新回调
名称类型描述
streamIDstring流 ID
trackMediaStreamTrackstreamID 对应的拉流上的音轨或视轨。

PublisherVideoEncoderChangedCallBack

PublisherVideoEncoderChangedCallBack
PublisherVideoEncoderChangedCallBack(fromCodecID: ZegoVideoCodecID, toCodecID: ZegoVideoCodecID, streamID: string): void
推流视频编码变更回调
名称类型描述
fromCodecIDZegoVideoCodecID原始视频编码
toCodecIDZegoVideoCodecID变更后的视频编码
streamIDstring流 ID

RemoteCameraStatusUpdateCallBack

RemoteCameraStatusUpdateCallBack
RemoteCameraStatusUpdateCallBack(streamID: string, status: 'OPEN' | 'MUTE' ): void
拉流摄像头状态回调
名称类型描述
streamIDstring流 ID
status'OPEN' | 'MUTE'所拉流的摄像头状态 'OPEN'表示开启 'MUTE'表示关闭

videoDeviceStateChangedCallBack

videoDeviceStateChangedCallBack
videoDeviceStateChangedCallBack(updateType: 'DELETE' | 'ADD', deviceInfo: { deviceName: string; deviceID: string; }): void
视频设备状态变化更新回调

参数

名称类型描述
updateType'DELETE' | 'ADD''DELETE' 为设备被移除, 'ADD'表示设备增加
deviceInfo{ deviceName: string; deviceID: string; }设备信息,deviceName为设备名称,deviceID为设备ID

详情

监测到系统中有视频设备添加或移除时,会触发此回调。通过监听此回调,用户可在必要的时候更新使用特定设备进行视频采集。

触发条件:视频设备添加或移除时触发

限制频率:无

关注回调:无

重点提示: 需要浏览器授权麦克风摄像头后才能触发回调; 由于设备和浏览器的限制,部分浏览器在使用某些设备时可能不会触发该回调

  • 支持版本:1.16.0

废弃时间:无

audioDeviceStateChangedCallBack

audioDeviceStateChangedCallBack
audioDeviceStateChangedCallBack(updateType: 'DELETE' | 'ADD', deviceType: 'Input' | 'Output', deviceInfo: {deviceName: string; deviceID: string; }): void
音频设备状态变化回调

参数

名称类型描述
updateType'DELETE' | 'ADD''DELETE' 表示设备删除, 'ADD'表示设备增加
deviceType'Input' | 'Output''Input'表示输入设备, 'Output'表示输出设备
deviceInfo{deviceName: string; deviceID: string; }设备信息

详情

监测到系统中有音频设备添加或移除时,会触发此回调。通过监听此回调,用户可在必要的时候更新使用特定设备进行音频采集。

触发条件:音频设备添加或移除时触发

限制频率:无

关注回调:无

重点提示: 需要浏览器授权麦克风摄像头后才能触发回调; 由于设备和浏览器的限制,部分浏览器在使用某些设备时可能不会触发该回调

  • 支持版本:1.16.0

废弃时间:无

deviceErrorCallBack

deviceErrorCallBack
deviceErrorCallBack(errorCode: number, deviceName: string): void
设备异常回调

参数

名称类型描述
errorCodenumber错误码
deviceNamestring发生异常的设备名称

详情

当本地推流的音频或视频设备读写出现异常时会触发此回调

触发条件:推流使用的音视频设备出现异常(如松动时)触发

限制频率:无

关注回调:无

重点提示: 推流后才可能触发; 由于设备和浏览器的限制,部分浏览器在使用某些设备时可能不会触发该回调

  • 支持版本:1.16.0

废弃时间:无

CapturedSoundLevelUpdateCallBack

CapturedSoundLevelUpdateCallBack
CapturedSoundLevelUpdateCallBack(soundLevel: number): void
本地采集音频声浪回调,该接口目前不兼容 safari
名称类型描述
soundLevelnumber本地采集的声浪值,取值范围为 0.0 ~ 100.0 。

ZegoRTMEvent

信令服务相关事件集合

详情

描述事件名及其对应的回调参数。

  • 业务场景:用于约束注册事件接口 on 和注销事件接口 off 的参数。

属性

roomUserUpdate

roomUserUpdate
roomUserUpdate: RoomUserUpdateCallBack

当房间用户发生变化时触发的回调

roomStateUpdate

roomStateUpdate
roomStateUpdate: RoomStateUpdateCallBack

房间和服务器之间的连接状态发生变化时触发的回调,2.16.0 及以上版本建议使用 roomStateChanged。

roomOnlineUserCountUpdate

roomOnlineUserCountUpdate
roomOnlineUserCountUpdate: RoomOnlineUserCountUpdateCallBack

房间内人数发生改变时触发

IMRecvBroadcastMessage

IMRecvBroadcastMessage
IMRecvBroadcastMessage: IMRecvBroadcastMessageCallBack

房间消息通知

IMRecvBarrageMessage

IMRecvBarrageMessage
IMRecvBarrageMessage: IMRecvBarrageMessageCallBack

房间弹幕消息通知

IMRecvCustomCommand

IMRecvCustomCommand
IMRecvCustomCommand: IMRecvCustomCommandCallBack

自定义信令通知

roomExtraInfoUpdate

roomExtraInfoUpdate
roomExtraInfoUpdate: roomExtraInfoUpdateCallBack

监听房间附加消息通知

tokenWillExpire

tokenWillExpire
tokenWillExpire: tokenWillExpireCallBack

token 过期时间少于30s时会触发

roomStateChanged

roomStateChanged
roomStateChanged: RoomStateChangedCallBack

当房间的连接状态改变时触发该回调,并通知改变的原因。2.16.0 及以上版本推荐使用 roomStateChanged 回调来替代 roomStateUpdate 回调监听房间状态变化。

  • 业务场景:开发者可以通过这个回调来判断房间内当前用户的状态。开发者调用房间相关函数 (参考 “相关接口”) 时会收到此通知。用户设备的网络情况变化时也可能收到此通知(SDK 在断线时会自动重新登录房间,详情请参考 SDK 是否支持断线重连机制?)。
  • 隐私保护声明:提醒用户尽量不要在某些参数(例如userName、userID)传入涉及个人隐私的敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。
  • 注意事项:若长时间处于正在请求连接状态 LOGINING,一般是因为用户端网络不稳定导致。

方法

RoomUserUpdateCallBack

RoomUserUpdateCallBack
RoomUserUpdateCallBack(roomID: string, updateType: 'DELETE' | 'ADD', userList: ZegoUser[]): void
房间用户变化回调

参数

名称类型描述
roomIDstring发生用户变化房间的ID
updateType'DELETE' | 'ADD'用户行为,DELETE 表示离开,ADD 表示进入
userListZegoUser[]发生变化用户的具体信息

详情

当前登录的房间,如果用户发生新增,删除等,触发回调通知当前用户

触发条件:其他用户登录,退出时触发

限制频率:无

关注回调:无

重点提示:触发前提是登录时,设置了关注用户变化,即 loginRoom 的参数 config 的 userUpdate 设置为 true

  • 支持版本:1.0.0

废弃时间:无

RoomStateUpdateCallBack

RoomStateUpdateCallBack
RoomStateUpdateCallBack(roomID: string, state: 'DISCONNECTED' | 'CONNECTING' | 'CONNECTED', errorCode: number, extendedData: string): void
房间状态更新回调

参数

名称类型描述
roomIDstring房间ID
state'DISCONNECTED' | 'CONNECTING' | 'CONNECTED'DISCONNECTED: 登出房间或房间和服务器断开,并重试后仍旧失败。
CONNECTING: 断开并开始重连。
CONNECTED: 登录成功或重连成功。
errorCodenumber断开时候的具体错误码
extendedDatastring扩展信息

详情

房间连接状态回调,state 分别为'DISCONNECTED','CONNECTING','CONNECTED'

触发条件:登录房间、登出房间或断网重连等情况触发。

限制频率:无

重点提示:登录前注册才会收到回调,2.16.0 及以上版本建议使用 roomStateChanged。

  • 支持版本:1.0.0

废弃时间:无

RoomStateChangedCallBack

RoomStateChangedCallBack
RoomStateChangedCallBack(roomID: string, reason: ZegoRoomStateChangedReason, errorCode: number, extendedData: string): void
房间状态变化更新回调

参数

名称类型描述
roomIDstring房间ID
reasonZegoRoomStateChangedReason房间状态改变原因
errorCodenumber断开时候的具体错误码
extendedDatastring扩展信息

详情

房间连接状态回调,state 分别为'LOGINING','LOGINED','LOGIN_FAILED' ,'RECONNECTING','RECONNECTED','RECONNECT_FAILED','KICKOUT','LOGOUT','LOGOUT_FAILED'

触发条件:在断开连接,重试连接及重连成功时触发

限制频率:无

重点提示:登录前注册才会收到回调

  • 支持版本:2.16.0

废弃时间:无

RoomOnlineUserCountUpdateCallBack

RoomOnlineUserCountUpdateCallBack
RoomOnlineUserCountUpdateCallBack(roomID: string, count: number): void
房间内当前在线用户数量回调

参数

名称类型描述
roomIDstring发生用户变化房间的ID
countnumber当前在线用户数量

详情

回调当前房间内的在线人数

触发条件:用户成功登录房间时触发,成功登录后每30s触发一次

重点提示:无

  • 支持版本:1.11.0

废弃时间:无

IMRecvBroadcastMessageCallBack

IMRecvBroadcastMessageCallBack
IMRecvBroadcastMessageCallBack(roomID: string, chatData: ZegoBroadcastMessageInfo[]): void
房间消息通知
名称类型描述
roomIDstring房间ID
chatDataZegoBroadcastMessageInfo[]房间消息信息

IMRecvBarrageMessageCallBack

IMRecvBarrageMessageCallBack
IMRecvBarrageMessageCallBack(roomID: string, messageInfo: ZegoBarrageMessageInfo[]): void
房间弹幕消息通知
名称类型描述
roomIDstring房间ID
messageInfoZegoBarrageMessageInfo[]弹幕消息信息

IMRecvCustomCommandCallBack

IMRecvCustomCommandCallBack
IMRecvCustomCommandCallBack(roomID: string, fromUser: ZegoUser, command: string): void
自定义信令通知
名称类型描述
roomIDstring房间ID
fromUserZegoUser发送消息用户信息
commandstring收到的自定义消息

roomExtraInfoUpdateCallBack

roomExtraInfoUpdateCallBack
roomExtraInfoUpdateCallBack(roomID: string, roomExtraInfoList: ZegoRoomExtraInfo[]): void
房间额外消息更新回调
名称类型描述
roomIDstring房间ID
roomExtraInfoListZegoRoomExtraInfo[]房间附加消息数组

tokenWillExpireCallBack

tokenWillExpireCallBack
tokenWillExpireCallBack(roomID: string): void
token将要过期回调

参数

名称类型描述
roomIDstringtoken将要过期房间的ID

详情

token 将要过期通知, 收到通知后请主动调用renewToken更新token

触发条件:token 中包含过期时间前30s触发该回调

限制频率:无

关注接口:renewToken

重点提示:token过期时间取自token, 请确保生成token的服务器时间准确

  • 支持版本:2.6.0

废弃时间:无

ZegoRangeAudioEvent

范围语音功能相关事件集合。

详情

描述事件名及其对应的回调参数。

  • 业务场景:用于约束注册事件接口 on 和注销事件接口 off 的参数。

属性

microphoneStateUpdate

microphoneStateUpdate
microphoneStateUpdate: MicrophoneStateUpdateCallBack

麦克风状态更新事件。

publishQualityUpdate

publishQualityUpdate

音频发送质量。

playQualityUpdate

playQualityUpdate

音频接收质量。

aiDenoiseError

aiDenoiseError
aiDenoiseError: AiDenoiseErrorCallBack

AI 降噪功能错误回调。

audioSourceWithinRangeUpdate

audioSourceWithinRangeUpdate
audioSourceWithinRangeUpdate: AudioSourceWithinRangeUpdateCallBack

范围内用列表回调

方法

AudioSourceWithinRangeUpdateCallBack

AudioSourceWithinRangeUpdateCallBack
AudioSourceWithinRangeUpdateCallBack(userID: string, position: number[]): void
详情描述:范围内用户回调。
名称类型描述
userIDstring用户 ID
positionnumber[]位置信息

MicrophoneStateUpdateCallBack

MicrophoneStateUpdateCallBack
MicrophoneStateUpdateCallBack(state: ZegoRangeAudioMicrophoneState, errorCode: number, extendedData?: string): void
麦克风和音频上行状态更新回调

参数

名称类型描述
stateZegoRangeAudioMicrophoneState麦克风更新状态
errorCodenumber错误码
extendedDatastring描述信息

详情

麦克风和音频上行的状态通知,开启发送音频是异步过程,中间的状态切换都通过该接口回调。

触发条件:调用 ZegoExpressRangeAudio 的 enableMicrophone 接口。

重点提示:必须在 enableMicrophone 接口调用前监听。

  • 支持版本:2.10.0

RangeAudioPlayQualityUpdateCallBack

RangeAudioPlayQualityUpdateCallBack
RangeAudioPlayQualityUpdateCallBack(userID: string, stats: RangeAudioPlayStats): void
音频接收质量。

参数

名称类型描述
userIDstring用户 ID。
statsRangeAudioPlayStats音频接收质量相关指标集合。

详情

音频下行的质量通知。

触发条件:调用 ZegoExpressRangeAudio 的 enableMicrophone 接口。

  • 支持版本:2.20.0

RangeAudioPublishQualityUpdateCallBack

RangeAudioPublishQualityUpdateCallBack
RangeAudioPublishQualityUpdateCallBack(userID: string, stats: RangeAudioPublishStats): void
音频发送质量。

参数

名称类型描述
userIDstring用户 ID。
statsRangeAudioPublishStats音频发送质量相关指标集合。

详情

音频上行的质量通知。

触发条件:调用 ZegoExpressRangeAudio 的 enableMicrophone 接口。

  • 支持版本:2.20.0

AiDenoiseErrorCallBack

AiDenoiseErrorCallBack
AiDenoiseErrorCallBack(errorCode: number, extendedData: string): void
AI 降噪错误回调。

参数

名称类型描述
errorCodenumber错误码。
extendedDatastring错误描述信息。

详情

AI 降噪错误回调。

触发条件:调用 ZegoExpressRangeAudio 的 enableAiDenoise 或 enableMicrophone 接口使用 AI 降噪功能出现异常。

  • 支持版本:2.21.0

ZegoRangeAudioUserUpdateCheckConfig

详情

检查范围内用户变更配置。

属性

frequency

frequency
frequency: number

检查范围内用户变更的频率。

ZegoRoomConfig

房间相关配置

属性

userUpdate

userUpdate
userUpdate: boolean

设置 roomUserUpdate 是否回调,默认为 false 不回调

maxMemberCount

maxMemberCount
maxMemberCount: number

房间最大用户数量,传 0 视为不限制,默认无限制; 只有第一个登录房间的用户设置生效

ZegoRoomExtraInfo

属性

key

key
key: string

房间附加消息的键

value

value
value: string

房间附加消息的值

updateUser

updateUser
updateUser: ZegoUser

更新房间附加消息的用户

updateTime

updateTime
updateTime: number

房间附加消息的更新时间

ZegoRoomRecvTransparentMessage

收到房间的透传消息

属性

sendUser

sendUser
sendUser: ZegoUser

发送的用户

content

content
content: Uint8Array

收到的消息内容

ZegoRoomSendTransparentMessage

房间透传消息

详情

房间透传消息,包括房间id, 消息内容,发送用户,发送类型,发送模式,超时时间。

属性

sendMode

sendMode

发送模式

sendType

sendType

发送类型

content

content
content: Uint8Array

发送的内容

recvUserList

recvUserList
recvUserList: ZegoUser[]

消息接收者列表,当sendType 指定为ZegoRoomTransparentMessageModeOnlyServer 可不填。当指定为 ZegoRoomTransparentMessageModeClientAndServer 或 ZegoRoomTransparentMessageModeOnlyClient 时,为空将发送给房间所有在线用户。

timeOut

timeOut
timeOut: number

消息的发送超时时间,单位s, 默认10s。

ZegoSEIConfig

  • 支持版本:2.16.0

属性

unregisterSEIFilter

unregisterSEIFilter
unregisterSEIFilter: string

采用 H.264 的 SEI (nalu type = 6,payload type = 5) 类型打包,因为视频编码器自身会产生 payload type 为 5 的 SEI,或者使用视频文件推流时,视频文件中也可能存在这样的 SEI,所以使用此类型时,用户需要把 uuid + content 当作 buffer 塞给 SEI 发送接口;此时为了区别视频编码器自身产生的 SEI, App 在发送此类型 SEI 时,可以填写业务特定的 uuid(uuid长度为16字节),接收方使用 SDK 解析 payload type 为 5 的 SEI 时,会根据设置的过滤字符串过滤出 uuid 相符的 SEI 抛给业务,如果没有设置过滤字符串,SDK 会把所有收到的 SEI 都抛给开发者。

  • 业务场景:发送 SEI,采用 H.264 的 SEI (nalu type = 6,payload type = 5) 类型打包 。

SEIPass

SEIPass
SEIPass: boolean

放开对 payloadType 为 5 的 SEI 内容收发限制。 对于 payloadType 为 5 的 SEI 内容,当参数值设为 true 切 没有设置 unregisterSEIFilter,则放开所有 SEI 的发送和接收;当参数值设为 false 时(默认值),则只发送和接收符合 unregisterSEIFilter 的 SEI。

emulationPreventionByte

emulationPreventionByte
emulationPreventionByte: boolean

SEI 开关防竞争码处理开关,默认值是 false,即关闭状态。 在发送 SEI 二进制数据中可能有与 H264 中 NALU 的分片开头标识符相同,导致 NALU 切片出现错误。因此 ZegoSEIConfig 新增 emulationPreventionByte 属性 SEI 开关防竞争码处理,即将 SEI 数据中与标识符相同的内容进行编码后,再发送出去,由拉流端接收时进行解码,可有效避免该情况的出现。

ZegoScreen

创建屏幕共享媒体流相关参数约束

详情

该类用于约束接口 createStream 的参数 source.screen。

  • 业务场景:创建屏幕共享媒体流。
  • 注意事项:当 videoQuality 为 4 时,camera 增加 width / height / frameRate / bitrate 属性,这几个参数只支持正整数,必须要把这四个属性也传递给 SDK。

属性

audio

audio
audio: boolean

是否需要音频,默认为 false

videoQuality

videoQuality
videoQuality: 1|2|3|4

一般而言,屏幕共享视频质量的选择要根据实际情况和场景来确定,screen 中的 videoQuality 提供三种预设值:

1:帧率较大,适合对流畅度要求较高的场景。 2:适合在流畅度和清晰度之间取得平衡的场景。 3:码率较大,适合对清晰度要求较高的场景。 除了以上三种预设值,videoQuality 还提供一种自定义取值 4,可自定义帧率、码率,screen 增加 frameRate / bitrate 属性,使用时需要把这两个属性也传递给 SDK。

视频质量等级,默认质量等级为 2 1 帧率:20 码率: 800K 2 帧率:15 码率: 1500K 3 帧率:5 码率: 2000K 4 帧率

码率: bitrate(k)

width

width
width: number | ConstraintExtend

分辨率宽

height

height
height: number | ConstraintExtend

分辨率高

bitrate

bitrate
bitrate: number

码率

frameRate

frameRate
frameRate: number | ConstraintExtend

帧率

bitRate

bitRate
bitRate: number

码率(旧写法,建议使用 bitrate)

startBitrate

startBitrate
startBitrate: "default" | "target"

开始码率,默认为 “default”,环境要求:谷歌内核浏览器及 2.7.0 以上版本的 SDK 。 值为 “default” 表示使用 webrtc 默认开始码率 300kbps 然后慢慢上升;值为 “target” 表示快速上升到已设置的目标码率。

videoOptimizationMode

videoOptimizationMode
videoOptimizationMode: "default" | "motion" | "detail"

视频优化模式,默认为 “default“ ; 值为 “motion” 表示流畅模式,在大多数情况下,SDK 不会降低帧率,但是可能会降低发送分辨率。 值为 ”detail“ 表示清晰模式,在大多数情况,SDK 不会降低发送分辨率,但是可能会降低帧率

sourceID

sourceID
sourceID: string

指定屏幕共享画面 ID , 仅限chrome 内核浏览器使用

minBitrate

minBitrate
minBitrate: number

推流码率最小值。当网络较差的时候可接受的视频质量下降码率的最小值。

  • 业务场景:期望视频持续高质量则把 minBitrate设置为接近目标码率的值。视频质量要求不高的推流可以把 minBitrate 设置得较低。
  • 默认值:默认最小码率是目标码率的 60%。

keyFrameInterval

keyFrameInterval
keyFrameInterval: number

视频关键帧间隔时长,单位秒。屏幕共享可以通过调大关键帧的间隔时长以减少视频编码性能压力。

  • 默认值:2 秒。
  • 取值范围:[2, 6]。

ANS

ANS
ANS: boolean

是否开启降噪,默认关闭。

AGC

AGC
AGC: boolean

是否开启自动增益,默认关闭。

AEC

AEC
AEC: boolean

是否开启回声消除,默认开启。

ZegoServerResponse

属性

errorCode

errorCode
errorCode: number

返回错误码,为 0 则是成功

extendedData

extendedData
extendedData: string

扩展信息

ZegoSnapshotOptions

截图相关配置选项

属性

imageType

imageType
imageType: string

图片格式,支持 png 和 jpeg,默认为png。

  • 业务场景:指定截图的图片格式。

quality

quality
quality: number

图片质量,0-1,默认1。

  • 业务场景:指定截图的图片质量。

save

save
save: boolean

是否把截图保存下载到本地文件。

fileName

fileName
fileName: string

保存文件的名称,只在 save 设置为 true 时生效。

ZegoSongLineScoreInfo

歌曲每行打分完成信息。

属性

lineIndex

lineIndex
lineIndex: number

行的索引。

previousScore

previousScore
previousScore: number

打分完成这一句分数。

averageScore

averageScore
averageScore: number

平均分。

totalScore

totalScore
totalScore: number

总分。

ZegoSoundLevelInfo

音浪信息

属性

streamID

streamID
streamID: string

流ID

soundLevel

soundLevel
soundLevel: number

音浪大小,取值范围 [0,100],通常一个人正常说话时麦克风音浪会波动到 10 以上。

type

type
type: "push" | "pull"

用于区分推拉流,“push” 表示推流,“pull” 表示拉流。

ZegoStartScoreParams

开始打分相关参数。

属性

resourceID

resourceID
resourceID: string

伴奏或高潮片段对应的资源 ID。

localStream

localStream
localStream: MediaStream

采集麦克风声音的媒体流对象。

player

player
player: HTMLMediaElement

播放伴奏的 h5 播放器。

enableSongLineScoreCompleteEvent

enableSongLineScoreCompleteEvent
enableSongLineScoreCompleteEvent: boolean

开启每行打分完成回调。

ZegoStreamCompositorInputOption

本地混流输入流配置

属性

layout

layout

图层的布局项

objectFit

objectFit
objectFit: string

视频或图片内容适应所在图层的方式,有 "cover" | "contain" | "fill"

contentType

contentType
contentType: string

输入流的混合类型,"VIDEO" | "AUDIO" | "ALL"

volume

volume
volume: number

输入流的输出音量,[0, 100]

ZegoStreamCompositorLayoutOption

本地混流输入流配置

属性

x

x
x: number

输入的图层左上角相对于画布左上角的横向位移

y

y
y: number

输入的图层左上角相对于画布左上角的纵向位移。

width

width
width: number

图层的宽度 (px)

height

height
height: number

图层的高度 (px)

zOrder

zOrder
zOrder: number

图层的层级

ZegoStreamCompositorOutputConfig

本地混流输出流配置

属性

width

width
width: number

输出宽

height

height
height: number

输出高

frameRate

frameRate
frameRate: number

输出帧率

bitrate

bitrate
bitrate: number

输出码率

ZegoStreamList

流信息

属性

streamID

streamID
streamID: string

流 ID

user

user
user: ZegoUser

流对应的用户

extraInfo

extraInfo
extraInfo: string

流附加信息

urlsFLV

urlsFLV
urlsFLV: string

flv 播放地址

urlsRTMP

urlsRTMP
urlsRTMP: string

rtmp 播放地址

urlsHLS

urlsHLS
urlsHLS: string

hls 播放地址

urlsHttpsFLV

urlsHttpsFLV
urlsHttpsFLV: string

https 协议的 flv 播放地址

urlsHttpsHLS

urlsHttpsHLS
urlsHttpsHLS: string

https 协议的 hls 播放地址

ZegoStreamOptions

createZegoStream 接口的配置参数约束

详情

该类用于约束接口 createZegoStream 的配置参数。

  • 业务场景:创建zegoLocalStream实例对象。
  • 注意事项:camera、screen 和 custom 三个参数在每次调用接口 createStream 时只能选填其中一个。

属性

camera

camera
camera: { video?: boolean | ZegoCaptureCamera; audio?: boolean | ZegoCaptureMicrophone; }

摄像头麦克风采集流相关配置; 3.8.0 版本之前,该配置只在调用 createZegoStream 时生效,后续调用采集相关接口时不会使用该配置;3.8.0 版本之后,后续调用采集相关接口时若不传参则使用该配置,若传参则使用新的配置参数。

screen

screen
screen: { video?: boolean | ZegoCaptureScreenVideo; audio?: boolean | ZegoCaptureScreenAudio; }

屏幕捕捉采集流相关配置; 3.8.0 版本之前,该配置只在调用 createZegoStream 时生效,后续调用采集相关接口时不会使用该配置;3.8.0 版本之后,后续调用采集相关接口时若不传参则使用该配置,若传参则使用新的配置参数。

custom

custom
custom: { video?: ZegoCustomVideo; audio?: ZegoCustomAudio; }

第三方流采集相关配置; 3.8.0 版本之前,该配置只在调用 createZegoStream 时生效,后续调用采集相关接口时不会使用该配置;3.8.0 版本之后,后续调用采集相关接口时若不传参则使用该配置,若传参则使用新的配置参数。

autoCapture

autoCapture
autoCapture: boolean

是否自动采集,默认为true; autoCapture 为 false 时,camera、screen、custom 传入的配置不生效,需在采集接口传入相关的配置参数。

autoPlay

autoPlay
autoPlay: boolean

是否自动播放预览视频,当autoPlay为true时,需要传入参数captureView、view

videoBitrate

videoBitrate
videoBitrate: number | { bitrate?: number; startBitrate?: "default" | "target"; minBitrate?: number; }

视频码率, 单位是 kbps。

audioBitrate

audioBitrate
audioBitrate: number

音频码率,单位是 kbps。

captureView

captureView
captureView: HTMLElement

playCaptureVideo播放预览采集流的挂载节点,配合autoPlay为true时使用。

view

view
view: HTMLElement

playVideo播放预览待推送视频或者正在推流中的视频的挂载节点,配合autoPlay为true时使用。

ZegoStreamRelayCDNInfo

包括转推 CDN 的 URL、转推状态等

属性

url

url
url: string

CDN 地址

state

state
state: "NO_RELAY" | "RELAY_REQUESTING" | "RELAYING"

NO_RELAY:未转推状态,在转推前处于该状态。如果转推过程出现稳态的异常,例如 转推地址 不正确,都会进入未转推状态;RELAY_REQUESTING:正在请求转推状态,转推操作执行成功后会进入正在请求转推状态,通常通过该状态进行应用界面的展示。如果因为网络质量不佳产生的中断,SDK 会进行内部重试,也会回到正在转推状态,RELAYING:正在转推状态,进入该状态表明转推已成功

updateReason

updateReason
updateReason: string

变化原因

stateTime

stateTime
stateTime: number

更新时间

ZegoStreamViewOptions

媒体流播放组件选项。

属性

mirror

mirror
mirror: boolean

镜像显示,true 为开启,false 为关闭,默认是关闭。

objectFit

objectFit
objectFit: "cover" | "contain" | "fill"

视频画面显示模式,"cover" 为覆盖容器;"contain" 为显示全部内容;"fill" 为拉伸填充。默认是 "contain"。

muted

muted
muted: boolean

是否静音,true 为开启静音,false 为关闭静音。本地流的播放默认是静音,远端流的播放默认是关闭静音。

enableAutoplayDialog

enableAutoplayDialog
enableAutoplayDialog: boolean

自动播放失败弹窗,默认开启,当出现自动播放失败时,SDK 会弹窗引导用户点击页面,来恢复音视频播放。可设置为 false 关闭。

clearLastFrame

clearLastFrame
clearLastFrame: boolean

当视频数据中断时是否去掉最后一帧画面。true 为清除,false 为保留,默认是 true。

ZegoSwitchRoomConfig

切换房间相关配置

详情

switchRoom 接口中 toRoomID 房间的配置

属性

token

token
token: string

登录 toRoomID 房间的验证 token,是通过在即构控制台注册项目获得密钥,加上指定算法获得。测试阶段可以通过 ZEGO 提供的接口获取,正式环境一定要用户自己实现。

maxMemberCount

maxMemberCount
maxMemberCount: number

房间最大用户数量,传 0 视为不限制,默认无限制; 只有第一个登录房间的用户设置生效

isUserStatusNotify

isUserStatusNotify
isUserStatusNotify: boolean

设置 roomUserUpdate 是否回调,默认为 false 不回调

ZegoTurnServer

TURN 服务器配置信息。

详情

TURN 服务器配置信息。

属性

url

url
url: string

TURN 服务器的 URL 地址。

username

username
username: string

身份验证过程中要使用的用户名。

credential

credential
credential: string

登录服务器时使用的凭据。

ZegoUser

属性

userID

userID
userID: string

请勿在此字段填写用户敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。 用户 ID,由开发者自己生成,最大 64 字节的字符串。仅支持数字,英文字符 和 '~', '!', '@', '#', '$', '', '^', '&', '*', '(', ')', '_', '+', '=', '-', ', ';', '’', ',', '.

userName

userName
userName: string

请勿在此字段填写用户敏感信息,包括但不限于手机号、身份证号、护照编号、真实姓名等。 用户名,由开发者自己生成,最大长度不超过 256 字节的字符串

ZegoVideoCodec

属性

H264

H264
H264: boolean

是否支持H264编解码能力

VP8

VP8
VP8: boolean

是否支持VP8编解码能力

H265

H265
H265: boolean

是否支持H265编解码能力

ZegoWatermark

混流水印

详情

配置一个水印的图片 URL 以及该水印在画面中的大小方位。

属性

imageURL

imageURL
imageURL: string

水印图片路径。支持本地文件绝对路径 (file://xxx)、Asset 资源路径 (asset://xxx) 和 Android URI 路径 (String path = "uri://" + uri.toString();)。 格式支持 png、jpg。

layout

layout

水印图片的大小方位

ZegoWebPlayOption

属性

video

video
video: boolean

是否需要拉取视频,默认为 true; 通常情况下建议不填,SDK 默认会根据拉到的实际设备状态选择是否拉音视频

audio

audio
audio: boolean

是否需要拉取音频,默认为 true; 通常情况下建议不填,SDK 默认会根据拉到的实际设备状态选择是否拉音视频

streamParams

streamParams
streamParams: string

拉流额外参数;鉴权参数 streamParams 格式如下:'zg_expired=XX&zg_nonce=XX&zg_token=XX',只有需要配置鉴权时才传入,否则请忽略

resourceMode

resourceMode
resourceMode: 0 | 1 | 2 | 5

拉流模式,默认为 0。0 表示仅从 RTC 拉流;1 表示仅从 CDN 拉流;2 表示仅从 L3 拉流;5 表示自定义模式,SDK根据推流设置的customResourceConfig参数选择推流资源。

isSEIStart

isSEIStart
isSEIStart: boolean

是否解析 SEI 。

streamType

streamType
streamType: 0 | 1 | 2

拉流大小流类型 0 为小流,1为大流,2为自动

CDNPlayer

CDNPlayer
CDNPlayer: any

ZegoExpressPlayer 或 ZegoCDNPlayer 实例对象,目前仅支持flv格式。如果使用 ZegoExpressPlayer (播放器支持版本为 1.3.0 及以上),无需配置 CDNVideo 字段,SDK 会使用播放器指定的容器进行播放。

CDNVideo

CDNVideo
CDNVideo: HTMLMediaElement

用于播放 CDN 资源的 <video> 标签元素。

playoutDelayHint

playoutDelayHint
playoutDelayHint: number

设置拉流音视频播放延迟,单位为秒。 如果网络状况不佳,浏览器可能会增加播放延迟以减少卡顿。 自 3.7.0 起,废弃该参数,改为使用 jitterBufferTarget。

jitterBufferTarget

jitterBufferTarget
jitterBufferTarget: number

拉流音视频播放延迟,单位为毫秒,取值(0, 4000]ms。如果网络状况不佳,浏览器可能会增加播放延迟以减少卡顿。 如果将enableLowLatency设置为true,则此参数不起作用。 自 3.7.0 版本起支持该参数。

enableLowLatency

enableLowLatency
enableLowLatency: boolean

是否允许超低延迟播放,默认为 false; 当设置为true,则jitterBufferTarget参数不起作用。 当开启超低延迟播放后,此时优先保障低延迟,但弱网时可能产生卡顿。 自 3.7.0 版本起支持该参数。

customResourceConfig

customResourceConfig
customResourceConfig: ZegoCustomPlayerResourceConfig

当 [resourceMode] 为5 即自定义拉流资源策略时的拉流资源类型配置。 自 3.7.0 版本起支持该参数。

codecTemplateID

codecTemplateID
codecTemplateID: number

码率模板ID,用于拉取指定码率模板的流。 取值大于 100 的整数,ID 必须唯一。

adaptiveSwitch

adaptiveSwitch
adaptiveSwitch: boolean

是否开启流的自适应切换,1 表示开启,0 表示关闭。仅 [resourceMode] 为 L3 时有效。 若需要使用请联系 ZEGO 技术支持,否则可以忽略此参数。

adaptiveTemplateIDList

adaptiveTemplateIDList
adaptiveTemplateIDList: number[]

流的自适应转码模板ID列表。仅 [resourceMode] 为 L3 时有效。 若需要使用请联系 ZEGO 技术支持,否则可以忽略此参数。

transcodeOnDecodeFail

transcodeOnDecodeFail
transcodeOnDecodeFail: boolean

允许在视频解码失败时自动使用单流转码 h264 或者 codecTemplateID 指定的编码模版

ZegoWebPublishOption

属性

streamParams

streamParams
streamParams: string

推流备选参数 ; 备选参数 streamParams 格式如下:'zg_expired=XX&zg_nonce=XX&zg_token=XX',只有需要配置鉴权才传入(可选功能)

extraInfo

extraInfo
extraInfo: string

流附加信息

videoCodec

videoCodec
videoCodec: 'VP8' | 'H264' | 'H265'

推流视频编码,只能传入 'VP8' (string) 或 'H264' (string),默认值为 'H264' 。

roomID

roomID
roomID: string

房间ID,开启多房间功能后必填,选择在哪个房间推流。

isSEIStart

isSEIStart
isSEIStart: boolean

是否开启 SEI

SEIType

SEIType
SEIType: ZegoSEIType

SEI 类型

forceSynchronousNetworkTime

forceSynchronousNetworkTime
forceSynchronousNetworkTime: number

推流时是否同步网络时间。且必须与 setStreamAlignmentProperty 方法配合使用。用于在混流服务或拉流端对多条流进行对齐,比如 KTV 的合唱场景。传 1 为开启,0 为关闭,默认是关闭。

enableDTX

enableDTX
enableDTX: boolean

是否开启 DTX 静音检测,用于减少不发声时推流的音频码率。默认是关闭 DTX。

inspectFlag

inspectFlag
inspectFlag: ZegoInspectFlagType
  • 注意事项:当设置为不允许送审时,审核服务商将不会拉取此条流送审;在使用流注入方式实现跨房间 PK 的业务场景时,建议将此字段设置为"不允许",以避免同一条流在多个房间内被重复送审。

trafficControlFocusOnMode

trafficControlFocusOnMode
trafficControlFocusOnMode: TrafficControlFocusOnMode

触发流量控制的因素, 默认为TrafficControlFocusOnRemote

trafficControlMinVideoBitrate

trafficControlMinVideoBitrate
trafficControlMinVideoBitrate: number

最低视频码率,单位为 kbps,当达不到最低视频码率时,以极低的视频帧率发送

enableTrafficControl

enableTrafficControl
enableTrafficControl: boolean

流控开关,用于控制自适应码率,默认为开启, true: 开启, false:关闭。

enableAutoSwitchVideoCodec

enableAutoSwitchVideoCodec
enableAutoSwitchVideoCodec: boolean

当 videoCodec 不可用时,是否自动切换为可用的 videoCodec, 默认 false。 比如:当前设备不支持 H264,开启该配置后,SDK 会自动切换至 VP8。

trafficControlMinVideoMode

trafficControlMinVideoMode
trafficControlMinVideoMode: TrafficControlMinVideoBitrateMode

流控触发最低码率时的视频发送模式。传 0 表示低码率切换纯音频;默认表示低码率时降低视频帧率。

Previous

Class

Next

Enum

当前页

返回到顶部