功能总览
ZEGO SDK 拥有全面覆盖全球重点区域的网络节点,提供丰富的 API,为多端提供清晰稳定的实时语音视频云服务。
API 返回的错误码请参考:https://doc-zh.zego.im/article/4378。
以下为基本的 API 简要介绍。
初始化相关的前置功能
| 方法名 | 描述 |
|---|---|
| CreateEngine | 创建 ZegoExpressEngine 单例对象并初始化 SDK。 |
| DestroyEngine | 销毁 ZegoExpressEngine 单例对象并反初始化 SDK。 |
| GetEngine | 获取引擎单例对象。 |
| SetEngineConfig | 设置引擎进阶配置。 |
| SetLogConfig | 设置日志配置。 |
| SetRoomMode | 设置房间模式。 |
| GetVersion | 获取 SDK 版本号。 |
| UploadLog | 上传日志到 ZEGO 服务器。 |
| SubmitLog | 上传日志到 ZEGO 服务器。 |
| EnableDebugAssistant | 开启调试助手。注意,请勿在线上版本开启此功能!仅在开发阶段使用! |
| OnDebugError | 调试错误信息回调。 |
| OnEngineStateUpdate | 音视频引擎状态更新的回调通知。 |
房间功能
| 方法名 | 描述 |
|---|---|
| LoginRoom | 使用配置进阶属性的方式登录房间,推拉流前必须登录房间。 |
| LogoutRoom | 退出房间。 |
| LogoutRoom | 退出指定房间 ID 的房间。 |
| SwitchRoom | 使用配置进阶属性的方式切换房间。 |
| SetRoomExtraInfo | 设置房间附加消息。 |
| OnRoomStateUpdate | 房间状态变化通知。 |
| OnRoomUserUpdate | 房间内其他用户增加或减少的回调通知。 |
| OnRoomOnlineUserCountUpdate | 房间内当前在线用户数量回调。 |
| OnRoomStreamUpdate | 相同房间内其他用户推的流增加或减少的通知。 |
| OnRoomStreamExtraInfoUpdate | 房间内流附加信息更新通知。 |
| OnRoomExtraInfoUpdate | 房间附加信息更新通知。 |
推流功能
拉流功能
| 方法名 | 描述 |
|---|---|
| StartPlayingStream | 开始拉流(从 ZEGO RTC 服务器或第三方 CDN),支持多房间模式。 |
| StopPlayingStream | 停止拉流。 |
| SetPlayVolume | 设置拉流音量。 |
| MutePlayStreamAudio | 拉流是否可接收指定音频数据。 |
| MutePlayStreamVideo | 拉流是否可接收指定视频数据。 |
| EnableHardwareDecoder | 开/关硬件解码。 |
| EnableCheckPoc | 开/关帧顺序检测。 |
| OnPlayerStateUpdate | 拉流状态变更回调。 |
| OnPlayerQualityUpdate | 拉流质量回调。 |
| OnPlayerMediaEvent | 拉流媒体事件回调。 |
| OnPlayerRecvAudioFirstFrame | 拉流端音频接收首帧回调。 |
| OnPlayerRecvVideoFirstFrame | 拉流端视频接收首帧回调。 |
| OnPlayerRenderVideoFirstFrame | 拉流端渲染完视频首帧回调。 |
| OnPlayerVideoSizeChanged | 拉流分辨率变更通知。 |
| OnPlayerRecvSEI | 收到远端流的 SEI 内容。 |
信令消息功能
| 方法名 | 描述 |
|---|---|
| SendBroadcastMessage | 发送房间广播消息。 |
| SendBarrageMessage | 发送房间弹幕消息。 |
| SendCustomCommand | 发送自定义信令。 |
| OnIMRecvBroadcastMessage | 接收房间广播消息通知。 |
| OnIMRecvBarrageMessage | 接收房间弹幕消息通知。 |
| OnIMRecvCustomCommand | 接收自定义信令通知。 |
混流功能
| 方法名 | 描述 |
|---|---|
| StartMixerTask | 开始混流任务。 |
| StopMixerTask | 停止混流任务。 |
| OnMixerRelayCDNStateUpdate | 混流转推 CDN 状态更新通知。 |
| OnMixerSoundLevelUpdate | 混流中的每条单流的声浪更新通知。 |
音视频前处理
| 方法名 | 描述 |
|---|---|
| EnableAEC | 是否开启回声消除。 |
| SetAECMode | 设置回声消除模式 |
| EnableAGC | 开/关自动增益控制 |
| EnableANS | 开/关噪声抑制 |
| EnableTransientANS | 开/关瞬态噪声抑制 |
| SetANSMode | 设置音频噪声抑制模式 |
媒体播放器功能
| 方法名 | 描述 |
|---|---|
| CreateMediaPlayer | 创建媒体播放器实例对象。 |
| DestroyMediaPlayer | 销毁媒体播放器实例对象。 |
录制功能
| 方法名 | 描述 |
|---|---|
| StartRecordingCapturedData | 开始本地录制,直接将音视频数据录制到本地文件。 |
| StopRecordingCapturedData | 结束录制本端音频或音视频。 |
| OnCapturedDataRecordStateUpdate | 本地录制的状态更新回调,当录制过程状态变化时触发。 |
| OnCapturedDataRecordProgressUpdate | 录制进度更新回调。 |
设备管理
| 方法名 | 描述 |
|---|---|
| MuteMicrophone | 设置是否静音(关闭麦克风)。 |
| IsMicrophoneMuted | 检查麦克风是否设置为静音。 |
| MuteSpeaker | 设置是否静音(关闭音频输出)。 |
| IsSpeakerMuted | 检查音频输出是否静音。 |
| GetAudioDeviceList | 获取音频设备列表 |
| UseAudioDevice | 选择使用某个音频设备 |
| EnableAudioCaptureDevice | 开/关音频采集设备。 |
| EnableCamera | 开/关摄像头,支持设置其他通道的推流。 |
| UseFrontCamera | 切换前后摄像头,支持指定推流通道。 |
| UseVideoDevice | 选择使用某个视频设备,支持设置指定推流通道 |
| GetVideoDeviceList | 获取视频设备列表 |
| StartSoundLevelMonitor | 启动声浪监控,支持设置监听间隔。 |
| StartSoundLevelMonitor | 启动声浪监控,支持开启进阶功能。 |
| StopSoundLevelMonitor | 停止声浪监控。 |
| StartAudioSpectrumMonitor | 启动音频频谱监控,支持设置监听间隔。 |
| StopAudioSpectrumMonitor | 停止音频频谱监控。 |
| EnableHeadphoneMonitor | 开启/关闭 耳返。 |
| SetHeadphoneMonitorVolume | 设置耳返音量。 |
| OnCapturedSoundLevelUpdate | 本地采集音频声浪回调。 |
| OnRemoteSoundLevelUpdate | 远端拉流音频声浪回调。 |
| OnCapturedAudioSpectrumUpdate | 本地采集音频频谱回调。 |
| OnRemoteAudioSpectrumUpdate | 远端拉流音频频谱回调。 |
| OnLocalDeviceExceptionOccurred | 本地设备异常通知。 |
| OnRemoteCameraStateUpdate | 远端摄像头设备状态通知。 |
| OnRemoteMicStateUpdate | 远端麦克风设备状态通知。 |
自定义视频采集和渲染
| 方法名 | 描述 |
|---|---|
| EnableCustomVideoRender | 开始或停止自定义视频渲染。 |
| EnableCustomVideoCapture | 开始或停止自定义视频采集,支持设置其他通道的推流。 |
| SendCustomVideoCaptureRawData | 给 SDK 发送自定义采集的视频帧原始数据,支持其他路推流。 |
| SendCustomVideoCaptureRawData | 给 SDK 发送自定义采集的视频帧原始数据,支持其他路推流 |
| OnCustomVideoCaptureStart | 自定义视频采集开始的通知。 |
| OnCustomVideoCaptureStop | 自定义视频采集结束的通知。 |
| OnCapturedVideoFrameRawData | 开启自定义视频渲染时,本地预览采集的原始视频帧数据回调。 |
| OnRemoteVideoFrameRawData | 开启自定义视频渲染时,远端拉流原始视频帧数据回调,通过 streamID 区分不同的流。 |
| EnableCustomVideoProcessing | 自定义视频前处理配置开关,支持指定推流通道号。 |
自定义音频采集和渲染
| 方法名 | 描述 |
|---|---|
| StartAudioDataObserver | 开启音频数据回调监测。 |
| StopAudioDataObserver | 停止音频数据回调监测。 |
| EnableCustomAudioIO | 开启自定义音频 IO 功能,支持其他路推流,支持 PCM 、AAC 格式数据。 |
| SendCustomAudioCaptureAACData | 发送自定义音频采集 AAC 数据,支持设置其他通道的推流。 |
| SendCustomAudioCapturePCMData | 发送自定义音频采集 PCM 数据,支持其他路推流。 |
| FetchCustomAudioRenderPCMData | 从 SDK 取远端拉流自定义音频渲染 PCM 数据。 |
| OnCapturedAudioData | 获取本地麦克风采集到的音频数据的回调. |
| OnPlaybackAudioData | 获取 SDK 播放的音频数据的回调。 |
| OnMixedAudioData | 获取 SDK 播放的音频数据和本地麦克风采集到的音频数据的回调,该音频数据是经过 SDK 混合之后的数据。 |
| OnPlayerAudioData | 获取 SDK 每条拉流的音频数据的回调。 |
版权音乐
| 方法名 | 描述 |
|---|---|
| CreateCopyrightedMusic | 创建版权音乐实例对象。 |
| DestroyCopyrightedMusic | 销毁版权音乐实例对象。 |
| InitCopyrightedMusic | 初始化版权音乐模块。 |
| GetCacheSize | 获取缓存大小。 |
| ClearCache | 清除缓存。 |
| SendExtendedRequest | 发送扩展功能请求。 |
| GetLrcLyric | 获取 lrc 格式歌词。 |
| GetKrcLyricByToken | 获取逐字歌词。 |
| Download | 下载音乐资源。 |
| GetDuration | 获取歌曲或伴奏文件的播放时长。 |
| OnDownloadProgressUpdate | 加载歌曲或伴奏进度回调。 |
废弃接口列表
| 方法名 | 描述 |
|---|---|
| EnableBeautify | 【已废弃】开/关美颜,为任意推流通道设置。此函数在 2.16.0 版本及以上已废弃,请使用 [enableEffectsBeauty] 函数代替。 |
| SetBeautifyOption | 【已废弃】设置美颜参数。此函数在 2.16.0 版本及以上已废弃,请使用 [setEffectsBeautyParam] 函数代替。 |
| CreateEngine | 【已废弃】创建 ZegoExpressEngine 单例对象并初始化 SDK。此函数在 2.14.0 版本及以上已废弃,请使用不带 [isTestEnv] 参数的同名函数代替。请参考 测试环境废弃说明 |
| RequestSong | 【已废弃】点歌。此函数在 3.0.2 版本及以上已废弃,请使用 [requestResource] 函数代替。 |
| RequestAccompaniment | 【已废弃】点伴奏。此函数在 3.0.2 版本及以上已废弃,请使用 [requestResource] 函数代替。 |
| GetMusicByToken | 【已废弃】获取歌曲或伴奏。此函数在 3.0.2 版本及以上已废弃,请使用 [getSharedResource] 函数代替。 |
| GetLrcLyric | 【已废弃】获取 lrc 格式歌词。此函数在 3.2.1 版本及以上已废弃,请使用带 [vendorID] 参数的同名函数代替。 |

