API 概览

TRTCCloud @ TXLiteAVSDK

腾讯云视频通话功能的主要接口类。

创建 TRTC 对象

const TRTCCloud = require('trtc-electron-sdk').default;
// import TRTCCloud from 'trtc-electron-sdk';
this.rtcCloud = new TRTCCloud();

从v7.9.348起,TRTC Electron SDK 增加了 trtc.d.ts 文件,方便使用 typescript 的开发者

import TRTCCloud from 'trtc-electron-sdk';
const rtcCloud: TRTCCloud = new TRTCCloud();
// 获取 SDK 版本号
rtcCloud.getSDKVersion();

设置回调

subscribeEvents = (rtcCloud) => {
   rtcCloud.on('onError', (errcode, errmsg) => {
   console.info('trtc_demo: onError :' + errcode + " msg" + errmsg);
   }); 
   rtcCloud.on('onEnterRoom', (elapsed) => {
   console.info('trtc_demo: onEnterRoom elapsed:' + elapsed);
   });
   rtcCloud.on('onExitRoom', (reason) => {
   console.info('onExitRoom: userenter reason:' + reason);
   });
};

subscribeEvents(this.rtcCloud);

创建与销毁 TRTCCloud 单例

API描述
getTRTCShareInstance用于动态加载 dll 时,创建 TRTCCloud 对象单例。
destroyTRTCShareInstance释放 TRTCCloud 单例对象并清理资源。

房间相关接口函数

API描述
enterRoom进入房间,若房间不存在,系统将自动创建一个新房间。
exitRoom退出房间。
switchRoom切换房间。
switchRole切换角色,仅适用于直播场景(TRTCAppSceneLIVE 和 TRTCAppSceneVoiceChatRoom)。
connectOtherRoom请求跨房连麦(主播跨房 PK)。
disconnectOtherRoom关闭跨房连麦(主播跨房 PK)。
setDefaultStreamRecvMode设置音视频数据接收模式(需要在进房前设置才能生效)。

CDN 相关接口函数

API描述
startPublishing开始向腾讯云的直播 CDN 推流。
stopPublishing停止向腾讯云的直播 CDN 推流。
startPublishCDNStream开始向非腾讯云的直播 CDN 转推。
stopPublishCDNStream停止向非腾讯云的直播 CDN 推流。
setMixTranscodingConfig设置云端的混流转码参数。

视频相关接口函数

API描述
startLocalPreview启动本地摄像头采集和预览。
stopLocalPreview停止本地摄像头采集和预览。
muteLocalVideo是否屏蔽自己的视频画面。
startRemoteView开始显示远端视频画面。
stopRemoteView停止显示远端视频画面,同时不再拉取该远端用户的视频数据流。
stopAllRemoteView停止显示所有远端视频画面,同时不再拉取远端用户的视频数据流。
muteRemoteVideoStream暂停接收指定的远端视频流。
muteAllRemoteVideoStreams停止接收所有远端视频流。
setVideoEncoderParam设置视频编码器相关参数。
setNetworkQosParam设置网络流控相关参数。
setLocalRenderParams设置本地图像(主流)的渲染参数。
setLocalViewFillMode废弃接口:设置本地图像的渲染模式。
setRemoteRenderParams设置远端图像的渲染参数。
setRemoteViewFillMode废弃接口:设置远端图像的渲染模式。
setLocalViewRotation废弃接口:设置本地图像的顺时针旋转角度。
setRemoteViewRotation废弃接口:设置远端图像的顺时针旋转角度。
setVideoEncoderRotation设置视频编码输出的(即远端用户观看到的以及服务器录制下来的)画面方向。
setLocalViewMirror废弃接口:设置本地摄像头预览画面的镜像模式。
setVideoEncoderMirror设置编码器输出的画面镜像模式。
enableSmallVideoStream开启大小画面双路编码模式。
setRemoteVideoStreamType选定观看指定 userId 的大画面或小画面。
setPriorRemoteVideoStreamType废弃接口:设定观看方优先选择的视频质量。
snapshotVideo视频画面截图。

音频相关接口函数

API描述
startLocalAudio开启本地音频的采集和上行。
stopLocalAudio关闭本地音频的采集和上行。
muteLocalAudio静音本地的音频。
muteRemoteAudio静音某一个用户的声音,同时不再拉取该远端用户的音频数据流。
muteAllRemoteAudio静音所有用户的声音,同时不再拉取远端用户的音频数据流。
setAudioCaptureVolume设置 SDK 采集音量。
getAudioCaptureVolume获取 SDK 采集音量。
setAudioPlayoutVolume设置 SDK 播放音量。
getAudioPlayoutVolume获取 SDK 播放音量。
enableAudioVolumeEvaluation启用或关闭音量大小提示。
startAudioRecording开始录音。
stopAudioRecording停止录音。
setAudioQuality废弃接口:设置音频质量。
setRemoteAudioVolume设置远程用户播放音量。

摄像头相关接口函数

API描述
getCameraDevicesList获取摄像头设备列表。
setCurrentCameraDevice设置要使用的摄像头。
getCurrentCameraDevice获取当前使用的摄像头。

音频设备相关接口函数

API描述
getMicDevicesList获取麦克风设备列表。
getCurrentMicDevice获取当前选择的麦克风。
setCurrentMicDevice设置要使用的麦克风。
getCurrentMicDeviceVolume获取系统当前麦克风设备音量。
setCurrentMicDeviceVolume设置系统当前麦克风设备的音量。
setCurrentMicDeviceMute设置系统当前麦克风设备的静音状态。
getCurrentMicDeviceMute获取系统当前麦克风设备是否静音。
getSpeakerDevicesList获取扬声器设备列表。
getCurrentSpeakerDevice获取当前的扬声器设备。
setCurrentSpeakerDevice设置要使用的扬声器。
getCurrentSpeakerVolume获取系统当前扬声器设备音量。
setCurrentSpeakerVolume设置系统当前扬声器设备音量。
setCurrentSpeakerDeviceMute设置系统当前扬声器设备的静音状态。
getCurrentSpeakerDeviceMute获取系统当前扬声器设备是否静音。

美颜相关接口函数

API描述
setBeautyStyle设置美颜、美白以红润效果级别。
setWaterMark设置水印。

辅流相关接口函数

API描述
startRemoteSubStreamView废弃接口:开始渲染远端用户的辅流(屏幕分享)画面。
stopRemoteSubStreamView废弃接口:停止渲染远端用户的辅流(屏幕分享)画面。
setRemoteSubStreamViewFillMode废弃接口:设置辅流(屏幕分享)画面的渲染模式。
setRemoteSubStreamViewRotation废弃接口:设置辅流(屏幕分享)画面的顺时针旋转角度。
getScreenCaptureSources枚举可共享的窗口列表。
selectScreenCaptureTarget设置屏幕共享参数,该方法在屏幕共享过程中也可以调用。
startScreenCapture启动屏幕分享。
pauseScreenCapture暂停屏幕分享。
resumeScreenCapture恢复屏幕分享。
stopScreenCapture停止屏幕分享。
setSubStreamEncoderParam设置辅流(屏幕分享)的编码器参数。
setSubStreamMixVolume设置辅流(屏幕分享)的混音音量大小。
addExcludedShareWindow将指定窗口加入屏幕分享的排除列表中,加入排除列表中的窗口不会被分享出去。
removeExcludedShareWindow将指定窗口从屏幕分享的排除列表中移除。
removeAllExcludedShareWindow将所有窗口从屏幕分享的排除列表中移除。

自定义消息发送

API描述
sendCustomCmdMsg发送自定义消息给房间内所有用户。
sendSEIMsg将小数据量的自定义数据嵌入视频帧中。

背景混音相关接口函数

API描述
playBGM废弃接口:启动播放背景音乐。
stopBGM废弃接口:停止播放背景音乐。
pauseBGM废弃接口:暂停播放背景音乐。
resumeBGM废弃接口:继续播放背景音乐。
getBGMDuration废弃接口:获取背景音乐文件总时长,单位毫秒。
setBGMPosition废弃接口:设置背景音乐播放进度。
setBGMVolume废弃接口:设置背景音乐播放音量的大小。
setBGMPlayoutVolume废弃接口:设置背景音乐本地播放音量的大小。
setBGMPublishVolume废弃接口:设置背景音乐远端播放音量的大小。
startSystemAudioLoopback打开系统声音采集。
stopSystemAudioLoopback关闭系统声音采集。
setSystemAudioLoopbackVolume设置系统声音采集的音量。
startPlayMusic启动播放背景音乐。
stopPlayMusic停止播放背景音乐。
pausePlayMusic暂停播放背景音乐。
resumePlayMusic恢复播放背景音乐。
getMusicDurationInMS获取背景音乐文件总时长,单位毫秒。
seekMusicToPosInTime设置背景音乐播放进度。
setAllMusicVolume设置背景音乐的音量大小,播放背景音乐混音时使用,用来控制背景音音量大小。
setMusicPlayoutVolume设置背景音乐本地播放音量的大小。
setMusicPublishVolume设置背景音乐远端播放音量的大小。

音效相关接口函数

API描述
playAudioEffect废弃接口:播放音效。
setAudioEffectVolume废弃接口:设置音效音量。
stopAudioEffect废弃接口:停止音效。
stopAllAudioEffects废弃接口:停止所有音效。
setAllAudioEffectsVolume废弃接口:设置所有音效的音量。
pauseAudioEffect废弃接口:暂停音效。
resumeAudioEffect废弃接口:恢复音效。

设备和网络测试

API描述
startSpeedTest开始进行网络测速(视频通话期间请勿测试,以免影响通话质量)。
stopSpeedTest停止网络测速。
startCameraDeviceTest开始进行摄像头测试。
stopCameraDeviceTest停止摄像头测试。
startMicDeviceTest开始进行麦克风测试。
stopMicDeviceTest停止麦克风测试。
startSpeakerDeviceTest开始进行扬声器测试。
stopSpeakerDeviceTest停止扬声器测试。

LOG 相关接口函数

API描述
getSDKVersion获取 SDK 版本信息。
setLogLevel设置 Log 输出级别。
setConsoleEnabled启用或禁用控制台日志打印。
setLogCompressEnabled启用或禁用 Log 的本地压缩。
setLogDirPath设置日志保存路径。
setLogCallback设置日志回调。
callExperimentalAPI调用实验性 API 接口。

弃用接口函数

API描述
setMicVolumeOnMixing从 v6.9 版本开始废弃。

TRTCCallback @ TXLiteAVSDK

腾讯云视频通话功能的回调接口类。

错误事件和警告事件

API描述
onError错误回调:SDK 不可恢复的错误,必须监听,并分情况给用户适当的界面提示。
onWarning警告回调:用于告知您一些非严重性问题,例如出现了卡顿或可恢复的解码失败。

房间事件回调

API描述
onEnterRoom已加入房间的回调。
onExitRoom退出房间的事件回调。
onSwitchRole切换角色的事件回调。
onConnectOtherRoom请求跨房连麦(主播跨房 PK)的结果回调。
onDisconnectOtherRoom关闭跨房连麦(主播跨房 PK)的结果回调。
onSwitchRoom切换房间。

成员事件回调

API描述
onRemoteUserEnterRoom有用户加入当前房间。
onRemoteUserLeaveRoom有用户离开当前房间。
onUserVideoAvailable用户是否开启摄像头视频。
onUserSubStreamAvailable用户是否开启屏幕分享。
onUserAudioAvailable用户是否开启音频上行。
onFirstVideoFrame开始渲染本地或远程用户的首帧画面。
onFirstAudioFrame开始播放远程用户的首帧音频(本地声音暂不通知)。
onSendFirstLocalVideoFrame首帧本地视频数据已经被送出。
onSendFirstLocalAudioFrame首帧本地音频数据已经被送出。
onUserEnter废弃接口:有主播加入当前房间。
onUserExit废弃接口: 有主播离开当前房间。

统计和质量回调

API描述
onNetworkQuality网络质量:该回调每2秒触发一次,统计当前网络的上行和下行质量。
onStatistics技术指标统计回调。

服务器事件回调

API描述
onConnectionLostSDK 与服务器的连接断开。
onTryToReconnectSDK 尝试重新连接到服务器。
onConnectionRecoverySDK 与服务器的连接恢复。
onSpeedTest废弃接口:服务器测速的回调,SDK 对多个服务器 IP 进行测速,每个 IP 的测速结果通过这个回调通知。
onSpeedTestResult网速测试的结果回调。

硬件设备事件回调

API描述
onCameraDidReady摄像头准备就绪。
onMicDidReady麦克风准备就绪。
onUserVoiceVolume用于提示音量大小的回调,包括每个 userId 的音量和远端总音量;本地用户 userid 为''。
onDeviceChange本地设备通断回调。
onTestMicVolume麦克风测试音量回调。
onTestSpeakerVolume扬声器测试音量回调。
onAudioDeviceCaptureVolumeChanged当前音频采集设备音量变化回调。
onAudioDevicePlayoutVolumeChanged当前音频播放设备音量变化回调。

自定义消息的接收回调

API描述
onRecvCustomCmdMsg收到自定义消息回调。
onMissCustomCmdMsg自定义消息丢失回调。
onRecvSEIMsg收到 SEI 消息的回调。

CDN 旁路转推回调

API描述
onStartPublishing开始向腾讯云的直播 CDN 推流的回调,对应于 TRTCCloud 中的 startPublishing() 接口。
onStopPublishing停止向腾讯云的直播 CDN 推流的回调,对应于 TRTCCloud 中的 stopPublishing() 接口。
onStartPublishCDNStream启动旁路推流到 CDN 完成的回调。
onStopPublishCDNStream停止旁路推流到 CDN 完成的回调。
onSetMixTranscodingConfig设置云端的混流转码参数的回调,对应于 TRTCCloud 中的 setMixTranscodingConfig() 接口。

系统音量采集回调

API描述
onSystemAudioLoopbackError系统音量采集状态的回调(仅在 Mac 上有效)。

音效回调

API描述
onAudioEffectFinished废弃接口:播放音效结束回调。

屏幕分享回调

API描述
onScreenCaptureCovered当屏幕分享窗口被遮挡无法正常捕获时,SDK 会通过此回调通知,可在此回调里通知用户移开遮挡窗口。
onScreenCaptureStarted当屏幕分享开始时,SDK 会通过此回调通知。
onScreenCapturePaused当屏幕分享暂停时,SDK 会通过此回调通知。
onScreenCaptureResumed当屏幕分享恢复时,SDK 会通过此回调通知。
onScreenCaptureStopped当屏幕分享停止时,SDK 会通过此回调通知。

截图回调

API描述
onSnapshotComplete截图完成时,SDK 会通过此回调通知。

背景混音事件回调

API描述
onPlayBGMBegin废弃接口:开始播放背景音乐。
onPlayBGMProgress废弃接口:播放背景音乐的进度。
onPlayBGMComplete废弃接口:播放背景音乐结束。

关键类型定义

关键类型

类名描述
TRTCParams进房相关参数。
TRTCVideoEncParam视频编码参数。
TRTCNetworkQosParam网络流控相关参数。
TRTCQualityInfo视频质量。
TRTCVolumeInfo音量大小。
TRTCSpeedTestResult网络测速结果。
TRTCMixUser云端混流中每一路子画面的位置信息。
TRTCTranscodingConfig云端混流(转码)配置。
TRTCPublishCDNParamCDN 旁路推流参数。
TRTCAudioRecordingParams录音参数。
TRTCLocalStatistics自己本地的音视频统计信息。
TRTCRemoteStatistics远端成员的音视频统计信息。
TRTCStatistics统计数据。

枚举值

枚举描述
TRTCVideoResolution视频分辨率。
TRTCVideoResolutionMode视频分辨率模式。
TRTCVideoStreamType视频流类型。
TRTCQuality画质级别。
TRTCVideoFillMode视频画面填充模式。
TRTCBeautyStyle美颜(磨皮)算法。
TRTCAppScene应用场景。
TRTCRoleType角色,仅适用于直播场景(TRTCAppSceneLIVE)。
TRTCQosControlMode流控模式。
TRTCVideoQosPreference画质偏好。
TRTCDeviceState设备操作。
TRTCDeviceType设备类型。
TRTCWaterMarkSrcType水印图片的源类型。
TRTCTranscodingConfigMode混流参数配置模式。