文档中心
ExpressAudioSDK 实时语音
文档中心
体验 App
SDK 中心
API 中心
常见问题
代码市场
进入控制台
立即注册
登录
中文站 English
  • 文档中心
  • 实时语音
  • 客户端 API
  • 功能总览

功能总览

更新时间:2023-07-28 15:25

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

API 返回的错误码请参考:https://doc-zh.zego.im/article/5690。

以下为基本的 API 简要介绍。

初始化相关的前置功能

方法名 描述
CreateEngine 创建 ZegoExpressEngine 单例对象并初始化 SDK。
DestroyEngine 销毁 ZegoExpressEngine 单例对象并反初始化 SDK。
GetEngine 获取引擎单例对象。
SetEngineConfig 设置引擎进阶配置。
SetLogConfig 设置日志配置。
SetLocalProxyConfig 设置本地代理配置
SetCloudProxyConfig 设置云代理配置
SetRoomMode 设置房间模式。
GetVersion 获取 SDK 版本号。
IsFeatureSupported 查询当前 SDK 是否支持指定的功能特性。
SetRoomScenario 设置房间场景。
UploadLog 上传日志到 ZEGO 服务器。
SubmitLog 上传日志到 ZEGO 服务器。
EnableDebugAssistant 开启调试助手。注意,请勿在线上版本开启此功能!仅在开发阶段使用!
CallExperimentalAPI 调用实验性 API。
OnDebugError 调试错误信息回调。
OnApiCalledResult 方法执行结果回调。
OnEngineStateUpdate 音视频引擎状态更新的回调通知。
OnRecvExperimentalAPI 实验性 API 回调。

房间功能

方法名 描述
LoginRoom 使用配置进阶属性的方式登录房间,推拉流前必须登录房间。
LoginRoom 使用带配置进阶属性的方式登录房间,通过回调参数返回登录结果,推拉流前必须登录房间。
LogoutRoom 退出房间,带回调。
LogoutRoom 退出指定房间 ID 的房间,并带有回调。
SwitchRoom 使用配置进阶属性的方式切换房间。
RenewToken 更新 token 鉴权信息。
SetRoomExtraInfo 设置房间附加消息。
OnRoomStateUpdate 房间状态变化通知。
OnRoomStateChanged 房间状态变化通知,包含具体的状态变化原因。
OnRoomUserUpdate 房间内其他用户增加或减少的回调通知。
OnRoomOnlineUserCountUpdate 房间内当前在线用户数量回调。
OnRoomStreamUpdate 相同房间内其他用户推的流增加或减少的通知。
OnRoomStreamExtraInfoUpdate 房间内流附加信息更新通知。
OnRoomExtraInfoUpdate 房间附加信息更新通知。
OnRoomTokenWillExpire 房间 Token 鉴权将要过期的回调通知。

推流功能

方法名 描述
StartPublishingStream 开始推流,可选择推第二路流。
StartPublishingStream 开始推流,支持多房间模式
StartPublishingStreamInScene 在范围场景内推流。
StopPublishingStream 停止推流,可停止指定通道的音视频流。
SetStreamExtraInfo 设置指定推流通道的流附加信息。
StartPreview 启动/更新本地预览,支持设置其他通道的推流。
StopPreview 停止本地预览,支持设置其他通道的推流
SetVideoConfig 设置视频配置,支持设置其他通道的推流。
GetVideoConfig 获取当前视频配置,支持设置其他通道的推流
SetVideoMirrorMode 设置镜像模式,支持设置其他通道的推流。
SetAppOrientation 设置采集视频的朝向,支持设置其他通道的推流。
SetAudioConfig 设置指定推流通道的音频质量配置。
GetAudioConfig 获取指定推流通道的当前音频质量配置。
TakePublishStreamSnapshot 对指定推流通道的推流画面截图。
MutePublishStreamAudio 停止或恢复发送指定推流通道的音频流。
MutePublishStreamVideo 停止或恢复发送指定推流通道的视频流。
SetStreamAlignmentProperty 开启或关闭混流精准对齐功能
EnableTrafficControl 开始或停止流量控制。
SetMinVideoBitrateForTrafficControl 设置指定推流通道的流量控制视频码率最低值
SetMinVideoFpsForTrafficControl 设置流量控制的最低视频帧率阈值。
SetMinVideoResolutionForTrafficControl 设置流量控制的最低视频分辨率阈值。
SetTrafficControlFocusOn 设置指定推流通道的触发流量控制的关注因素。
SetCaptureVolume 设置推流端采集音量。
SetAudioCaptureStereoMode 设置音频采集双声道模式。
AddPublishCdnUrl 增加转推至 CDN 的 URL。
RemovePublishCdnUrl 删除转推至 CDN 的 URL。
EnablePublishDirectToCDN 是否直接推流到 CDN(不经过 ZEGO RTC 服务器), 支持设置其他通道的推流。
SendSEI 指定推流通道号,发送媒体增强补充信息。
EnableHardwareEncoder 开/关硬件编码。
SetCapturePipelineScaleMode 设置采集缩放时机,视频数据是采集的时候立即缩放还是编码时才进行缩放。
SetLowlightEnhancement 设置低照度增强。
OnPublisherStateUpdate 推流状态回调。
OnPublisherQualityUpdate 推流质量回调。
OnPublisherCapturedAudioFirstFrame 音频采集首帧回调接口。
OnPublisherCapturedVideoFirstFrame 视频采集首帧回调接口。
OnPublisherRenderVideoFirstFrame 推流端视频渲染首帧回调。
OnPublisherVideoSizeChanged 采集视频大小变更回调。
OnPublisherRelayCDNStateUpdate 添加/删除转推 CDN 地址状态回调。

拉流功能

方法名 描述
StartPlayingStream 开始拉流(从 ZEGO RTC 服务器或第三方 CDN),支持多房间模式。
StartPlayingStreamInScene 使用范围场景功能时,开始拉流(从 ZEGO RTC 服务器或第三方 CDN),仅支持 Unity 使用。
StopPlayingStream 停止拉流。
TakePlayStreamSnapshot 拉流画面截图。
SetPlayVolume 设置拉流音量。
SetAllPlayStreamVolume 设置所有拉流音量。
SetPlayStreamVideoType 设置播放视频流类型。
SetPlayStreamBufferIntervalRange 设置拉流播放缓存自适应调整的区间范围。
SetPlayStreamFocusOn 设置拉流优先级的权重。
MutePlayStreamAudio 拉流是否可接收指定音频数据。
MutePlayStreamVideo 拉流是否可接收指定视频数据。
MuteAllPlayStreamAudio 拉流是否接收所有音频数据。
MuteAllPlayStreamVideo 拉流是否可接收所有视频数据
EnableHardwareDecoder 开/关硬件解码。
EnableCheckPoc 开/关帧顺序检测。
UpdatePlayingCanvas 更新拉流视图。
OnPlayerStateUpdate 拉流状态变更回调。
OnPlayerQualityUpdate 拉流质量回调。
OnPlayerMediaEvent 拉流媒体事件回调。
OnPlayerRecvAudioFirstFrame 拉流端音频接收首帧回调。
OnPlayerRecvVideoFirstFrame 拉流端视频接收首帧回调。
OnPlayerRenderVideoFirstFrame 拉流端渲染完视频首帧回调。
OnPlayerRenderCameraVideoFirstFrame 拉流端渲染完远端摄像头视频首帧回调。
OnPlayerVideoSizeChanged 拉流分辨率变更通知。
OnPlayerRecvSEI 收到远端流的 SEI 内容。
OnPlayerSyncRecvSEI 同步接收远端流的 SEI 内容。

信令消息功能

方法名 描述
CreateRealTimeSequentialDataManager 创建实时有序数据管理器对象
DestroyRealTimeSequentialDataManager 销毁实时有序数据管理器对象
StartBroadcasting 开始广播实时有序数据流。
StopBroadcasting 停止广播实时有序数据流
SendRealTimeSequentialData 在广播中的流 ID 上发送实时有序数据
StartSubscribing 开始订阅实时有序数据流。
StopSubscribing 停止订阅实时有序数据流。
GetIndex 获取实时有序数据管理器索引。
OnReceiveRealTimeSequentialData 收到实时有序数据回调
SendBroadcastMessage 发送房间广播消息。
SendBarrageMessage 发送房间弹幕消息。
SendCustomCommand 发送自定义信令。
OnIMRecvBroadcastMessage 接收房间广播消息通知。
OnIMRecvBarrageMessage 接收房间弹幕消息通知。
OnIMRecvCustomCommand 接收自定义信令通知。

混流功能

方法名 描述
StartMixerTask 开始混流任务。
StopMixerTask 停止混流任务。
StartAutoMixerTask 开始自动混流任务
StopAutoMixerTask 停止自动混流任务
OnMixerRelayCDNStateUpdate 混流转推 CDN 状态更新通知。
OnMixerSoundLevelUpdate 混流中的每条单流的声浪更新通知。
OnAutoMixerSoundLevelUpdate 自动混流中的每条单流的声浪更新通知

音视频前处理

方法名 描述
EnableAEC 是否开启回声消除。
EnableHeadphoneAEC 是否在使用耳机时开启回声消除。
SetAECMode 设置回声消除模式
EnableAGC 开/关自动增益控制
EnableANS 开/关噪声抑制
EnableTransientANS 开/关瞬态噪声抑制
SetANSMode 设置音频噪声抑制模式
SetVoiceChangerPreset 通过预设枚举设置变声。
SetVoiceChangerParam 设置变声的具体参数。
SetReverbPreset 通过预设枚举设置混响。
SetReverbAdvancedParam 设置混响的具体参数。
SetReverbEchoParam 设置混响回声效果的具体参数。
EnableVirtualStereo 开启或关闭推流时的虚拟立体声效果。
EnablePlayStreamVirtualStereo 开启或关闭拉流时的虚拟立体声效果。

媒体播放器功能

方法名 描述
CreateMediaPlayer 创建媒体播放器实例对象。
DestroyMediaPlayer 销毁媒体播放器实例对象。
SetVideoHandler 设置媒体播放器的视频数据回调。
SetAudioHandler 设置媒体播放器的音频数据回调。
LoadResource 加载本地或者网络媒体资源。
LoadResourceWithPosition 加载本地或者网络媒体资源,并指定开始位置。
LoadResourceFromMediaData 加载二进制的音频媒体资源。
LoadCopyrightedMusicResourceWithPosition 加载版权音乐资源。
Start 开始播放
Stop 停止播放
Pause 暂停播放
Resume 恢复播放
SeekTo 设置指定的播放进度
EnableRepeat 是否重复播放
SetPlayLoopCount 设置播放循环次数。
SetPlaySpeed 设置播放倍速。
EnableAux 是否将播放器的声音混入正在推的流中
MuteLocal 是否静默本地播放
SetVolume 设置播放器音量,会同时设置本地播放音量和推流音量
SetPlayVolume 设置播放器本地播放音量
SetPublishVolume 设置播放器推流音量
SetProgressInterval 设置播放进度回调间隔
GetPlayVolume 获取当前媒体播放器本地播放的音量,范围为 0 ~ 200,默认值为 60
GetPublishVolume 获取当前媒体播放器推流的音量,范围为 0 ~ 200,默认值为 60
GetTotalDuration 获取媒体资源的总进度
GetCurrentProgress 获取当前播放进度
GetAudioTrackCount 获取播放文件的音轨个数
SetAudioTrackIndex 设置播放文件的音轨
SetVoiceChangerParam 设置变声的具体参数
GetCurrentState 获取当前播放状态
GetIndex 获取媒体播放器的序号
EnableAccurateSeek 开启精准 seek 并设置相关属性
SetNetWorkResourceMaxCache 设置网络素材最大的缓存时长和缓存数据大小
GetNetWorkResourceCache 获取当前网络素材缓存队列的缓存数据可播放的时长和缓存数据大小
SetNetWorkBufferThreshold 通过该接口设置媒体播放器重新恢复播放需要达到的缓存阈值,SDK 默认值是 5000ms,有效值为大于等于1000ms
EnableSoundLevelMonitor 是否开启声浪监听。
EnableFrequencySpectrumMonitor 是否开启频谱监听。
UpdatePosition 更新媒体播放器(音频源)位置。
OnMediaPlayerStateUpdate 媒体播放器播放状态回调。
OnMediaPlayerNetworkEvent 媒体播放器网络状态事件回调。
OnMediaPlayerPlayingProgress 播放器播放进度回调。
OnMediaPlayerRecvSEI 媒体次要信息回调。
OnMediaPlayerSoundLevelUpdate 声浪更新回调。
OnMediaPlayerFrequencySpectrumUpdate 频谱更新回调。
OnVideoFrame 播放器抛视频数据的回调,带视频帧附加信息。
OnAudioFrame 播放器抛音频数据的回调。

音效播放器功能

方法名 描述
CreateAudioEffectPlayer 创建音效播放器实例对象。
DestroyAudioEffectPlayer 销毁音效播放器实例对象。
Start 开始播放音效。
Stop 停止播放音效。
Pause 暂停播放音效。
Resume 恢复播放音效。
StopAll 停止播放所有音效。
PauseAll 暂停播放所有音效。
ResumeAll 恢复播放所有音效。
SeekTo 设置播放进度。
SetVolume 设置单个音效的播放音量,会同时设置本地播放音量和推流音量。
SetVolumeAll 设置所有音效的播放音量,会同时设置本地播放音量和推流音量。
GetTotalDuration 获取指定音效资源的总长度。
GetCurrentProgress 获取当前播放进度。
LoadResource 加载音效资源。
UnloadResource 卸载音效资源。
UpdatePosition 更新音效播放器(音频源)位置。
GetIndex 获取音效播放器索引。
OnAudioEffectPlayStateUpdate 音效播放状态回调。

录制功能

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

设备管理

方法名 描述
MuteMicrophone 设置是否静音(关闭麦克风)。
IsMicrophoneMuted 检查麦克风是否设置为静音。
MuteSpeaker 设置是否静音(关闭音频输出)。
IsSpeakerMuted 检查音频输出是否静音。
GetAudioDeviceList 获取音频设备列表
GetAudioDeviceList 获取音频设备列表
UseAudioDevice 选择使用某个音频设备
SetAudioDeviceMode 设置音频设备模式。
EnableAudioCaptureDevice 开/关音频采集设备。
GetAudioRouteType 获取当前音频路由。
SetAudioRouteToSpeaker 设置音频路由到扬声器。
EnableCamera 开/关摄像头,支持设置其他通道的推流。
UseFrontCamera 切换前后摄像头,支持设置其他通道的推流。
EnableCameraAdaptiveFPS 开启摄像头自适应帧率
UseVideoDevice 选择使用某个视频设备,支持设置指定推流通道
GetVideoDeviceList 获取视频设备列表
GetVideoDeviceList 获取视频设备列表
StartSoundLevelMonitor 启动声浪监控,支持设置监听间隔。
StartSoundLevelMonitor 启动声浪监控,支持开启进阶功能。
StopSoundLevelMonitor 停止声浪监控。
StartAudioSpectrumMonitor 启动音频频谱监控,支持设置监听间隔。
StopAudioSpectrumMonitor 停止音频频谱监控。
EnableHeadphoneMonitor 开启/关闭 耳返。
SetHeadphoneMonitorVolume 设置耳返音量。
EnableMixSystemPlayout 开启/关闭系统声卡采集。
SetMixSystemPlayoutVolume 设置系统声卡采集的音量。
OnCapturedSoundLevelUpdate 本地采集音频声浪回调。
OnCapturedSoundLevelInfoUpdate 本地采集音频声浪回调,支持人声检测。
OnRemoteSoundLevelUpdate 远端拉流音频声浪回调。
OnRemoteSoundLevelInfoUpdate 远端拉流音频声浪回调,支持人声检测。
OnCapturedAudioSpectrumUpdate 本地采集音频频谱回调。
OnRemoteAudioSpectrumUpdate 远端拉流音频频谱回调。
OnLocalDeviceExceptionOccurred 本地设备异常通知。
OnRemoteCameraStateUpdate 远端摄像头设备状态通知。
OnRemoteMicStateUpdate 远端麦克风设备状态通知。
OnRemoteSpeakerStateUpdate 远端扬声器设备状态通知。
OnAudioRouteChange 音频设备路由变更通知。

自定义视频采集和渲染

方法名 描述
EnableCustomVideoCapture 开始或停止自定义视频采集,支持设置其他通道的推流。
SendCustomVideoCaptureRawData 给 SDK 发送自定义采集的视频帧原始数据,支持其他路推流。
SendCustomVideoCaptureRawData 给 SDK 发送自定义采集的视频帧原始数据,支持其他路推流
OnCustomVideoCaptureStart 自定义视频采集开始的通知。
OnCustomVideoCaptureStop 自定义视频采集结束的通知。
EnableCustomVideoProcessing 自定义视频前处理配置开关,支持指定推流通道号。
SendCustomVideoProcessedRawData 将自定义视频前处理后的原始视频数据发送给 SDK,支持其他路推流。
SendCustomVideoProcessedCVPixelBuffer 将自定义视频前处理后的 [CVPixelBuffer] 类型视频数据发送给 SDK。支持其他路推流。
SendCustomVideoProcessedTextureData 将自定义视频前处理后的 [Texture] 类型视频数据发送给 SDK。支持其他路推流。
OnCapturedUnprocessedRawData 当获取到原始视频数据时回调。
OnCapturedUnprocessedCVPixelBuffer 当获取到 [CVPixelBuffer] 类型的原始视频数据时回调。
OnCapturedUnprocessedTextureData 当 SDK 获取到 [Texture] 类型的原始视频数据时回调。

自定义音频采集和渲染

方法名 描述
StartAudioDataObserver 开启音频数据回调监测。
StopAudioDataObserver 停止音频数据回调监测。
EnableCustomAudioIO 开启自定义音频 IO 功能,支持其他路推流,支持 PCM 、AAC 格式数据。
SendCustomAudioCaptureAACData 发送自定义音频采集 AAC 数据,支持设置其他通道的推流。
SendCustomAudioCapturePCMData 发送自定义音频采集 PCM 数据,支持其他路推流。
FetchCustomAudioRenderPCMData 从 SDK 取远端拉流自定义音频渲染 PCM 数据。
OnCapturedAudioData 获取本地麦克风采集到的音频数据的回调.
OnPlaybackAudioData 获取 SDK 播放的音频数据的回调。
OnMixedAudioData 获取 SDK 播放的音频数据和本地麦克风采集到的音频数据的回调,该音频数据是经过 SDK 混合之后的数据。
OnPlayerAudioData 获取 SDK 每条拉流的音频数据的回调。

实用工具

方法名 描述
GetNetworkTimeInfo 获取同步网络时间信息。
OnNetworkQuality 房间内正在推流的用户的网络质量回调。
OnNetworkTimeSynchronized 网络时间同步成功的回调

范围语音

方法名 描述
CreateRangeAudio 创建范围语音实例对象。
DestroyRangeAudio 销毁范围语音实例对象。
SetAudioReceiveRange 设置音频接收距离的最大范围。
SetRangeAudioVolume 设置范围语音音量
UpdateSelfPosition 更新自身的位置和朝向。
UpdateAudioSource 添加或更新音源位置信息。
EnableSpatializer 开启或关闭 3D 音效。
EnableMicrophone 开启或关闭麦克风。
EnableSpeaker 开启或关闭扬声器。
SetRangeAudioMode 设置范围语音模式。
SetRangeAudioCustomMode 设置范围语音的高阶自定义模式。
SetTeamID 设置队伍 ID
MuteUser 是否可接收指定用户音频数据。
OnRangeAudioMicrophoneStateUpdate 范围语音麦克风使用状态回调。

版权音乐

方法名 描述
CreateCopyrightedMusic 创建版权音乐实例对象。
DestroyCopyrightedMusic 销毁版权音乐实例对象。
InitCopyrightedMusic 初始化版权音乐模块。
GetCacheSize 获取缓存大小。
ClearCache 清除缓存。
SendExtendedRequest 发送扩展功能请求。
GetLrcLyric 获取 lrc 格式歌词。
GetKrcLyricByToken 获取逐字歌词。
RequestResource 获取音乐资源。
GetSharedResource 获取分享歌曲资源。
Download 下载歌曲或伴奏。
QueryCache 查询资源是否有缓存。
GetDuration 获取歌曲或伴奏文件的播放时长。
StartScore 开始评分。
PauseScore 暂停评分。
ResumeScore 恢复评分。
StopScore 结束评分。
ResetScore 重置评分。
GetPreviousScore 获取上一句的评分。
GetAverageScore 获取平均评分。
GetTotalScore 获取总评分。
GetFullScore 获取满分。
GetStandardPitch 获取标准音高数据。
GetCurrentPitch 获取实时音高数据。
OnDownloadProgressUpdate 加载歌曲或伴奏进度回调。
OnCurrentPitchValueUpdate 实时音高线回调。

废弃接口列表

方法名 描述
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] 函数代替。
RequestAccompanimentClip 【已废弃】点伴奏高潮片段。此函数在 3.0.2 版本及以上已废弃,请使用 [requestResource] 函数代替。
GetMusicByToken 【已废弃】获取歌曲或伴奏。此函数在 3.0.2 版本及以上已废弃,请使用 [getSharedResource] 函数代替。
GetLrcLyric 【已废弃】获取 lrc 格式歌词。此函数在 3.2.1 版本及以上已废弃,请使用带 [vendorID] 参数的同名函数代替。
QueryCache 【已废弃】查询资源是否有缓存。此函数在 3.2.1 版本及以上已废弃,请使用带 [vendorID] 参数的同名函数代替。
本篇目录
  • 免费试用
  • 提交工单
    咨询集成、功能及报价等问题
    电话咨询
    400 1006 604
    咨询客服
    微信扫码,24h在线

    联系我们

  • 文档反馈