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

功能总览

更新时间:2025-03-21 23:45

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

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

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

初始化相关的前置功能

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

房间功能

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

推流功能

方法名 描述
startPublishingStream: 开始推流。
startPublishingStream:channel: 开始推流,可选择推第二路流。
startPublishingStream:config:channel: 开始推流,支持多房间模式
startPublishingStreamInScene:channel:config: 在范围场景内推流。
stopPublishingStream 停止推流。
stopPublishingStream: 停止推流,可停止指定通道的音视频流。
setStreamExtraInfo:callback: 设置流附加信息。
setStreamExtraInfo:channel:callback: 设置指定推流通道的流附加信息。
startPreview: 启动/更新本地预览。
startPreview:channel: 启动/更新本地预览,支持设置其他通道的推流。
startPreview 启动本地音频预览。
stopPreview 停止本地预览
stopPreview: 停止本地预览,支持设置其他通道的推流
setVideoConfig: 设置视频配置。
setVideoConfig:channel: 设置视频配置,支持设置其他通道的推流。
getVideoConfig 获取当前视频配置
getVideoConfig: 获取当前视频配置,支持设置其他通道的推流
setPublishDualStreamConfig:channel: 设置大小流配置信息
setVideoMirrorMode: 设置镜像模式。
setVideoMirrorMode:channel: 设置镜像模式,支持设置其他通道的推流。
setAppOrientation: 设置视频的朝向。
setAppOrientation:channel: 设置采集视频的朝向,支持设置其他通道的推流。
setAudioConfig: 设置音频质量配置。
setAudioConfig:channel: 设置指定推流通道的音频质量配置。
getAudioConfig 获取当前音频质量配置。
getAudioConfig: 获取指定推流通道的当前音频质量配置。
setPublishStreamEncryptionKey: 设置推流加密密钥。
setPublishStreamEncryptionKey:channel: 设置指定推流通道的推流加密密钥。
takePublishStreamSnapshot: 对推流画面截图。
takePublishStreamSnapshot:channel: 对指定推流通道的推流画面截图。
mutePublishStreamAudio: 停止或恢复发送音频流。
mutePublishStreamAudio:channel: 停止或恢复发送指定推流通道的音频流。
mutePublishStreamVideo: 停止或恢复发送视频流。
mutePublishStreamVideo:channel: 停止或恢复发送指定推流通道的视频流。
setStreamAlignmentProperty:channel: 开启或关闭流精准对齐功能
enableTrafficControl:property: 开始或停止流量控制。
enableTrafficControl:property:channel: 开始或停止指定推流通道的流量控制。
setMinVideoBitrateForTrafficControl:mode: 设置流量控制的最低视频码率阈值。
setMinVideoBitrateForTrafficControl:mode:channel: 设置指定推流通道的流量控制视频码率最低值
setMinVideoFpsForTrafficControl:channel: 设置流量控制的最低视频帧率阈值。
setMinVideoResolutionForTrafficControl:height:channel: 设置流量控制的最低视频分辨率阈值。
setTrafficControlFocusOn: 设置触发流量控制的关注因素。
setTrafficControlFocusOn:channel: 设置指定推流通道的触发流量控制的关注因素。
setCaptureVolume: 设置推流端采集音量。
setAudioCaptureStereoMode: 设置音频采集双声道模式。
addPublishCdnUrl:streamID:callback: 增加转推至 CDN 的 URL。
addPublishCdnUrl:streamID:timeout:callback: 增加转推至 CDN 的 URL。
removePublishCdnUrl:streamID:callback: 删除转推至 CDN 的 URL。
enablePublishDirectToCDN:config: 是否直接推流到 CDN(不经过 ZEGO RTC 服务器)。
enablePublishDirectToCDN:config:channel: 是否直接推流到 CDN(不经过 ZEGO RTC 服务器), 支持设置其他通道的推流。
setPublishWatermark:isPreviewVisible: 设置推流水印。
setPublishWatermark:isPreviewVisible:channel: 设置推流水印,支持设置其他通道的推流。
setSEIConfig: 设置媒体增强补充信息类型。
sendSEI: 发送媒体增强补充信息。
sendSEI:channel: 指定推流通道号,发送媒体增强补充信息。
sendSEISyncWithCustomVideo:timeStampNs:channel: 自定义视频采集时发送与当前视频帧同步的媒体增强补充信息。
sendAudioSideInfo:timeStampMs:channel: 发送音频次要信息。
enableHardwareEncoder: 开/关硬件编码。
setCapturePipelineScaleMode: 设置采集缩放时机,视频数据是采集的时候立即缩放还是编码时才进行缩放。
setDummyCaptureImagePath:channel: 设置关闭摄像头时所推静态图片的路径
setDummyCaptureImageParams:channel: 设置关闭摄像头时所推静态图片的参数。
enableH265EncodeFallback: 是否开启 H.265 编码自动降级到 H.264 编码。
isVideoEncoderSupported: 是否支持指定视频编码类型。
isVideoEncoderSupported:codecBackend: 是否支持指定的视频编码类型和实现方式。
setAppOrientationMode: 设置视频的朝向模式。
setLowlightEnhancement:channel: 设置低照度增强。
setLowlightEnhancementParams:channel: 设置低照度增强参数。
setVideoDenoiseParams:channel: 设置视频降噪参数。
setVideoSource: 设置视频采集源。
setVideoSource:instanceID: 设置视频采集源实例作为视频采集源。
setVideoSource:channel: 设置指定推流通道的视频采集源。
setVideoSource:instanceID:channel: 设置视频采集源实例作为指定推流通道的视频采集源。
setAudioSource: 设置音频采集源
setAudioSource:channel: 为指定推流通道设置音频采集源
setAudioSource:config: 设置音频采集源及混音配置
enableVideoObjectSegmentation:type:channel: 开启主体分割。
enableVideoObjectSegmentation:config:channel: 开启主体分割。
enableAlphaChannelVideoEncoder:alphaLayout:channel: 开启视频编码器透明通道支持。
setCameraStabilizationMode:channel: 设置摄像机稳定模式。
enableAuxBgmBalance: 开启或关闭根据伴奏音量,自适应调整人声音量。
enableFaceDetection:channel: 开启或关闭人脸检测。
onPublisherStateUpdate:errorCode:extendedData:streamID: 推流状态回调。
onPublisherQualityUpdate:streamID: 推流质量回调。
onPublisherCapturedAudioFirstFrame 音频采集首帧回调接口。
onPublisherCapturedVideoFirstFrame: 视频采集首帧回调接口。
onPublisherSendAudioFirstFrame: 推流端音频发送首帧回调。
onPublisherSendVideoFirstFrame: 推流端视频发送首帧回调。
onPublisherRenderVideoFirstFrame: 推流端视频渲染首帧回调。
onPublisherVideoSizeChanged:channel: 采集视频大小变更回调。
onPublisherRelayCDNStateUpdate:streamID: 添加/删除转推 CDN 地址状态回调。
onPublisherVideoEncoderChanged:toCodecID:channel: 视频编码器变更回调。
onPublisherStreamEvent:streamID:extraInfo: 推流事件回调。
onVideoObjectSegmentationStateChanged:channel:errorCode: 视频主体分割状态变化。
onPublisherLowFpsWarning:channel: 视频编码低帧率警告。
onPublisherDummyCaptureImagePathError:path:channel: 通知设置关闭摄像头时所推静态图片的路径错误。
onPublisherFaceDetectInfo:channel: 人脸检测信息更新通知。

拉流功能

方法名 描述
startPlayingStream:canvas: 开始拉流(从 ZEGO RTC 网络)。
startPlayingStream:canvas:config: 开始拉流(从 ZEGO RTC 服务器或第三方 CDN),支持多房间模式。
startPlayingStream: 开始拉流(从 ZEGO RTC 服务器),不带 Canvas 参数,更适用于纯音频流。
startPlayingStream:config: 开始拉流(从 ZEGO RTC 服务器或第三方 CDN),不带 Canvas 参数,更适用于纯音频流。
startPlayingStreamInScene:canvas:config: 使用范围场景功能时,开始拉流(从 ZEGO RTC 服务器或第三方 CDN)。
startPlayingStreamInScene:config: 使用范围场景功能时,开始拉流(从 ZEGO RTC 服务器或第三方 CDN),不带 Canvas 参数,更适用于纯音频流。
switchPlayingStream:toStreamID:config: 从拉某条流切换为拉另外的流。
stopPlayingStream: 停止拉流。
setPlayStreamDecryptionKey:streamID: 设置拉流解密密钥。
setPlayStreamCrossAppInfo:streamID: 设置跨 App 拉流信息。
takePlayStreamSnapshot:callback: 拉流画面截图。
setPlayVolume:audioEffectID: 设置拉流音量。
setAllPlayStreamVolume: 设置所有拉流音量。
setPlayStreamVideoType:streamID: 设置播放视频流类型。
setPlayStreamBufferIntervalRange:min:max: 设置拉流播放缓存自适应调整的区间范围。
setPlayStreamFocusOn: 设置拉音视频流优先级的权重。
mutePlayStreamAudio:streamID: 拉流是否可接收指定音频数据。
mutePlayStreamVideo:streamID: 拉流是否可接收指定视频数据。
muteAllPlayStreamAudio: 拉流是否接收所有音频数据。(当设置为true时, 调用[mutePlayStreamAudio]不会生效)
muteAllPlayAudioStreams: 拉流是否接收所有音频数据。
muteAllPlayStreamVideo: 拉流是否可接收所有视频数据。(当设置为true时, 调用[mutePlayStreamVideo]不会生效)
muteAllPlayVideoStreams: 拉流是否可接收所有视频数据
enableHardwareDecoder: 开/关硬件解码。
enableCheckPoc: 开/关帧顺序检测。
isVideoDecoderSupported: 是否支持指定视频解码格式。
isVideoDecoderSupported:codecBackend: 是否支持指定视频解码格式。
setPlayStreamsAlignmentProperty: 设置拉流对齐属性。
enableVideoSuperResolution:enable: 开启视频画面超分。
initVideoSuperResolution 初始化视频画面超分。
uninitVideoSuperResolution 反初始化视频画面超分。
updatePlayingCanvas:canvas: 更新拉流视图。
onPlayerStateUpdate:errorCode:extendedData:streamID: 拉流状态变更回调。
onPlayerSwitched:streamID: 切换拉流结果回调。
onPlayerQualityUpdate:streamID: 拉流质量回调。
onPlayerMediaEvent:streamID: 拉流媒体事件回调。
onPlayerRecvAudioFirstFrame: 拉流端音频接收首帧回调。
onPlayerRecvVideoFirstFrame: 拉流端视频接收首帧回调。
onPlayerSyncRecvVideoFirstFrame: 拉流端视频接收首帧回调,请不要在回调线程调用 SDK 接口。
onPlayerRenderVideoFirstFrame: 拉流端渲染完视频首帧回调。
onPlayerRenderCameraVideoFirstFrame: 拉流端渲染完远端摄像头视频首帧回调。
onPlayerVideoSizeChanged:streamID: 拉流分辨率变更通知。
onPlayerRecvSEI:streamID: 收到远端流的 SEI 内容。
onPlayerSyncRecvSEI:streamID: 同步接收远端流的 SEI 内容。
onPlayerRecvMediaSideInfo: 同步接收远端流的 SEI 内容,包含时间戳。
onPlayerRecvAudioSideInfo:streamID: 收到远端流的音频次要信息内容。
onPlayerLowFpsWarning:streamID: 拉流低帧率警告。
onPlayerStreamEvent:streamID:extraInfo: 拉流事件回调。
onPlayerVideoSuperResolutionUpdate:state:errorCode: 拉流视频超分辨率开启状态变化。

信令消息功能

方法名 描述
createRealTimeSequentialDataManager: 创建实时有序数据管理器对象
destroyRealTimeSequentialDataManager: 销毁实时有序数据管理器对象
setEventHandler: 设置实时有序数据管理器回调
startBroadcasting: 开始广播实时有序数据流。
stopBroadcasting: 停止广播实时有序数据流
sendRealTimeSequentialData:streamID:callback: 在广播中的流 ID 上发送实时有序数据
startSubscribing: 开始订阅实时有序数据流。
stopSubscribing: 停止订阅实时有序数据流。
getIndex 获取实时有序数据管理器索引。
manager:receiveRealTimeSequentialData:streamID 收到实时有序数据回调
sendBroadcastMessage:roomID:callback: 发送房间广播消息。
sendBarrageMessage:roomID:callback: 发送房间弹幕消息。
sendCustomCommand:callback: 发送自定义信令。
sendTransparentMessage:roomID:callback: 发送透传消息。
onRecvRoomTransparentMessage:roomID: 接收房间透传消息。
onIMRecvBroadcastMessage:roomID: 接收房间广播消息通知。
onIMRecvBarrageMessage:roomID: 接收房间弹幕消息通知。
onIMRecvCustomCommand:fromUser:roomID: 接收自定义信令通知。

混流功能

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

音视频前处理

方法名 描述
enableAEC: 是否开启回声消除。
enableHeadphoneAEC: 是否在使用耳机时开启回声消除。
setAECMode: 设置回声消除模式
enableAGC: 开/关自动增益控制
enableANS: 开/关噪声抑制
enableTransientANS: 开/关瞬态噪声抑制
setANSMode: 设置音频噪声抑制模式
enableSpeechEnhance:level: 开启或关闭人声增强。
enableAudioMixing: 开/关混音功能
setAudioMixingHandler: 设置混音回调
muteLocalAudioMixing: 静音或恢复本地播放混音声音。
setAudioMixingVolume: 设置混音音量(同时设置本地和远端的音量)
setAudioMixingVolume:type: 设置混音音量(可分别设置本地、远端的音量)
startEffectsEnv 开启 Effects 美颜环境。
stopEffectsEnv 关闭 Effects 美颜环境。
enableEffectsBeauty: 开启或关闭美颜效果。
setEffectsBeautyParam: 设置美颜效果参数。
setAudioEqualizerGain:bandGain: 设置音效均衡器(EQ)。
setVoiceChangerPreset: 通过预设枚举设置变声。
setVoiceChangerParam: 设置变声的具体参数。
setReverbPreset: 通过预设枚举设置混响。
setReverbAdvancedParam: 设置混响的具体参数。
setReverbEchoParam: 设置混响回声效果的具体参数。
enableVirtualStereo:angle: 开启或关闭推流时的虚拟立体声效果。
enablePlayStreamVirtualStereo:angle:streamID: 开启或关闭拉流时的虚拟立体声效果。
setElectronicEffects:mode:tonal: 开启或关闭电音效果。
enableColorEnhancement:params:channel: 开启色彩增强。
onAudioMixingCopyData: 混音数据回调。

媒体播放器功能

方法名 描述
createMediaPlayer 创建媒体播放器实例对象。
destroyMediaPlayer: 销毁媒体播放器实例对象。
setEventHandler: 设置媒体播放器的事件回调。
setVideoHandler:format:type: 设置媒体播放器的视频数据回调。
setAudioHandler: 设置媒体播放器的音频数据回调。
setBlockDataHandler:blockSize: 设置媒体播放器的媒体资源块数据回调。
loadResource:audioEffectID:callback: 加载本地或者网络媒体资源。
loadResourceWithPosition:startPosition:callback: 加载本地或者网络媒体资源,并指定开始位置。
loadResourceFromMediaData:startPosition:callback: 加载二进制的音频媒体资源。
loadCopyrightedMusicResourceWithPosition:startPosition:callback: 加载版权音乐资源。
loadResourceWithConfig:callback: 加载本地或者网络媒体资源,带配置参数。
start:path:config: 开始播放
stop: 停止播放
pause: 暂停播放
resume: 恢复播放
seekTo: 设置指定的播放进度
enableRepeat: 是否重复播放
setPlaySpeed:audioEffectID: 设置播放倍速。
enableAux: 是否将播放器的声音混入正在推的流中
muteLocal: 是否静默本地播放
setPlayerCanvas: 设置播放器播放视频的视图
setVolume:audioEffectID: 设置播放器音量,会同时设置本地播放音量和推流音量
setPlayVolume:audioEffectID: 设置播放器本地播放音量
setPublishVolume:audioEffectID: 设置播放器推流音量
setProgressInterval: 设置播放进度回调间隔
playVolume 获取当前媒体播放器本地播放的音量,范围为 0 ~ 200,默认值为 60
publishVolume 获取当前媒体播放器推流的音量,范围为 0 ~ 200,默认值为 60
getTotalDuration 获取媒体资源的总进度
getCurrentProgress: 获取当前播放进度
currentRenderingProgress 获取当前渲染进度
audioTrackCount 获取播放文件的音轨个数
setAudioTrackIndex: 设置播放文件的音轨
setAudioTrackMode: 设置播放器的音轨模式
setAudioTrackPublishIndex: 设置媒体文件需要推流的音轨
enableVoiceChanger:param:audioChannel: 开启变声,设置变声的具体参数。
currentState 获取当前播放状态
getIndex 获取媒体播放器的序号
takeSnapshot: 对媒体播放器当前播放画面进行截图
enableAccurateSeek:config: 开启精准 seek 并设置相关属性
setNetWorkResourceMaxCache:size: 设置网络素材最大的缓存时长和缓存数据大小
getNetWorkResourceCache 获取当前网络素材缓存队列的缓存数据可播放的时长和缓存数据大小
setNetWorkBufferThreshold: 通过该接口设置媒体播放器重新恢复播放需要达到的缓存阈值,SDK 默认值是 5000ms,有效值为大于等于1000ms
enableSoundLevelMonitor:millisecond: 是否开启声浪监听。
enableFrequencySpectrumMonitor:millisecond: 是否开启频谱监听。
setActiveAudioChannel: 设置播放声道。
clearView 清除播放控件播放结束后, 在控件上保留的最后一帧画面。
getMediaInfo 获取媒体文件视频分辨率等媒体信息。
updatePosition:position: 更新媒体播放器(音频源)位置。
setHttpHeader: 设置 http 头信息。
setPlayMediaStreamType: 设置播放的媒体流类型。
enableLiveAudioEffect:mode: 开启现场音效。
enableLocalCache:cacheDir: 开启本地缓存 http/https 网络资源。
enableViewMirror: 开启画面镜像。
getPlaybackStatistics 获取播放统计信息。
mediaPlayer:stateUpdate:errorCode 媒体播放器播放状态回调。
mediaPlayer:networkEvent 媒体播放器网络状态事件回调。
mediaPlayer:playingProgress 播放器播放进度回调。
mediaPlayer:renderingProgress 播放器渲染进度回调。
mediaPlayer:videoSizeChanged 媒体播放器播放视频分辨率改变事件回调。
mediaPlayer:recvSEI 媒体次要信息回调。
mediaPlayer:soundLevelUpdate 声浪更新回调。
mediaPlayer:frequencySpectrumUpdate 频谱更新回调。
mediaPlayer:firstFrameEvent 媒体播放器播放首帧回调。
mediaPlayer:localCacheError:resource:cachedFile 媒体播放器本地缓存 http/https 网络资源后回调。
mediaPlayer:videoFrameRawData:dataLength:param 播放器抛视频数据的回调。
mediaPlayer:videoFrameRawData:dataLength:param:extraInfo 播放器抛视频数据的回调,带视频帧附加信息。
mediaPlayer:videoFramePixelBuffer:param 播放器视频帧 CVPixelBuffer 数据回调
mediaPlayer:videoFramePixelBuffer:param:extraInfo 播放器视频帧 CVPixelBuffer 数据回调
mediaPlayer:audioFrameData:dataLength:param 播放器抛音频数据的回调。
mediaPlayer:blockBegin 播放器开始抛出媒体资源块数据的回调。
mediaPlayer:blockData:bufferSize 播放器抛出媒体资源块数据的回调。

音效播放器功能

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

录制功能

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

设备管理

方法名 描述
muteMicrophone: 设置是否静音(关闭麦克风)。
isMicrophoneMuted 检查麦克风是否设置为静音。
muteSpeaker: 设置是否静音(关闭音频输出)。
isSpeakerMuted 检查音频输出是否静音。
getAudioDeviceList: 获取音频设备列表
getDefaultAudioDeviceID: 获取默认音频设备 ID
useAudioDevice:deviceType: 选择使用某个音频设备
getAudioDeviceVolume:deviceType: 获取音频设备音量
setAudioDeviceVolume:deviceType:volume: 设置音频设备音量。
startAudioDeviceVolumeMonitor:deviceType: 开启音频设备音量监控。
stopAudioDeviceVolumeMonitor:deviceType: 停止音频设备音量监控。
muteAudioDevice:deviceType:mute: 静音或取消静音音频设备。
setAudioDeviceMode: 设置音频设备模式。
isAudioDeviceMuted:deviceType: 检查音频设备是否静音
enableAudioCaptureDevice: 开/关音频采集设备。
getAudioRouteType 获取当前音频路由。
setAudioRouteToSpeaker: 设置音频路由到扬声器。
enableCamera: 开/关摄像头。
enableCamera:channel: 开/关摄像头,支持设置其他通道的推流。
enableCamera:notifyMode:channel: 开/关摄像头,支持设置其他通道的推流。
useFrontCamera: 切换前后摄像头。
useFrontCamera:channel: 切换前后摄像头,支持指定推流通道。
isCameraFocusSupported: 摄像头是否支持对焦
setCameraFocusMode:channel: 设置摄像头对焦模式。
setCameraFocusPointInPreviewX:y:channel: 设置预览视图中的对焦点。
setCameraExposureMode:channel: 设置摄像头曝光模式。
setCameraExposurePointInPreviewX:y:channel: 设置预览视图中的曝光点。
setCameraExposureCompensation: 设置摄像头曝光补偿数值。
setCameraExposureCompensation:channel: 设置摄像头曝光补偿数值,支持指定推流通道号。
setCameraZoomFactor: 设置摄像头变焦倍数。每次摄像头重新启动时,摄像头变焦倍数都将会恢复初始值 (1.0)。
setCameraZoomFactor:channel: 设置摄像头变焦倍数,支持指定推流通道号。每次摄像头重新启动时,摄像头变焦倍数都将会恢复初始值 (1.0)。
getCameraMaxZoomFactor 获取摄像头最大变焦倍数
getCameraMaxZoomFactor: 获取摄像头最大变焦倍数,支持指定推流通道号。
enableCameraAdaptiveFPS:minFPS:maxFPS:channel: 开启摄像头自适应帧率
useVideoDevice: 选择使用某个视频设备
useVideoDevice:channel: 选择使用某个视频设备,支持设置指定推流通道
getVideoDeviceList 获取视频设备列表
getDefaultVideoDeviceID 获取默认视频设备 ID
startSoundLevelMonitor 启动声浪监控。
startSoundLevelMonitor: 启动声浪监控,支持设置监听间隔。
startSoundLevelMonitorWithConfig:: 启动声浪监控,支持开启进阶功能。
stopSoundLevelMonitor 停止声浪监控。
startAudioSpectrumMonitor 启动音频频谱监控。
startAudioSpectrumMonitor: 启动音频频谱监控,支持设置监听间隔。
stopAudioSpectrumMonitor 停止音频频谱监控。
enableHeadphoneMonitor: 开启/关闭 耳返。
setHeadphoneMonitorVolume: 设置耳返音量。
enableMixSystemPlayout: 开启/关闭系统声卡采集。
setMixSystemPlayoutVolume: 设置系统声卡采集的音量。
enableMixEnginePlayout: 是否将 SDK 播放的声音混到推流中。
startAudioVADStableStateMonitor: 开始语音的稳态检测。
startAudioVADStableStateMonitor:millisecond: 开始语音的稳态检测,可设置检测周期。
stopAudioVADStableStateMonitor: 停止语音的稳态检测。
onAudioDeviceStateChanged:updateType:deviceType: 音频设备状态改变
onAudioDeviceVolumeChanged:deviceType:deviceID: 音频设备音量变更。
onVideoDeviceStateChanged:updateType: 视频设备状态改变。
onCapturedSoundLevelUpdate: 本地采集音频声浪回调。
onCapturedSoundLevelInfoUpdate: 本地采集音频声浪回调,支持人声检测。
onRemoteSoundLevelUpdate: 远端拉流音频声浪回调。
onRemoteSoundLevelInfoUpdate: 远端拉流音频声浪回调,支持人声检测。
onCapturedAudioSpectrumUpdate: 本地采集音频频谱回调。
onRemoteAudioSpectrumUpdate: 远端拉流音频频谱回调。
onLocalDeviceExceptionOccurred:deviceType:deviceID: 本地设备异常通知。
onRemoteCameraStateUpdate:streamID: 远端摄像头设备状态通知。
onRemoteMicStateUpdate:streamID: 远端麦克风设备状态通知。
onRemoteSpeakerStateUpdate:streamID: 远端扬声器设备状态通知。
onAudioRouteChange: 音频设备路由变更通知。
onAudioVADStateUpdate:monitorType 检测音频数据的稳态语音状态的回调。
getCurrentAudioDevice: 获取当前使用的音频设备信息。

自定义视频采集和渲染

方法名 描述
enableCustomVideoRender:config: 开始或停止自定义视频渲染。
setCustomVideoRenderHandler: 设置自定义视频渲染回调。
enableCapturedVideoCustomVideoRender:channel: 开始或停止采集的视频做自定义视频渲染。
enableRemoteVideoCustomVideoRender:streamID: 开始或停止远端拉流的视频做自定义视频渲染。
enableCustomVideoCapture:config: 开始或停止自定义视频采集。
enableCustomVideoCapture:config:channel: 开始或停止自定义视频采集,支持设置其他通道的推流。
setCustomVideoCaptureHandler: 设置自定义视频采集回调。
sendCustomVideoCaptureTextureData:size:timestamp: 向 SDK 发送自定义采集的视频帧 Texture 数据。
sendCustomVideoCaptureTextureData:size:timestamp:channel: 向 SDK 发送自定义采集的视频帧 Texture 数据,支持其他路推流。
sendCustomVideoCapturePixelBuffer:timestamp: 向 SDK 发送自定义采集的视频帧 CVPixelBuffer 数据。
sendCustomVideoCapturePixelBuffer:timestamp:channel: 向 SDK 发送自定义采集的视频帧 CVPixelBuffer 数据,支持其他路推流
sendCustomVideoCaptureEncodedData:params:timestamp: 给 SDK 发送自定义采集的视频帧编码后的数据。
sendCustomVideoCaptureEncodedData:params:timestamp:channel: 给 SDK 发送自定义采集的视频帧编码后的数据,支持指定推流通道。
setCustomVideoCaptureFillMode: 设置自定义视频采集画面缩放填充模式。
setCustomVideoCaptureFillMode:channel: 设置自定义视频采集画面缩放填充模式,支持其他路推流
setCustomVideoCaptureFlipMode: 设置自定义采集画面翻转模式,仅当自定义采集类型为 Texture2D 时,此函数生效。
setCustomVideoCaptureFlipMode:channel: 设置自定义采集画面翻转模式,支持其他路推流。仅当自定义采集类型为 Texture2D 时,此函数生效。
setCustomVideoCaptureRotation:channel: 设置指定推流通道自定义采集画面旋转角度。
setCustomVideoCaptureDeviceState:state:channel: 设置指定推流通道自定义采集设备状态。
setCustomVideoCaptureRegionOfInterest:channel: 设置指定推流通道自定义视频采集编码器的感兴趣区域(ROI)。
onStart: 自定义视频采集开始的通知。
onStop: 自定义视频采集结束的通知。
onEncodedDataTrafficControl:channel: 自定义视频采集时检测到网络变化,通知开发者需要做流量控制,根据SDK的推荐参数调整编码配置。
onCapturedVideoFrameRawData:dataLength:param:flipMode:channel: 开启自定义视频渲染时,本地预览采集的原始视频帧数据回调。
onRemoteVideoFrameRawData:dataLength:param:streamID: 开启自定义视频渲染时,远端拉流原始视频帧数据回调,通过 streamID 区分不同的流。
onCapturedVideoFrameCVPixelBuffer:param:flipMode:channel: 自定义视频渲染本地预览视频帧 CVPixelBuffer 数据回调。
onRemoteVideoFrameCVPixelBuffer:param:streamID: 自定义视频渲染远端拉流视频帧 CVPixelBuffer 数据回调。
onRemoteVideoFrameEncodedData:dataLength:param:referenceTimeMillisecond:streamID: 自定义视频渲染远端拉流视频帧未解码数据回调。
prepareForReplayKit 初始化 Express ReplayKit 模块
setReplayKitMicrophoneVolume: 设置 ReplayKit Microphone 音频音量
setReplayKitApplicationVolume: 设置 ReplayKit Application 音频音量
handleReplayKitSampleBuffer:bufferType 处理 ReplayKit 的 SampleBuffer,支持接收视频与音频 Buffer
enableCustomVideoProcessing:config: 自定义视频前处理配置开关。
enableCustomVideoProcessing:config:channel: 自定义视频前处理配置开关,支持指定推流通道号。
setCustomVideoProcessHandler: 设置自定义视频前处理回调。
sendCustomVideoProcessedCVPixelBuffer:timestamp: 将自定义视频前处理后的 [CVPixelBuffer] 类型视频数据发送给 SDK。
sendCustomVideoProcessedCVPixelBuffer:timestamp:channel: 将自定义视频前处理后的 [CVPixelBuffer] 类型视频数据发送给 SDK。支持其他路推流。
sendCustomVideoProcessedCVPixelBuffer:timestamp:usage:channel: 将自定义视频前处理后的 [CVPixelBuffer] 类型视频数据发送给 SDK。支持其他路推流,并且支持指定数据用途。
onStart: SDK 通知开发者将要开始进行视频前处理。
onStop: SDK 通知开发者停止进行视频前处理。
onCapturedUnprocessedCVPixelBuffer:timestamp:channel: 当获取到 [CVPixelBuffer] 类型的原始视频数据时回调。

自定义音频采集和渲染

方法名 描述
enableCustomAudioCaptureProcessing:config: 开启本地采集自定义音频处理(耳返前)。
enableCustomAudioCaptureProcessingAfterHeadphoneMonitor:config: 开启本地采集自定义音频处理(耳返后)。
enableAlignedAudioAuxData:param: 开启抛出与伴奏对齐的音频混音数据功能。
enableBeforeAudioPrepAudioData:param: 开启抛出 SDK 内部音频前处理前的音频数据功能。
enableCustomAudioRemoteProcessing:config: 开启远端拉流自定义音频处理。
enableCustomAudioPlaybackProcessing:config: 开启 SDK 播放的音频数据的自定义音频处理。
setCustomAudioProcessHandler: 设置自定义音频处理回调。
startAudioDataObserver:param: 开启音频数据回调监测。
stopAudioDataObserver 停止音频数据回调监测。
setAudioDataHandler: 设置额外接收音频数据的回调。
enableCustomAudioIO:config: 开启自定义音频 IO 功能。
enableCustomAudioIO:config:channel: 开启自定义音频 IO 功能,支持其他路推流,支持 PCM 、AAC 格式数据。
sendCustomAudioCaptureAACData:dataLength:configLength:timestamp:samples:param:channel: 发送自定义音频采集 AAC 数据,支持设置其他通道的推流。
sendCustomAudioCapturePCMData:dataLength:param: 发送自定义音频采集 PCM 数据。
sendCustomAudioCapturePCMData:dataLength:param:channel: 发送自定义音频采集 PCM 数据,支持其他路推流。
fetchCustomAudioRenderPCMData:dataLength:param: 从 SDK 取远端拉流自定义音频渲染 PCM 数据。
sendReferenceAudioPCMData:dataLength:param: 向 SDK 发送由开发者自定义处理后的 PCM 音频数据,用作对自定义渲染音频消除回声的参考。
onProcessCapturedAudioData:dataLength:param:timestamp: 自定义音频处理本地采集 PCM 音频帧回调。
onProcessCapturedAudioDataAfterUsedHeadphoneMonitor:dataLength:param:timestamp: 自定义音频处理本地采集使用耳返后的 PCM 音频帧回调。
onAlignedAudioAuxData:dataLength:param: 与伴奏对齐的音频混音数据回调
onBeforeAudioPrepAudioData:dataLength:param: SDK 内部音频前处理前的音频数据回调。
onProcessRemoteAudioData:dataLength:param:streamID:timestamp: 自定义音频处理远端拉流 PCM 音频帧回调。
onProcessPlaybackAudioData:dataLength:param:timestamp: 自定义音频处理 SDK 播放音频的 PCM 音频帧回调。
onCapturedAudioData:dataLength:param: 获取本地麦克风采集到的音频数据的回调.
onPlaybackAudioData:dataLength:param: 获取 SDK 播放的音频数据的回调。
onMixedAudioData:dataLength:param: 获取 SDK 播放的音频数据和本地麦克风采集到的音频数据的回调,该音频数据是经过 SDK 混合之后的数据。
onPlayerAudioData:dataLength:param:streamID: 获取 SDK 每条拉流的音频数据的回调。

媒体推流器

方法名 描述
createMediaDataPublisher: 创建媒体数据推流器实例对象
destroyMediaDataPublisher: 销毁媒体数据推流器实例对象。
setEventHandler: 设置媒体推流器的事件回调。
addMediaFilePath:isClear: 添加媒体文件到推流队列中。目前仅支持 mp4 / m4a / aac 文件,且需要做特殊转换。
reset 清除此媒体推流器中的所有状态,以便下次推流时重新开始。
setVideoSendDelayTime: 设置推迟视频播放时间。
seekTo: 指定当前视频文件推流发送的时间起始点。
getTotalDuration 获取当前文件的总时长。
getCurrentDuration 获取当前文件的播放进度。
getIndex 获取媒体推流器的推流通道号。
mediaDataPublisher:fileOpen 媒体推流器打开媒体文件的事件回调。
mediaDataPublisher:fileClose:errorCode 媒体推流器关闭媒体文件的事件回调
mediaDataPublisher:fileDataBegin 媒体推流器开始读取到了媒体文件数据的事件回调。
mediaDataPublisher:fileDataEnd 媒体推流器已完成一个文件推流的回调。

实用工具

方法名 描述
startPerformanceMonitor: 启动系统性能监控。
stopPerformanceMonitor 停止系统性能监控。
startNetworkProbe:callback: 启动网络探测。
stopNetworkProbe 停止网络探测。
testNetworkConnectivity: 测试网络连通性
startNetworkSpeedTest: 启动网络测速。
startNetworkSpeedTest:interval: 启动网络测速,支持设置测速周期。
stopNetworkSpeedTest 停止网络测速。
getNetworkTimeInfo 获取同步网络时间信息。
startDumpData: 转储音视频数据。
stopDumpData 停止转储数据
uploadDumpData 上传转储数据到 ZEGO 服务端
removeDumpData 删除转储数据。
onPerformanceStatusUpdate: 系统性能监控回调。
onNetworkModeChanged: 网络模式变更回调。
onNetworkSpeedTestError:type: 网络测速异常回调。
onNetworkSpeedTestQualityUpdate:type: 网络测速质量回调。
onNetworkQuality:upstreamQuality:downstreamQuality: 房间内正在推流的用户的网络质量回调。
onRtcStats: RTC 网络统计信息回调。
onNetworkTimeSynchronized 网络时间同步成功的回调
onRequestDumpData 请求转储数据的回调。
onRequestUploadDumpData:takePhoto: 请求转储数据的回调。
onStartDumpData: 开始转储数据时的回调。
onStopDumpData:dumpDir: 停止转储数据时的回调。
onUploadDumpData: 上传转储数据完成后的回调。

范围语音

方法名 描述
createRangeAudio 创建范围语音实例对象。
destroyRangeAudio: 销毁范围语音实例对象。
setEventHandler: 设置范围语音回调。
setAudioReceiveRange: 设置音频接收距离的最大范围。
setAudioReceiveRangeWithParam: 设置音频接收范围的配置。
setPositionUpdateFrequency: 设置SDK内部实时更新位置的频率
setRangeAudioVolume: 设置范围语音音量
setStreamVocalRange:vocalRange: 设置流的发声范围
setStreamVocalRangeWithParam:param: 设置流的发声范围
updateStreamPosition:position: 更新流的位置
updateSelfPosition:axisForward:axisRight:axisUp: 更新自身的位置和朝向。
updateAudioSource:position: 添加或更新音源位置信息。
enableSpatializer: 开启或关闭 3D 音效。
enableMicrophone: 开启或关闭麦克风。
enableSpeaker: 开启或关闭扬声器。
setRangeAudioMode: 设置范围语音模式。
setRangeAudioCustomMode:listenMode: 设置范围语音的高阶自定义模式。
setTeamID: 设置队伍 ID
muteUser:mute: 是否可接收指定用户音频数据。
rangeAudio:microphoneStateUpdate:errorCode 范围语音麦克风使用状态回调。

版权音乐

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

废弃接口列表

方法名 描述
setPlayStreamBufferIntervalRange:streamID: 【已废弃】设置拉流播放缓存自适应调整的区间范围。
enableBeautify: 【已废弃】开/关美颜,为主推流通道设置。此函数在 2.16.0 版本及以上已废弃,请使用 [enableEffectsBeauty] 函数代替。
enableBeautify:channel: 【已废弃】开/关美颜,为任意推流通道设置。此函数在 2.16.0 版本及以上已废弃,请使用 [enableEffectsBeauty] 函数代替。
setBeautifyOption: 【已废弃】设置美颜参数。此函数在 2.16.0 版本及以上已废弃,请使用 [setEffectsBeautyParam] 函数代替。
setBeautifyOption:channel: 【已废弃】设置美颜参数。此函数在 2.16.0 版本及以上已废弃,请使用 [setEffectsBeautyParam] 函数代替。
createEngineWithAppID:appSign:isTestEnv:scenario:eventHandler: 【已废弃】创建 ZegoExpressEngine 单例对象并初始化 SDK。此函数在 2.14.0 版本及以上已废弃,请使用不带 [isTestEnv] 参数的同名函数代替。请参考 测试环境废弃说明
requestSong:callback: 【已废弃】点歌。此函数在 3.0.2 版本及以上已废弃,请使用 [requestResource] 函数代替。
requestAccompaniment:callback: 【已废弃】点伴奏。此函数在 3.0.2 版本及以上已废弃,请使用 [requestResource] 函数代替。
requestAccompanimentClip:callback: 【已废弃】点伴奏高潮片段。此函数在 3.0.2 版本及以上已废弃,请使用 [requestResource] 函数代替。
getMusicByToken:callback: 【已废弃】获取歌曲或伴奏。此函数在 3.0.2 版本及以上已废弃,请使用 [getSharedResource] 函数代替。
getLrcLyric:callback: 【已废弃】获取 lrc 格式歌词。此函数在 3.2.1 版本及以上已废弃,请使用带 [vendorID] 参数的同名函数代替。
queryCache:type: 【已废弃】查询资源是否有缓存。此函数在 3.2.1 版本及以上已废弃,请使用带 [vendorID] 参数的同名函数代替。
queryCache:type:vendorID: 【已废弃】查询资源是否有缓存。此函数在 3.9.0 版本及以上已废弃,请使用带 [config] 参数的同名函数代替。
setVoiceChangerParam:audioChannel: 【已废弃】设置变声的具体参数
本篇目录
  • 免费试用
  • 提交工单
    咨询集成、功能及报价等问题
    电话咨询
    400 1006 604
    咨询客服
    微信扫码,24h在线

    联系我们

  • 文档反馈