概述

聚联云提供各种客户端SDK,具有可以灵活搭配的API组合,通过SDK连接全球部署的实时通信网络,为业务提供质量稳定可靠的实时音视频通信服务。

聚联云SDK的代号为Thunderbolt,移动端特有的纯音频SDK代号为Thunder

说明:在文档中的事件回调如无特别指明,均通过IThunderEventHandler接口类进行监听。

基础方法

方法功能
createEngine创建 IThunderEngine 实例
initialize初始化 IThunderEngine 对象
destroyEngine销毁 IThunderEngine 对象

房间管理

方法功能
setArea设置用户国家区域
setMediaMode设置媒体模式
setRoomMode设置房间模式
joinRoom进入房间
leaveRoom离开房间
updateToken更新 Token
回调功能
onJoinRoomSuccess成功进入房间回调
onLeaveRoom离开房间回调
onSdkAuthResultSDK鉴权结果回调,关于鉴权详见官网的“用户鉴权说明”
onUserBanned用户被封禁状态回调
onRoomStats上下行流量回调(周期性回调,每2秒回调一次)
onBizAuthResult业务鉴权结果回调
onTokenWillExpiretoken 即将过期回调
onTokenRequesttoken 过期回调

音频开播

方法功能
setAudioConfig设置音频参数和使用场景
adjustRecordingSignalVolume设置麦克风音量
stopLocalAudioStream关闭/打开本地音频(包括启动采集、编码和推流)
enableLoopbackRecording开启/关闭声卡采集
setAudioSourceType设置音频开播类型
回调功能
onFirstLocalAudioFrameSent成功发送本地音频首帧回调
onLocalAudioStats本地发送音频流统计信息回调
onLocalAudioStatusChanged本地音频状态发生变化回调

音频订阅

方法功能
stopAllRemoteAudioStreams停止/接收所有音频流数据
stopRemoteAudioStream停止/接收指定用户音频流数据
adjustPlaybackSignalVolume设置本地全局的播放音量
setPlayVolume设置远程某个用户在本地的播放音量
回调功能
onRemoteAudioStopped远端用户音频流停播/开播回调
onRemoteAudioStatsOfUid远端音频流统计信息回调
onRemoteAudioPlay远端音频首帧播放回调
onRemoteAudioStateChangedOfUid远端用户音频状态改变回调

视频开播

方法功能
setVideoEncoderConfig设置视频编码配置
setLocalVideoCanvas设置本地视频的渲染视图
startVideoPreview开启视频预览
stopVideoPreview停止视频预览
setLocalCanvasScaleMode设置本地视图拉伸模式
setLocalVideoMirrorMode设置本地视频镜像模式
stopLocalVideoStream停止/开启本地视频(含编码)发送
getVideoEncoderParam根据编码档位配置获取视频编码参数
回调功能
onFirstLocalVideoFrameSent成功发送视频首帧回调
onLocalVideoStats本地发送视频流统计信息回调
onLocalVideoStatusChanged本地视频状态改变回调

视频订阅

方法功能
stopAllRemoteVideoStreams停止/接收所有视频流数据
stopRemoteVideoStream停止/接收指定用户视频流数据
setRemoteCanvasScaleMode设置远端视图拉伸模式
setRemoteVideoCanvas设置远端视频流的渲染视图
回调功能
onRemoteVideoStopped远端用户视频流停播/开播回调
onRemoteVideoStatsOfUid远端视频流统计信息回调
onRemoteVideoPlay已显示远端视频首帧回调
onVideoSizeChanged本地/远端视频分辨率改变回调
onRemoteVideoStateChangedOfUid远端视频流状态流状态改变回调

网络状态

方法功能
getConnectionStatus主动查询网络连接状态
回调功能
onNetworkQuality用户网络上下行质量回调
onNetworkTypeChanged网络状态变化回调
onConnectionStatus和服务器网络连接状态回调
onConnectionLost和服务器网络连接中断回调

开播检测

N/A

旁路直播

方法功能
setLiveTranscodingTask添加/更新转码任务
removeLiveTranscodingTask删除转码任务
removePublishTranscodingStreamUrl删除转码流的推流地址
addPublishTranscodingStreamUrl添加转码流的推流地址
addPublishOriginStreamUrl添加源流推流地址
removePublishOriginStreamUrl删除源流推流地址
enableMixVideoExtraInfo开启混画带媒体次要信息
回调功能
onPublishStreamToCDNStatusCDN推流结果回调

音频录制

方法功能
startAudioRecording开始音频录制
stopAudioRecording停止音频录制

跨房间连麦

方法功能
addSubscribe跨房间订阅指定用户的流
removeSubscribe取消订阅跨房间指定用户的流

摄像头管理

N/A

屏幕分享

方法功能
enumMonitorDevices枚举屏幕采集的可选监视器输入设备列表
startScreenCaptureForHwnd开始捕捉指定窗口
startScreenCaptureForScreen开始捕捉指定桌面指定区域
updateScreenCaptureRect更新捕捉的区域
stopScreenCapture停止捕捉桌面或窗口
pauseScreenCapture暂停捕捉桌面或窗口
resumeScreenCapture恢复捕捉桌面或窗口
setCaptureExcludeWindowList设置屏幕捕捉时需要排除的窗口列表

实时水印

方法功能
setVideoWatermark设置本地视频水印
removeVideoWatermarks清除本地视频水印

视频双流

N/A

音频播放器

方法功能
createThunderAudioPlayer创建音频文件播放对象 IThunderAudioPlayer
destroyThunderAudioPlayer销毁音频文件播放对象 IThunderAudioPlayer
方法功能
open打开伴奏文件
close关掉伴奏文件
play开始播放
stop停止播放
pause暂停播放
resume恢复播放
seek跳到指定时间播放
getTotalPlayTimeMS获取音频文件总时长
getCurrentPlayTimeMS获取音频文件当前播放时间
setPlayerLocalVolume设置音频文件本地播放音量
setPlayerPublishVolume设置音频文件远端播放音量
getPlayerLocalVolume获取音频文件本地播放音量
getPlayerPublishVolume获取音频文件远端播放音量
setLooping设置播放循环次数
setSemitone设置音频播放的声调
setTempo设置音频播放速率
setPosition设置音频播放方位
SetFilePlayerNotify设置音频文件播放回调
回调功能
onAudioFileVolume播放进度信息回调
onAudioFilePlayEnd播放结束状态回调
onAudioFileStateChange播放事件的各种状态回调

变声混响

N/A

听声辩位

N/A

音量提示

方法功能
setAudioVolumeIndication开/关说话者音量回调
enableCaptureVolumeIndication打开本地采集音量回调
回调功能
onPlayVolumeIndication说话者音量回调
onCaptureVolumeIndication采集音量回调

语音路由

N/A

实时返听

N/A

音频设备管理

主要方法封装在 IAudioDeviceManager 接口类中,通过接口 getAudioDeviceMgr 获得对象的指针。

方法功能
getAudioDeviceMgr获取音频设备管理类对象的指针
方法功能
enumInputDevices枚举音频输入设备
setInputtingDevice设置音频输入设备
getInputtingDevice获取当前选择的音频输入设备
setInputtingVolume设置当前音频输入设备音量
getInputtingVolume获取当前音频输入设备音量
setInputtingMute开启或取消静音当前音频输入设备
getInputtingMute获取当前音频输入设备的静音状态
startInputDeviceTest启动当前音频输入设备测试
stopInputDeviceTest停止当前音频输入设备测试
enumOutputDevices枚举音频播放设备
setOutputtingDevice指定音频播放设备
getOutputtingDevice获取当前音频播放设备
setOuttingVolume设置当前播放设备音量
getOuttingVolume获取当前播放设备音量
setOutputtingMute开启/取消静音当前播放设备
getOutputtingMute获取当前播放设备的静音状态
startOutputDeviceTest启动当前音频播放设备测试
stopOutputDeviceTest停止当前音频播放设备测试
enableMicEnhancement启动/关闭麦克风增强
enableMicDenoise启动/关闭麦克风降噪
enableAEC启动/关闭回声消除
enableAGC启动/关闭自动增益
回调功能
onAudioCaptureStatus音频设备采集状态变化回调
onInputVolume当前音频输入设备测试音量回调
onOutputVolume当前音频播放设备测试音量回调
OnAudioDeviceStateChange音频设备插拔行为状态回调
onAudioDeviceVolumeChanged设备音量变化回调

视频设备管理

主要方法封装在 IVideoDeviceManager 接口类中,通过接口 getVideoDeviceMgr 获得对象的指针。

方法功能
getVideoDeviceMgr获取视频设备管理对象的指针
方法功能
enumVideoDevices枚举视频输入设备
startVideoDeviceCapture启动视频设备的采集
stopVideoDeviceCapture停止视频设备的采集
回调功能
onVideoCaptureStatus摄像头采集状态变化回调
onVideoDeviceStateChanged视频设备变化回调

媒体次要信息

方法功能
sendMediaExtraInfo发送媒体次要信息
registerMediaExtraInfoObserver注册媒体次要信息的监听对象 IThunderMediaExtraInfoObserver
回调功能
onSendMediaExtraInfoFailedStatus发送媒体次要信息失败状态回调
onRecvMediaExtraInfo接收到的媒体次要信息
onRecvMixAudioInfo接收到的混音流的次要信息
onRecvMixVideoInfo接收到的混画流的次要信息

音频原始数据

方法功能
registerAudioFrameObserver注册视频监听对象 IAudioFrameObserver
setRecordingAudioFrameParameters设置 onRecordAudioFrame 回调中音频录制原始数据使用模式
setPlaybackAudioFrameParameters设置 onPlaybackAudioFrame 回调中音频播放的原始数据使用模式
回调功能
onRecordAudioFrame音频采集原始数据回调
onPlaybackAudioFrame音频播放原始数据回调
onPlaybackAudioFrameBeforeMixing音频远端数据解码后原始数据回调(区分用户)

视频原始数据

方法功能
registerVideoFrameObserver注册视频帧监听对象IVideoFrameObserver
registerVideoCaptureObserver注册摄像头采集数据监听对象IVideoCaptureObserver
回调功能
onPreviewVideoFrame本地的预览视频数据的回调
onRenderVideoFrame其他用户的渲染视频数据的回调
回调功能
onCaptureVideoFrame本地的采集视频数据的回调

音频自采集

方法功能
setCustomAudioSource设置外部音频采集参数
pushCustomAudioFrame推送外部音频帧

视频自采集

方法功能
setCustomVideoSource设置外部视频采集参数
pushCustomVideoFrame推送外部视频帧

自定义消息

方法功能
sendUserAppMsgData发送业务自定义广播消息
回调功能
onRecvUserAppMsgData业务自定义广播消息回调
onSendAppMsgDataFailedStatus主播发送自定义广播消息失败回调

日志管理

方法功能
setLogFilePath设置SDK输出log文件的目录
setLogLevel设置日志保存等级

系统设备资源监测

方法功能
onDeviceStatsCPU/内存使用状态

其他方法

方法功能
enableWebSdkCompatibility打开/关闭WebSDK兼容模式
checkFeatureSupport是否支持某种特性
<