logo
实时音视频
当前页

功能总览


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

初始化相关的前置功能

方法名描述
createEngine创建 ZegoExpressEngine 单例对象并初始化 SDK。
destroyEngine销毁 ZegoExpressEngine 单例对象并反初始化 SDK。
setEngineConfig设置引擎进阶配置。
setLogConfig设置日志配置。
setLicense设置 License 鉴权。
setRoomMode设置房间模式。
setGeoFence设置地理围栏。
getSDKVersion获取 SDK 版本号。
isFeatureSupported查询当前 SDK 是否支持指定的功能特性。
setRoomScenario设置房间场景。
uploadLog上传日志到 ZEGO 服务器。
submitLog上传日志到 ZEGO 服务器。
enableDebugAssistant开启调试助手。注意,请勿在线上版本开启此功能!仅在开发阶段使用!
callExperimentalAPI调用实验性 API。
onDebugError调试错误信息回调。
onApiCalledResult方法执行结果回调。
onEngineStateUpdate音视频引擎状态更新的回调通知。
onRecvExperimentalAPI实验性 API 回调。

房间功能

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

推流功能

方法名描述
startPublishingStream开始推流,支持多房间模式
stopPublishingStream停止推流,可停止指定通道的音视频流。
setStreamExtraInfo设置指定推流通道的流附加信息。
startPreview启动/更新本地预览,支持设置其他通道的推流。
stopPreview停止本地预览,支持设置其他通道的推流
setVideoConfig设置视频配置,支持设置其他通道的推流。
getVideoConfig获取当前视频配置,支持设置其他通道的推流
setPublishDualStreamConfig设置大小流配置信息
setVideoMirrorMode设置镜像模式,支持设置其他通道的推流。
setAppOrientation设置采集视频的朝向,支持设置其他通道的推流。
setAudioConfig设置指定推流通道的音频质量配置。
getAudioConfig获取指定推流通道的当前音频质量配置。
setPublishStreamEncryptionKey设置指定推流通道的推流加密密钥。
takePublishStreamSnapshot对指定推流通道的推流画面截图。
takePublishStreamSnapshotByConfig对指定推流通道的推流画面截图。
mutePublishStreamAudio停止或恢复发送指定推流通道的音频流。
mutePublishStreamVideo停止或恢复发送指定推流通道的视频流。
setStreamAlignmentProperty开启或关闭流精准对齐功能
enableTrafficControl开始或停止指定推流通道的流量控制。
setMinVideoBitrateForTrafficControl设置指定推流通道的流量控制视频码率最低值
setMinVideoFpsForTrafficControl设置流量控制的最低视频帧率阈值。
setMinVideoResolutionForTrafficControl设置流量控制的最低视频分辨率阈值。
setTrafficControlFocusOn设置指定推流通道的触发流量控制的关注因素。
setCaptureVolume设置推流端采集音量。
getCaptureVolume获取推流端采集音量。
setAudioCaptureStereoMode设置音频采集双声道模式。
addPublishCdnUrl增加转推至 CDN 的 URL。
removePublishCdnUrl删除转推至 CDN 的 URL。
enablePublishDirectToCDN是否直接推流到 CDN(不经过 ZEGO RTC 服务器), 支持设置其他通道的推流。
setPublishWatermark设置推流水印,支持设置其他通道的推流。
setSEIConfig设置媒体增强补充信息类型。
sendSEI指定推流通道号,发送媒体增强补充信息。
sendAudioSideInfo发送音频次要信息。
enableHardwareEncoder开/关硬件编码。
setCapturePipelineScaleMode设置采集缩放时机,视频数据是采集的时候立即缩放还是编码时才进行缩放。
isVideoEncoderSupported是否支持指定的视频编码类型和实现方式。
setAppOrientationMode设置视频的朝向模式。
setVideoSource设置视频采集源实例作为指定推流通道的视频采集源。
setAudioSource为指定推流通道设置音频采集源
onPublisherStateUpdate推流状态回调。
onPublisherQualityUpdate推流质量回调。
onPublisherCapturedAudioFirstFrame音频采集首帧回调接口。
onPublisherCapturedVideoFirstFrame视频采集首帧回调接口。
onPublisherRenderVideoFirstFrame推流端视频渲染首帧回调。
onPublisherVideoSizeChanged采集视频大小变更回调。
onPublisherRelayCDNStateUpdate添加/删除转推 CDN 地址状态回调。
onPublisherVideoEncoderChanged视频编码器变更回调。
onPublisherStreamEvent推流事件回调。
onVideoObjectSegmentationStateChanged视频主体分割状态变化。
onPublisherLowFpsWarning视频编码低帧率警告。

拉流功能

方法名描述
startPlayingStream开始拉流(从 ZEGO RTC 服务器或第三方 CDN),支持多房间模式。
stopPlayingStream停止拉流。
setPlayStreamDecryptionKey设置拉流解密密钥。
takePlayStreamSnapshot拉流画面截图。
setPlayVolume设置拉流音量。
setAllPlayStreamVolume设置所有拉流音量。
setPlayStreamVideoType设置播放视频流类型。
setPlayStreamBufferIntervalRange设置拉流播放缓存自适应调整的区间范围。
setAudioMixMode设置多路混音时突出的拉流ID,当有多路流同时发声,将突出流列表中的流。
mutePlayStreamAudio拉流是否可接收指定音频数据。
mutePlayStreamVideo拉流是否可接收指定视频数据。
muteAllPlayStreamAudio拉流是否接收所有音频数据。(当设置为true时, 调用[mutePlayStreamAudio]不会生效)
enableHardwareDecoder开/关硬件解码。
isVideoDecoderSupported是否支持指定视频解码格式。
setPlayStreamsAlignmentProperty设置拉流对齐属性。
updatePlayingCanvas更新拉流视图。
onPlayerStateUpdate拉流状态变更回调。
onPlayerQualityUpdate拉流质量回调。
onPlayerMediaEvent拉流媒体事件回调。
onPlayerRecvAudioFirstFrame拉流端音频接收首帧回调。
onPlayerRecvVideoFirstFrame拉流端视频接收首帧回调。
onPlayerRenderVideoFirstFrame拉流端渲染完视频首帧回调。
onPlayerRenderCameraVideoFirstFrame拉流端渲染完远端摄像头视频首帧回调。
onPlayerVideoSizeChanged拉流分辨率变更通知。
onPlayerRecvSEI收到远端流的 SEI 内容。
onPlayerSyncRecvSEI同步接收远端流的 SEI 内容。
onPlayerRecvAudioSideInfo收到远端流的音频次要信息内容。
onPlayerLowFpsWarning拉流低帧率警告。
onPlayerStreamEvent拉流事件回调。

信令消息功能

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

混流功能

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

音视频前处理

方法名描述
enableAEC是否开启回声消除。
enableHeadphoneAEC是否在使用耳机时开启回声消除。
setAECMode设置回声消除模式
enableAGC开/关自动增益控制
enableANS开/关噪声抑制
enableTransientANS开/关瞬态噪声抑制
setANSMode设置音频噪声抑制模式
enableAudioMixing开/关混音功能
muteLocalAudioMixing静音或恢复本地播放混音声音。
setAudioMixingVolume设置混音音量(可分别设置本地、远端的音量)
enableEffectsBeauty开启或关闭美颜效果。
setEffectsBeautyParam设置美颜效果参数。
setAudioEqualizerGain设置音效均衡器(EQ)。
setVoiceChangerPreset通过预设枚举设置变声。
setVoiceChangerParam设置变声的具体参数。
setReverbPreset通过预设枚举设置混响。
setReverbAdvancedParam设置混响的具体参数。
setReverbEchoParam设置混响回声效果的具体参数。
enableVirtualStereo开启或关闭推流时的虚拟立体声效果。
setElectronicEffects开启或关闭电音效果。

媒体播放器功能

方法名描述
createMediaPlayer创建媒体播放器实例对象。
destroyMediaPlayer销毁媒体播放器实例对象。
loadResource加载本地或者网络媒体资源。
loadCopyrightedMusicResourceWithPosition加载版权音乐资源。
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设置播放文件的音轨
setAudioTrackMode设置播放器的音轨模式
setAudioTrackPublishIndex设置媒体文件需要推流的音轨
enableVoiceChanger开启变声,设置变声的具体参数。
getCurrentState获取当前播放状态
getIndex获取媒体播放器的序号
enableAccurateSeek开启精准 seek 并设置相关属性
setNetworkResourceMaxCache设置网络素材最大的缓存时长和缓存数据大小
enableFrequencySpectrumMonitor是否开启频谱监听。
updatePosition更新媒体播放器(音频源)位置。
setPlayMediaStreamType设置播放的媒体流类型。
enableLocalCache开启本地缓存 http/https 网络资源。
onMediaPlayerStateUpdate媒体播放器播放状态回调。
onMediaPlayerNetworkEvent媒体播放器网络状态事件回调。
onMediaPlayerPlayingProgress播放器播放进度回调。
onMediaPlayerRenderingProgress播放器渲染进度回调。
onMediaPlayerVideoSizeChanged媒体播放器播放视频分辨率改变事件回调。
onMediaPlayerFrequencySpectrumUpdate频谱更新回调。
onMediaPlayerLocalCache媒体播放器本地缓存 http/https 网络资源后回调。

音效播放器功能

方法名描述
createAudioEffectPlayer创建音效播放器实例对象。
destroyAudioEffectPlayer销毁音效播放器实例对象。
start开始播放音效。
stop停止播放音效。
pause暂停播放音效。
resume恢复播放音效。
stopAll停止播放所有音效。
pauseAll暂停播放所有音效。
resumeAll恢复播放所有音效。
seekTo设置播放进度。
setVolume设置单个音效的播放音量,会同时设置本地播放音量和推流音量。
setPlayVolume设置单个音效的本地播放音量。
setPublishVolume设置单个音效的推流音量。
setVolumeAll设置所有音效的播放音量,会同时设置本地播放音量和推流音量。
setPlayVolumeAll设置所有音效的本地播放音量。
setPublishVolumeAll设置所有音效的推流音量。
setPlaySpeed设置指定音效的播放速度,会同时设置本地播放速度和推流速度(不支持单独设置)。
getTotalDuration获取指定音效资源的总长度。
getCurrentProgress获取当前播放进度。
loadResource加载音效资源。
unloadResource卸载音效资源。
updatePosition更新音效播放器(音频源)位置。
getIndex获取音效播放器索引。
onAudioEffectPlayerStateUpdate音效播放状态回调。

录制功能

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

设备管理

方法名描述
muteMicrophone设置是否静音(关闭麦克风)。
isMicrophoneMuted检查麦克风是否设置为静音。
muteSpeaker设置是否静音(关闭音频输出)。
isSpeakerMuted检查音频输出是否静音。
getAudioDeviceList获取音频设备列表
getDefaultAudioDeviceID获取默认音频设备 ID
useAudioDevice选择使用某个音频设备
getAudioDeviceVolume获取音频设备音量
setAudioDeviceVolume设置音频设备音量。
muteAudioDevice静音或取消静音音频设备。
setAudioDeviceMode设置音频设备模式。
isAudioDeviceMuted检查音频设备是否静音
enableAudioCaptureDevice开/关音频采集设备。
getAudioRouteType获取当前音频路由。
setAudioRouteToSpeaker设置音频路由到扬声器。
enableCamera开/关摄像头,支持设置其他通道的推流。
useFrontCamera切换前后摄像头,支持指定推流通道。
isCameraFocusSupported摄像头是否支持对焦
setCameraFocusMode设置摄像头对焦模式。
setCameraFocusPointInPreview设置预览视图中的对焦点。
setCameraExposureMode设置摄像头曝光模式。
setCameraExposurePointInPreview设置预览视图中的曝光点。
setCameraExposureCompensation设置摄像头曝光补偿数值,支持指定推流通道号。
setCameraZoomFactor设置摄像头变焦倍数,支持指定推流通道号。每次摄像头重新启动时,摄像头变焦倍数都将会恢复初始值 (1.0)。
getCameraMaxZoomFactor获取摄像头最大变焦倍数,支持指定推流通道号。
startSoundLevelMonitor启动声浪监控,支持开启进阶功能。
stopSoundLevelMonitor停止声浪监控。
startAudioSpectrumMonitor启动音频频谱监控,支持设置监听间隔。
stopAudioSpectrumMonitor停止音频频谱监控。
enableHeadphoneMonitor开启/关闭 耳返。
setHeadphoneMonitorVolume设置耳返音量。
startAudioVADStableStateMonitor开始语音的稳态检测,可设置检测周期。
stopAudioVADStableStateMonitor停止语音的稳态检测。
onCapturedSoundLevelUpdate本地采集音频声浪回调。
onRemoteSoundLevelUpdate远端拉流音频声浪回调。
onCapturedAudioSpectrumUpdate本地采集音频频谱回调。
onRemoteAudioSpectrumUpdate远端拉流音频频谱回调。
onLocalDeviceExceptionOccurred本地设备异常通知。
onRemoteCameraStateUpdate远端摄像头设备状态通知。
onRemoteMicStateUpdate远端麦克风设备状态通知。
onRemoteSpeakerStateUpdate远端扬声器设备状态通知。
onAudioRouteChange音频设备路由变更通知。
onAudioVADStateUpdate检测音频数据的稳态语音状态的回调。

自定义视频采集和渲染

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

自定义音频采集和渲染

方法名描述
enableCustomAudioCaptureProcessing开启本地采集自定义音频处理(耳返前)。
enableCustomAudioCaptureProcessingAfterHeadphoneMonitor开启本地采集自定义音频处理(耳返后)。
enableBeforeAudioPrepAudioData开启抛出 SDK 内部音频前处理前的音频数据功能。
enableCustomAudioRemoteProcessing开启远端拉流自定义音频处理。
enableCustomAudioPlaybackProcessing开启 SDK 播放的音频数据的自定义音频处理。
startAudioDataObserver开启音频数据回调监测。
stopAudioDataObserver停止音频数据回调监测。
enableCustomAudioIO开启自定义音频 IO 功能,支持其他路推流,支持 PCM 、AAC 格式数据。

媒体推流器

暂不支持

实用工具

方法名描述
startNetworkSpeedTest启动网络测速,支持设置测速周期。
stopNetworkSpeedTest停止网络测速。
getNetworkTimeInfo获取同步网络时间信息。
onNetworkSpeedTestError网络测速异常回调。
onNetworkSpeedTestQualityUpdate网络测速质量回调。
onNetworkQuality房间内正在推流的用户的网络质量回调。
onNetworkTimeSynchronized网络时间同步成功的回调

范围语音

方法名描述
createRangeAudio创建范围语音实例对象。
destroyRangeAudio销毁范围语音实例对象。
setAudioReceiveRange设置音频接收范围的配置。
setPositionUpdateFrequency设置SDK内部实时更新位置的频率
updateSelfPosition更新自身的位置和朝向。
updateAudioSource添加或更新音源位置信息。
enableSpatializer开启或关闭 3D 音效。
enableMicrophone开启或关闭麦克风。
enableSpeaker开启或关闭扬声器。
setRangeAudioMode设置范围语音模式。
setRangeAudioCustomMode设置范围语音的高阶自定义模式。
setTeamID设置队伍 ID
muteUser是否可接收指定用户音频数据。
onRangeAudioMicrophoneStateUpdate范围语音麦克风使用状态回调。

版权音乐

方法名描述
createCopyrightedMusic创建版权音乐实例对象。
destroyCopyrightedMusic销毁版权音乐实例对象。
initCopyrightedMusic初始化版权音乐模块。
getCacheSize获取缓存大小。
clearCache清除缓存。
sendExtendedRequest发送扩展功能请求。
getLrcLyric获取 lrc 格式歌词。
getKrcLyricByToken获取逐字歌词。
requestResource获取音乐资源。
getSharedResource获取分享歌曲资源。
download下载音乐资源。
cancelDownload取消下载音乐资源。
queryCache查询资源是否有缓存。
getDuration获取歌曲或伴奏文件的播放时长。
setScoringLevel设置打分难度级别。
startScore开始评分。
pauseScore暂停评分。
resumeScore恢复评分。
stopScore结束评分。
resetScore重置评分。
getPreviousScore获取上一句的评分。
getAverageScore获取平均评分。
getTotalScore获取总评分。
getFullScore获取满分。
getStandardPitch获取标准音高数据。
getCurrentPitch获取实时音高数据。
onDownloadProgressUpdate加载歌曲或伴奏进度回调。
onCurrentPitchValueUpdate实时音高线回调。

废弃接口列表

方法名描述
getMusicByToken【已废弃】获取歌曲或伴奏。此函数在 3.0.2 版本及以上已废弃,请使用 [getSharedResource] 函数代替。

上一篇

Faq