概述

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

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

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

基础方法

方法功能
createEngine创建并初始化 ThunderEngine 实例对象
createWithLoop创建并初始化 ThunderEngine 实例对象,同时指定 ThunderEventHandler 类中回调函数的运行线程
destroyEngine销毁 ThunderEngine 实例对象
getVersion获取SDK版本信息

房间管理

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

音频开播

方法功能
setAudioConfig设置音频模式
setAudioSourceType设置音频开播模式
setMicVolume设置麦克风音量
stopLocalAudioStream音频开播(包括启动采集、编码和推流)
回调功能
onFirstLocalAudioFrameSent成功发送本地音频首帧回调
onLocalAudioStats本地音频流统计信息回调
onLocalAudioStatusChanged本地音频状态发生变化回调

音频订阅

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

视频开播

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

视频订阅

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

网络状态

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

开播测试

N/A

旁路直播

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

音频录制

方法功能
startAudioSaver开始将音频数据保存成aac格式的文件
stopAudioSaver停止将音频数据保存成aac格式的文件

跨房间连麦

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

摄像头管理

方法功能
switchFrontCamera切换前/后置摄像头
setVideoCaptureOrientation设置摄像头开播角度(横屏/竖屏)

屏幕分享

屏幕分享功能,通过使用系统原生方法和SDK提供的自采集接口setCustomVideoSource来实现,详细实现方法,可参考进阶功能:屏幕分享实现

实时水印

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

视频双流

N/A

音频播放器

方法功能
createAudioFilePlayer创建音频文件播放器实例对象ThunderAudioFilePlayer 对象
destroyAudioFilePlayer销毁音频文件播放器实例对象ThunderAudioFilePlayer 对象
方法功能
open打开伴奏文件
close关掉伴奏
play开始播放
stop停止播放
pause暂停
resume恢复
seek跳到指定时间播放
getTotalPlayTimeMS获取文件时长
getCurrentPlayTimeMS获取文件当前播放时间
setPlayVolume设置当前文件的播放音量
setPlayerLocalVolume设置文件本地播放音量
setPlayerPublishVolume设置文件远端播放音量
getPlayerLocalVolume获取文件本地播放音量
getPlayerPublishVolume获取文件远端播放音量
getAudioTrackCount获取音轨数量
selectAudioTrack选择音轨
setSemitone设置音频播放的声调
setLooping设置播放循环次数
setTempo设置音频播放的速率
setPosition设置音频播放的方位
enablePublish是否将当前播放的文件作为直播伴奏使用
setPlayerNotify设置播放回调接口 ThunderAudioFilePlayer.IThunderAudioFilePlayerCallback
enableVolumeIndication打开文件播放音量回调 ThunderAudioFilePlayer.IThunderAudioFilePlayerCallback.onAudioFileVolume
setMixStandard设置伴奏是否为混画基准流
isMixStandard查询伴奏是否为混画基准流
回调功能
onAudioFilePlayError音频文件播放错误回调
onAudioFileVolume音频文件播放音量回调
onAudioFileSeekComplete快进到指定时刻操作已完成回调
onAudioFilePlaying开始播放回调
onAudioFilePause暂停播放回调
onAudioFileResume恢复播放回调
onAudioFileStop用户主动停止播放的回调
onAudioFilePlayEnd播放结束回调
回调功能
onAudioFileVolume播放音量回调
onAudioFileStateChange播放器状态回调

变声混响

方法功能
setVoiceChanger设置变声模式
setSoundEffect设置音效模式
setEnableEqualizer开/关本地语音均衡器
setEqGains设置语音均衡器参数
setEnableReverb开/关本地音效混响
setReverbExParameter设置音效混响参数
setEnableCompressor开/关音效压缩器
setCompressorParam设置音效压缩器参数
setEnableLimiter开/关压限器
setLimiterParam设置压限器参数

听声辩位

方法功能
enableVoicePosition开/关远端用户的语音立体声
setRemoteUidVoicePosition设置远端用户语音立体声的空间位置和音量

音量提示

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

语音路由

方法功能
isLoudspeakerEnabled查询当前是否使用扬声器播放
enableLoudspeaker使用扬声器播放
setLoudSpeakerVolume设置扬声器音量

实时返听

方法功能
setEnableInEarMonitor开/关耳返

音频设备管理

回调功能
onAudioCaptureStatus音频设备采集状态变化回调

视频设备管理

回调功能
onVideoCaptureStatus摄像头采集状态变化通知

次要媒体信息

方法功能
setMediaExtraInfoCallback设置媒体次要信息的回调监听IThunderMediaExtraInfoCallback
sendMediaExtraInfo发送媒体次要信息
回调功能
onSendMediaExtraInfoFailedStatus发送媒体次要信息失败状态回调
onRecvMediaExtraInfo接收到的媒体次要信息
onRecvMixAudioInfo接收到的混音流的次要信息
onRecvMixVideoInfo接收到的混画流的次要信息

音频原始数据

方法功能
enableAudioPlaySpectrum开/关音频播放频谱数据回调 onAudioPlaySpectrumData
setAudioPlaySpectrumInfo设置音频播放频谱数据回调信息
setRecordingAudioFrameParameters设置采集原始数据回调的格式
setPlaybackAudioFrameParameters设置播放数据回调的格式
registerAudioFrameObserver注册音频观测器对象 IAudioFrameObserver
回调功能
onAudioPlaySpectrumData音频播放频谱数据回调
回调功能
onRecordAudioFrame音频采集原始数据回调
onPlaybackAudioFrame音频播放原始数据回调
onPlaybackAudioFrameBeforeMixing音频远端用户解码后原始数据回调

视频原始数据

方法功能
registerVideoCaptureTextureObserver注册采集视频纹理数据观测器对象,用于美颜等处理等 IGPUProcess
registerVideoCaptureFrameObserver注册摄像头采集数据观测器对象 IVideoCaptureObserver
registerVideoDecodeFrameObserver注册解码后YUV(I420)视频数据观测器对象 IVideoDecodeObserver
回调功能
onInit用于客户使用第三方特效
onDestroy销毁特效资源
onDraw每一帧渲染处理
onOutputSizeChanged纹理大小更新回调
回调功能
onCaptureVideoFrame摄像头采集数据回调
回调功能
onVideoDecodeFrame解码后的YUV(I420)视频数据回调

音频自采集

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

视频自采集

方法功能
setCustomVideoSource设置自定义视频源
回调功能
onInitialize初始化视频源
onStart启动视频源
onStop停止视频源
onDispose释放视频源
回调功能
consumeByteArrayFrame推送视频原始数据的接口

自定义消息

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

日志管理

方法功能
setLogFilePath设置SDK输出log文件的目录
setLogLevel设置日志保存等级
setLogCallback设置日志回调 IThunderLogCallback
回调功能
onThunderLogWithLevel日志信息回调

设备资源监测

方法功能
onDeviceStatsCPU/内存使用信息回调

其他方法

方法功能
enableWebSdkCompatibility打开/关闭WebSDK兼容
<