logo
实时音视频
当前页

功能总览


ZEGO SDK 拥有全面覆盖全球重点区域的网络节点,提供丰富的 API,为多端提供清晰稳定的实时语音视频云服务。 以下为基本 API 的简要介绍。

初始化相关的前置功能

方法名描述
createEngineWithProfile创建 ZegoExpressEngine 单例对象并初始化 SDK。
destroyEngine销毁 ZegoExpressEngine 单例对象并反初始化 SDK。
setEngineConfig设置引擎进阶配置。
setRoomMode设置房间模式。
getVersion获取 SDK 版本号。
uploadLog上传日志到 ZEGO 服务器。
callExperimentalAPI调用实验性 API。
on<EventType extends keyof ZegoEventListener>注册事件监听
off<EventType extends keyof ZegoEventListener>注销事件监听
debugError调试错误信息回调。
apiCalledResult方法执行结果回调。
engineStateUpdate音视频引擎状态更新的回调通知。
recvExperimentalAPI实验性 API 回调。

房间功能

方法名描述
loginRoom使用带配置进阶属性的方式登录房间,通过回调参数返回登录结果,推拉流前必须登录房间。
logoutRoom退出指定房间 ID 的房间,并带有回调。
switchRoom使用配置进阶属性的方式切换房间。
renewToken更新 token 鉴权信息。
setRoomExtraInfo设置房间附加消息。
roomStateUpdate房间状态变化通知。
roomStateChanged房间状态变化通知,包含具体的状态变化原因。
roomUserUpdate房间内其他用户增加或减少的回调通知。
roomOnlineUserCountUpdate房间内当前在线用户数量回调。
roomStreamUpdate相同房间内其他用户推的流增加或减少的通知。
roomStreamExtraInfoUpdate房间内流附加信息更新通知。
roomExtraInfoUpdate房间附加信息更新通知。
roomTokenWillExpire房间 Token 鉴权将要过期的回调通知。

推流功能

方法名描述
startPublishingStream开始推流,支持多房间模式
stopPublishingStream停止推流,可停止指定通道的音视频流。
setStreamExtraInfo设置指定推流通道的流附加信息。
startPreview启动/更新本地预览,支持设置其他通道的推流。
stopPreview停止本地预览,支持设置其他通道的推流
setVideoConfig设置视频配置,支持设置其他通道的推流。
getVideoConfig获取当前视频配置,支持设置其他通道的推流
setVideoMirrorMode设置镜像模式,支持设置其他通道的推流。
setAppOrientation设置采集视频的朝向,支持设置其他通道的推流。
setAudioConfig设置指定推流通道的音频质量配置。
getAudioConfig获取指定推流通道的当前音频质量配置。
takePublishStreamSnapshot对指定推流通道的推流画面截图。
mutePublishStreamAudio停止或恢复发送指定推流通道的音频流。
mutePublishStreamVideo停止或恢复发送指定推流通道的视频流。
setCaptureVolume设置推流端采集音量。
addPublishCdnUrl增加转推至 CDN 的 URL。
removePublishCdnUrl删除转推至 CDN 的 URL。
enablePublishDirectToCDN是否直接推流到 CDN(不经过 ZEGO RTC 服务器), 支持设置其他通道的推流。
sendSEI指定推流通道号,发送媒体增强补充信息。
enableHardwareEncoder开/关硬件编码。
enableH265EncodeFallback是否开启 H.265 编码自动降级到 H.264 编码。
isVideoEncoderSupported是否支持指定视频编码类型。
setVideoSource设置指定推流通道的视频采集源。
setAudioSource为指定推流通道设置音频采集源
enableVideoObjectSegmentation开启主体分割。
enableAlphaChannelVideoEncoder开启视频编码器透明通道支持。
publisherStateUpdate推流状态回调。
publisherQualityUpdate推流质量回调。
publisherCapturedAudioFirstFrame音频采集首帧回调接口。
publisherCapturedVideoFirstFrame视频采集首帧回调接口。
publisherRenderVideoFirstFrame推流端视频渲染首帧回调。
publisherVideoSizeChanged采集视频大小变更回调。
publisherRelayCDNStateUpdate添加/删除转推 CDN 地址状态回调。
publisherVideoEncoderChanged视频编码器变更回调。
publisherStreamEvent推流事件回调。
videoObjectSegmentationStateChanged视频主体分割状态变化。

拉流功能

方法名描述
startPlayingStream开始拉流(从 ZEGO RTC 服务器或第三方 CDN),支持多房间模式。
stopPlayingStream停止拉流。
takePlayStreamSnapshot拉流画面截图。
setPlayVolume设置拉流音量。
setAllPlayStreamVolume设置所有拉流音量。
setPlayStreamVideoType设置播放视频流类型。
mutePlayStreamAudio拉流是否可接收指定音频数据。
mutePlayStreamVideo拉流是否可接收指定视频数据。
muteAllPlayStreamAudio拉流是否接收所有音频数据。(当设置为true时, 调用[mutePlayStreamAudio]不会生效)
muteAllPlayStreamVideo拉流是否可接收所有视频数据。(当设置为true时, 调用[mutePlayStreamVideo]不会生效)
enableHardwareDecoder开/关硬件解码。
isVideoDecoderSupported是否支持指定视频解码格式。
playerStateUpdate拉流状态变更回调。
playerQualityUpdate拉流质量回调。
playerMediaEvent拉流媒体事件回调。
playerRecvAudioFirstFrame拉流端音频接收首帧回调。
playerRecvVideoFirstFrame拉流端视频接收首帧回调。
playerRenderVideoFirstFrame拉流端渲染完视频首帧回调。
playerVideoSizeChanged拉流分辨率变更通知。
playerRecvSEI收到远端流的 SEI 内容。

信令消息功能

方法名描述
sendBroadcastMessage发送房间广播消息。
sendBarrageMessage发送房间弹幕消息。
sendCustomCommand发送自定义信令。
IMRecvBroadcastMessage接收房间广播消息通知。
IMRecvBarrageMessage接收房间弹幕消息通知。
IMRecvCustomCommand接收自定义信令通知。

混流功能

方法名描述
startMixerTask开始混流任务。
stopMixerTask停止混流任务。
mixerRelayCDNStateUpdate混流转推 CDN 状态更新通知。
mixerSoundLevelUpdate混流中的每条单流的声浪更新通知。

音视频前处理

方法名描述
enableAEC是否开启回声消除。
enableHeadphoneAEC是否在使用耳机时开启回声消除。
setAECMode设置回声消除模式
enableAGC开/关自动增益控制
enableANS开/关噪声抑制
setANSMode设置音频噪声抑制模式
startEffectsEnv开启 Effects 美颜环境。
stopEffectsEnv关闭 Effects 美颜环境。
enableEffectsBeauty开启或关闭美颜效果。
setEffectsBeautyParam设置美颜效果参数。
setAudioEqualizerGain设置音效均衡器(EQ)。
setVoiceChangerPreset通过预设枚举设置变声。
setVoiceChangerParam设置变声的具体参数。
setReverbPreset通过预设枚举设置混响。
setReverbAdvancedParam设置混响的具体参数。
setReverbEchoParam设置混响回声效果的具体参数。
setElectronicEffects开启或关闭电音效果。

媒体播放器功能

方法名描述
createMediaPlayer创建媒体播放器实例对象。
destroyMediaPlayer销毁媒体播放器实例对象。
loadResource加载本地或者网络媒体资源。
loadResourceWithConfig加载本地或者网络媒体资源,带配置参数。
start开始播放
stop停止播放
pause暂停播放
resume恢复播放
seekTo设置指定的播放进度
enableRepeat是否重复播放
setPlaySpeed设置播放倍速。
enableAux是否将播放器的声音混入正在推的流中
muteLocal是否静默本地播放
setPlayerView设置播放器播放视频的视图
setVolume设置播放器音量,会同时设置本地播放音量和推流音量
setPlayVolume设置播放器本地播放音量
setPublishVolume设置播放器推流音量
setProgressInterval设置播放进度回调间隔
getPlayVolume获取当前媒体播放器本地播放的音量,范围为 0 ~ 200,默认值为 60
getPublishVolume获取当前媒体播放器推流的音量,范围为 0 ~ 200,默认值为 60
getTotalDuration获取媒体资源的总进度
getCurrentProgress获取当前播放进度
getCurrentRenderingProgress获取当前渲染进度
getAudioTrackCount获取播放文件的音轨个数
setAudioTrackIndex设置播放文件的音轨
getCurrentState获取当前播放状态
getIndex获取媒体播放器的序号
on<MediaPlayerEventType extends keyof ZegoMediaPlayerListener>注册监听媒体播放器事件回调
off<MediaPlayerEventType extends keyof ZegoMediaPlayerListener>注销监听媒体播放器事件回调
mediaPlayerStateUpdate媒体播放器播放状态回调。
mediaPlayerNetworkEvent媒体播放器网络状态事件回调。
mediaPlayerPlayingProgress播放器播放进度回调。
mediaPlayerRenderingProgress播放器渲染进度回调。

音效播放器功能

方法名描述
createAudioEffectPlayer创建音效播放器实例对象。
destroyAudioEffectPlayer销毁音效播放器实例对象。
start开始播放音效。
stop停止播放音效。
pause暂停播放音效。
resume恢复播放音效。
stopAll停止播放所有音效。
pauseAll暂停播放所有音效。
resumeAll恢复播放所有音效。
seekTo设置播放进度。
setVolume设置单个音效的播放音量,会同时设置本地播放音量和推流音量。
setVolumeAll设置所有音效的播放音量,会同时设置本地播放音量和推流音量。
getTotalDuration获取指定音效资源的总长度。
getCurrentProgress获取当前播放进度。
loadResource加载音效资源。
unloadResource卸载音效资源。
getIndex获取音效播放器索引。
audioEffectPlayerStateUpdate音效播放状态回调。
on<AudioEffectPlayerEventType extends keyof ZegoAudioEffectPlayerListener>注册监听媒体播放器事件回调
off<AudioEffectPlayerEventType extends keyof ZegoAudioEffectPlayerListener>注销监听媒体播放器事件回调

录制功能

方法名描述
startRecordingCapturedData开始本地录制,直接将音视频数据录制到本地文件。
stopRecordingCapturedData结束录制本端音频或音视频。
capturedDataRecordStateUpdate本地录制的状态更新回调,当录制过程状态变化时触发。
capturedDataRecordProgressUpdate录制进度更新回调。

设备管理

方法名描述
muteMicrophone设置是否静音(关闭麦克风)。
isMicrophoneMuted检查麦克风是否设置为静音。
muteSpeaker设置是否静音(关闭音频输出)。
isSpeakerMuted检查音频输出是否静音。
enableAudioCaptureDevice开/关音频采集设备。
getAudioRouteType获取当前音频路由。
setAudioRouteToSpeaker设置音频路由到扬声器。
enableCamera开/关摄像头,支持设置其他通道的推流。
useFrontCamera切换前后摄像头,支持指定推流通道。
startSoundLevelMonitor启动声浪监控,支持开启进阶功能。
stopSoundLevelMonitor停止声浪监控。
enableHeadphoneMonitor开启/关闭 耳返。
capturedSoundLevelUpdate本地采集音频声浪回调。
remoteSoundLevelUpdate远端拉流音频声浪回调。
localDeviceExceptionOccurred本地设备异常通知。
remoteCameraStateUpdate远端摄像头设备状态通知。
remoteMicStateUpdate远端麦克风设备状态通知。
audioRouteChange音频设备路由变更通知。

自定义视频采集和渲染

方法名描述
enableCustomVideoCapture开始或停止自定义视频采集,支持设置其他通道的推流。
enableCustomVideoProcessing自定义视频前处理配置开关,支持指定推流通道号。

自定义音频采集和渲染

方法名描述
enableCustomAudioIO开启自定义音频 IO 功能,支持其他路推流,支持 PCM 、AAC 格式数据。

媒体推流器

暂不支持

实用工具

方法名描述
startNetworkSpeedTest启动网络测速,支持设置测速周期。
stopNetworkSpeedTest停止网络测速。
getNetworkTimeInfo获取同步网络时间信息。
networkModeChanged网络模式变更回调。
networkSpeedTestError网络测速异常回调。
networkSpeedTestQualityUpdate网络测速质量回调。
networkQuality房间内正在推流的用户的网络质量回调。

范围语音

暂不支持

版权音乐

暂不支持

废弃接口列表

方法名描述
enableBeautify【已废弃】开/关美颜,为任意推流通道设置。此函数在 2.16.0 版本及以上已废弃,请使用 [enableEffectsBeauty] 函数代替。
setBeautifyOption【已废弃】设置美颜参数。此函数在 2.16.0 版本及以上已废弃,请使用 [setEffectsBeautyParam] 函数代替。
createEngine【已废弃】创建 ZegoExpressEngine 单例对象并初始化 SDK。此函数在 2.14.0 版本及以上已废弃,请使用不带 [isTestEnv] 参数的同名函数代替。请参考 测试环境废弃说明

上一篇

Faq