客户端 API

    功能总览

    更新时间:2023-11-24 10:37

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

    初始化相关的前置功能

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

    房间功能

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

    推流功能

    方法名 描述
    startPublishingStream 开始推流,支持多房间模式
    stopPublishingStream 停止推流,可停止指定通道的音视频流。
    startPreview 启动/更新本地预览,支持设置其他通道的推流。
    stopPreview 停止本地预览,支持设置其他通道的推流
    setVideoConfig 设置视频配置,支持设置其他通道的推流。
    getVideoConfig 获取当前视频配置,支持设置其他通道的推流
    setVideoMirrorMode 设置镜像模式,支持设置其他通道的推流。
    setAppOrientation 设置采集视频的朝向,支持设置其他通道的推流。
    setAudioConfig 设置指定推流通道的音频质量配置。
    getAudioConfig 获取指定推流通道的当前音频质量配置。
    takePublishStreamSnapshot 对指定推流通道的推流画面截图。
    mutePublishStreamAudio 停止或恢复发送指定推流通道的音频流。
    mutePublishStreamVideo 停止或恢复发送指定推流通道的视频流。
    enableTrafficControl 开始或停止指定推流通道的流量控制。
    setMinVideoBitrateForTrafficControl 设置指定推流通道的流量控制视频码率最低值
    setCaptureVolume 设置推流端采集音量。
    addPublishCdnUrl 增加转推至 CDN 的 URL。
    removePublishCdnUrl 删除转推至 CDN 的 URL。
    enablePublishDirectToCDN 是否直接推流到 CDN(不经过 ZEGO RTC 服务器), 支持设置其他通道的推流。
    setPublishWatermark 设置推流水印,支持设置其他通道的推流。
    enableHardwareEncoder 开/关硬件编码。
    setDummyCaptureImagePath 设置关闭摄像头时所推静态图片的路径
    publisherStateUpdate 推流状态回调。
    publisherQualityUpdate 推流质量回调。
    publisherCapturedAudioFirstFrame 音频采集首帧回调接口。
    publisherCapturedVideoFirstFrame 视频采集首帧回调接口。
    publisherRenderVideoFirstFrame 推流端视频渲染首帧回调。
    publisherVideoSizeChanged 采集视频大小变更回调。
    publisherRelayCDNStateUpdate 添加/删除转推 CDN 地址状态回调。

    拉流功能

    方法名 描述
    startPlayingStream 开始拉流(从 ZEGO RTC 服务器或第三方 CDN),支持多房间模式。
    stopPlayingStream 停止拉流。
    takePlayStreamSnapshot 拉流画面截图。
    setPlayVolume 设置拉流音量。
    setAllPlayStreamVolume 设置所有拉流音量。
    setPlayStreamVideoType 设置播放视频流类型。
    setPlayStreamBufferIntervalRange 设置拉流播放缓存自适应调整的区间范围。
    setPlayStreamFocusOn 设置拉流优先级的权重。
    mutePlayStreamAudio 拉流是否可接收指定音频数据。
    mutePlayStreamVideo 拉流是否可接收指定视频数据。
    muteAllPlayStreamAudio 拉流是否接收所有音频数据。
    muteAllPlayStreamVideo 拉流是否可接收所有视频数据
    enableHardwareDecoder 开/关硬件解码。
    playerStateUpdate 拉流状态变更回调。
    playerQualityUpdate 拉流质量回调。
    playerMediaEvent 拉流媒体事件回调。
    playerRecvAudioFirstFrame 拉流端音频接收首帧回调。
    playerRecvVideoFirstFrame 拉流端视频接收首帧回调。除 Linux 系统,此回调默认从 ui 线程抛出。
    playerRenderVideoFirstFrame 拉流端渲染完视频首帧回调。
    playerVideoSizeChanged 拉流分辨率变更通知。

    信令消息功能

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

    混流功能

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

    音视频前处理

    方法名 描述
    enableAEC 是否开启回声消除。
    enableHeadphoneAEC 是否在使用耳机时开启回声消除。
    setAECMode 设置回声消除模式
    enableAGC 开/关自动增益控制
    enableANS 开/关噪声抑制
    enableTransientANS 开/关瞬态噪声抑制
    setANSMode 设置音频噪声抑制模式
    startEffectsEnv 开启 Effects 美颜环境。
    stopEffectsEnv 关闭 Effects 美颜环境。
    enableEffectsBeauty 开启或关闭美颜效果。
    setEffectsBeautyParam 设置美颜效果参数。

    媒体播放器功能

    方法名 描述
    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 获取当前播放进度
    getAudioTrackCount 获取播放文件的音轨个数
    setAudioTrackIndex 设置播放文件的音轨
    setVoiceChangerParam 设置变声的具体参数
    getCurrentState 获取当前播放状态
    getIndex 获取媒体播放器的序号
    takeSnapshot 对媒体播放器当前播放画面进行截图
    enableAccurateSeek 开启精准 seek 并设置相关属性
    setNetworkResourceMaxCache 设置网络素材最大的缓存时长和缓存数据大小
    getNetworkResourceCache 获取当前网络素材缓存队列的缓存数据可播放的时长和缓存数据大小
    setNetworkBufferThreshold 通过该接口设置媒体播放器重新恢复播放需要达到的缓存阈值,SDK 默认值是 5000ms,有效值为大于等于1000ms
    on 注册监听媒体播放器事件回调
    off 注销监听媒体播放器事件回调
    mediaPlayerStateUpdate 媒体播放器播放状态回调。
    mediaPlayerNetworkEvent 媒体播放器网络状态事件回调。
    mediaPlayerPlayingProgress 播放器播放进度回调。

    音效播放器功能

    暂不支持

    录制功能

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

    设备管理

    方法名 描述
    muteMicrophone 设置是否静音(关闭麦克风)。
    isMicrophoneMuted 检查麦克风是否设置为静音。
    muteSpeaker 设置是否静音(关闭音频输出)。
    isSpeakerMuted 检查音频输出是否静音。
    enableAudioCaptureDevice 开/关音频采集设备。
    getAudioRouteType 获取当前音频路由。
    setAudioRouteToSpeaker 设置音频路由到扬声器。
    enableCamera 开/关摄像头,支持设置其他通道的推流。
    useFrontCamera 切换前后摄像头,支持设置其他通道的推流。
    setCameraZoomFactor 设置摄像头变焦倍数,支持指定推流通道号。每次摄像头重新启动时,摄像头变焦倍数都将会恢复初始值 (1.0)。
    getCameraMaxZoomFactor 获取摄像头最大变焦倍数,支持指定推流通道号。
    startSoundLevelMonitor 启动声浪监控,支持开启进阶功能。
    stopSoundLevelMonitor 停止声浪监控。
    enableHeadphoneMonitor 开启/关闭 耳返。
    setHeadphoneMonitorVolume 设置耳返音量。
    enableTorch 开启/关闭 手电筒。
    capturedSoundLevelInfoUpdate 本地采集音频声浪回调,支持人声检测。
    remoteSoundLevelUpdate 远端拉流音频声浪回调,支持人声检测。
    localDeviceExceptionOccurred 本地设备异常通知。
    remoteCameraStateUpdate 远端摄像头设备状态通知。
    remoteMicStateUpdate 远端麦克风设备状态通知。
    remoteSpeakerStateUpdate 远端扬声器设备状态通知。
    audioRouteChange 音频设备路由变更通知。

    自定义视频采集和渲染

    暂不支持

    自定义音频采集和渲染

    暂不支持

    媒体推流器

    暂不支持

    实用工具

    暂不支持

    范围语音

    暂不支持

    版权音乐

    暂不支持

    废弃接口列表

    方法名 描述
    createEngine 【已废弃】创建 ZegoExpressEngine 单例对象并初始化 SDK。此函数在 2.14.0 版本及以上已废弃,请使用不带 [isTestEnv] 参数的同名函数代替。请参考 测试环境废弃说明
    本篇目录