CloudHub 文档中心
下载中心 文档中心

RTC 实时音视频


CloudHubSDK Electron

CloudHub 通过全球部署的虚拟网络,提供可以灵活搭配的 API 组合,为移动端到移动端以及移动端到 Web 端提供质量可靠的实时音视频通信。

频道管理

方法描述
initialize初始化SDK引擎
setChannelProfile设置频道场景
setClientRole设置用户角色
joinChannel加入频道
leaveChannel离开频道
renewToken更新token
on绑定监听事件
off取消绑定监听事件
offAll取消绑定 event 所有的监听事件
事件描述
onConnectionStateChanged网络连接状态发生改变
onJoinChannel加入频道成功
onRejoinChannel断线后重新加入频道成功
onLeaveChannel离开频道回调
onUserJoined远端用户(通信场景)/主播(直播场景)加入当前频道
onUserLeaved远端用户(通信场景)/主播(直播场景)离开当前频道
onTokenPrivilegeWillExpiretoken即将过期
onRequestTokentoken已经过期,需要更新
onLocaluserPerssionChanged本地用户发布或订阅权限发生变化
onServerForceCloseChannel频道被强制关闭

音频管理

方法描述
setAudioQuality设置本地发送音频质量
adjustRecordingSignalVolume调节麦克风采集信号音量
adjustPlaybackSignalVolume调节本地播放的所有远端用户信号音量
adjustUserPlaybackSignalVolume调节本地播放的指定远端用户音量
enableLocalAudio开/关本地音频采集
muteLocalAudioStream发送/停止发送本地音频流
muteRemoteAudioStream接收/停止接收指定的远端音频流
muteAllRemoteAudioStreams接收/停止接收所有的远端音频流
事件描述
onLocalAudioStateChanged本地音频状态发生改变
onFirstLocalAudioFrame本地音频首帧回调
onremoteaudiostatechanged远端音频状态发生改变
onFirstRemoteAudioFrame远端音频首帧回调

视频管理

方法描述
enableVideo启用视频模块
disableVideo禁用视频模块
setVideoEncoderConfiguration设置视频编码属性
setVideoMode设置视频显示模式
setLocalVideoMirror设置本地视频镜像模式
setupLocalVideo开始播放本地视频
removeLocalVideo停止播放本地视频
setupRemoteVideo开始播放远端视频
removeRemoteVideo停止播放远端视频
enableLocalVideo开/关本地视频采集
muteLocalVideoStream发送/停止发送本地视频流
muteRemoteVideoStream接收/停止接收指定的远端视频流
muteAllRemoteVideoStreams接收/停止接收所有的远端视频流
事件描述
onLocalVideoStateChanged本地视频状态发生改变
onFirstLocalVideoFrame本地视频首帧回调
onRemoteVideoStateChanged远端视频状态发生改变(远端视频可能是用户摄像头、屏幕共享、在线媒体文件、电影文件等)
onFirstRemoteVideoFrame远端视频首帧回调

数据统计事件

加入频道后,SDK 每隔 2 秒自动触发本组回调。 我们为这些回调提供了详细的功能描述、实现方法文档,详情请参考通话中质量监测

事件描述
onRtcStats当前通话统计
onNetworkQuality网络上下行质量报告
onLocalVideoStats本地视频流统计信息
onRemoteVideoStats远端视频流统计信息
onLocalAudioStats本地音频流统计信息
onRemoteAudioStats远端音频流统计信息

视频前处理及后处理

方法描述
setBeautyEffectOptions开启或关闭本地美颜功能,并设置美颜效果选项
setVideoEffectOptions开启或关闭高级美颜功能,并设置美颜效果选项

多频道管理

我们为该组接口提供了详细的场景描述、实现方法及开发注意事项文档,详情请参考加入多频道。

API描述
createChannel创建并获取一个 IChannel 对象。通过创建多个对象,用户可以同时加入多个频道
IChannel该类提供在指定频道内实现实时音视频功能的方法
IChannelEventHandler该类提供监听指定频道事件和数据的回调

屏幕共享

方法描述
getScreenDisplaysInfo获取屏幕信息 该方法获取系统 ( macOS 或 Windows ) 屏幕 ID,以及相关信息
getScreenWindowsInfo获取窗口信息 该方法获取系统 ( macOS 或 Windows ) 窗口 ID,以及相关信息
主进程方法描述
startScreenCaptureByDisplayId开始桌面分享
startScreenCaptureByWindowId通过窗口信息共享屏幕
stopScreenCapture停止桌面分享
startSpeakerCaptureWhileSharing共享桌面时开启桌面声音
stopSpeakerCaptureWhileSharing共享桌面时关闭桌面声音

音乐文件播放

方法描述
startPlayMovie开始播放音乐文件
stopPlayMovie停止播放音乐文件
pausePlayMovie暂停播放音乐文件
resumePlayMovie恢复播放音乐文件
setupLocalMovie本地观看自己播放的音乐文件
removeLocalMovie取消观看自己播放的音乐文件
setMoviePosition设置音乐文件的播放进度
getMovieCurrentPosition获取音乐文件的播放进度
getMovieInfo获取音乐文件的信息
getMovieDuration获取电影时长
事件描述
onMovieProgress本地用户的音乐文件播放进度
onFirstLocalMovieFrame本地媒体文件首帧回调
localMovieStateChanged本地媒体文件播放状态发生改变

⾳效文件播放

方法描述
getEffectsVolume获取播放音效文件音量。
setEffectsVolume设置播放音效文件音量。
setVolumeOfEffect设置单个音效文件的音量。
playEffect播放指定音效文件。
stopEffect停止播放指定音效文件。
stopAllEffects停止播放所有音效文件。
preloadEffect预加载音效文件
unloadEffect释放音效文件
pauseEffect暂停音效文件播放。
pauseAllEffects暂停所有音效文件播放。
resumeEffect恢复播放指定音效文件。
resumeAllEffects恢复播放所有音效文件。

人声效果

方法描述
setLocalVoicePitch设置本地语音音调
setLocalVoiceEqualization设置本地语音音效均衡
setLocalVoiceReverb设置本地音效混响
setAudioEffectPreset设置 SDK 预设的美声效果
enableDeepLearningDenoise开启/关闭 AI 降噪模式

CDN推流

方法描述
addPublishStreamUrl增加旁路推流地址。
removePublishStreamUrl删除旁路推流地址。
setLiveTranscoding设置直播转码。

跨频道媒体流转发 ( 仅适用于互动直播 )

方法描述
startChannelMediaRelay开始跨频道媒体流转发
updateChannelMediaRelay更新媒体流转发的频道
stopChannelMediaRelay停止跨频道媒体流转发
事件描述
onChannelMediaRelayStateChanged本地媒体文件播放状态改变回调

音量提示

方法描述
enableAudioVolumeIndication启用/禁用说话者音量提示
事件描述
onAudioVolumeIndication音量回调
OnActiveSpeaker监测到最活跃用户回调。

视频双流模式

方法描述
enableDualStreamMode开启或关闭大小流功能
setRemoteVideoStreamType设置订阅的视频流类型
setRemoteDefaultVideoStreamType设置默认订阅的视频流类型

通话前网络测试

方法描述
startLastmileProbeTest开始通话前网络质量探测。
stopLastmileProbeTest停止通话前 last mile 网络质量探测。
事件描述
onLastmileQuality通话前网络上下行 last mile 质量报告回调。

音频播放设备管理

方法描述
setAudioPlaybackDevice设置音频播放设备
getAudioPlaybackDevices获取音频播放设备
getCurrentAudioPlaybackDevice获取当前扬声器
setAudioPlaybackDeviceMute静音/取消静音音频播放设备
getAudioPlaybackDeviceMute获取音频播放设备的静音状态
setAudioPlaybackVolume设置音频播放设备的音量
getAudioPlaybackVolume获取音频播放设备的音量
startAudioPlaybackDeviceTest开始扬声器检测
stopAudioPlaybackDeviceTest停止扬声器检测
startAudioDeviceLoopbackTest开始音频设备回路测试
stopAudioDeviceLoopbackTest停止音频设备回路测试

音频采集设备管理

方法描述
setAudioRecordingDevice设置麦克风
getAudioRecordingDevices获取麦克风列表
getCurrentAudioRecordingDevice获取当前麦克风
setAudioRecordingDeviceMute静音/取消静音录音设备
getAudioRecordingDeviceMute获取录音设备的静音状态
setAudioRecordingVolume设置录音设备的音量
getAudioRecordingVolume获取录音设备的音量
startAudioRecordingDeviceTest开始麦克风检测
stopAudioRecordingDeviceTest停止麦克风检测
startAudioDeviceLoopbackTest开始音频设备回路测试
stopAudioDeviceLoopbackTest停止音频设备回路测试
事件描述
onAudioDeviceStateChanged音频设备状态变化

视频设备管理

方法描述
enableMultiStream启用多摄像头
setVideoDevice设置摄像头
getVideoDevices获取摄像头列表
getCurrentVideoDevice获取当前摄像头
startVideoDeviceTest开始摄像头检测
stopVideoDeviceTest停止摄像头检测
事件描述
onVideoDeviceStateChanged视频设备状态变化

发布管理

方法描述
publish开始发布本地音视频流
unPublish停止发布本地音视频流

录制相关方法

方法描述
startServerRecord开始录制
stopServerRecord停止录制
pauseServerRecord暂停录制
resumeServerRecord恢复录制
事件描述
onRecordMsg录制状态发生改变

高级信令

方法描述
setProperty为频道内某个用户设置自定义属性
sendChatMsg发送聊天消息
pubMsg发布一条自定义消息
delMsg删除一条自定义消息
evictUser将一个用户踢出房间
事件描述
onSetProperty用户自定义属性发生变化
onChatMsg收到聊天消息
onPubMsg自定义消息被发布
onDelMsg自定义消息被删除
onLocalUserEvicted本地用户被踢出房间

其他方法

方法描述
getVersion获取SDK的版本号

其他事件

事件描述
onError发生错误
onServerTime服务器时间通知