TRTCCloud @ TXLiteAVSDK

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

创建TRTC对象

import TRTCCloud from 'trtc-electron-sdk';
const rtcCloud = TRTCCloud.getTRTCShareInstance();

设置回调

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:' + elapsed);
    });
    rtcCloud.on('onExitRoom', (reason) => {
        console.info('trtc_demo: onExitRoom reason:' + reason);
    });
};

subscribeEvents(rtcCloud);

创建与销毁 ITRTCCloud 单例

API 描述
getTRTCShareInstance 用于动态加载 dll 时,获取 ITRTCCloud 对象指针。
destroyTRTCShareInstance 释放 ITRTCCloud 单例对象。

房间相关接口函数

API 描述
enterRoom 进入房间。
exitRoom 离开房间。
switchRoom 切换房间。
switchRole 切换角色,仅适用于直播场景(TRTCAppSceneLIVE)。
connectOtherRoom 请求跨房通话(主播 PK)。
disconnectOtherRoom 关闭跨房连麦。

CDN 相关接口函数

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

视频相关接口函数

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

音频相关接口函数

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

摄像头相关接口函数

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

音频设备相关接口函数

API 描述
getMicDevicesList 获取麦克风设备列表。
getCurrentMicDevice 获取当前选择的麦克风。
setCurrentMicDevice 设置要使用的麦克风。
getCurrentMicDeviceVolume 获取系统当前麦克风设备音量。
setCurrentMicDeviceVolume 设置系统当前麦克风设备的音量。
getSpeakerDevicesList 获取扬声器设备列表。
getCurrentSpeakerDevice 获取当前的扬声器设备。
setCurrentSpeakerDevice 设置要使用的扬声器。
getCurrentSpeakerVolume 获取系统当前扬声器设备音量。
setCurrentSpeakerVolume 设置系统当前扬声器设备音量。
getCurrentSpeakerDeviceMute 获取系统当前扬声器设备是否静音。
enableFollowingDefaultAudioDevice 设置 SDK 使用的音频设备自动跟随系统默认设备。

美颜相关接口函数

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

辅流(屏幕分享)相关接口函数

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

自定义采集和渲染

API 描述
enableCustomAudioCapture 启用音频自定义采集模式。
sendCustomAudioData 向 SDK 投送自己采集的音频数据。
enableMixExternalAudioFrame 启用/关闭自定义音轨。
mixExternalAudioFrame 向 SDK 混入自定义音轨。
setMixExternalAudioVolume 设置推流时混入外部音频的推流音量和播放音量 。
generateCustomPTS 生成自定义采集时的时间戳。

自定义消息发送

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

背景混音相关接口函数

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

音效相关接口函数

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 描述
onConnectionLost SDK 跟服务器的连接断开。
onTryToReconnect SDK 尝试重新连接到服务器。
onConnectionRecovery SDK 跟服务器的连接恢复。
onSpeedTest 服务器测速的回调,SDK 对多个服务器 IP 做测速,每个 IP 的测速结果通过这个回调通知。

硬件设备事件回调

API 描述
onCameraDidReady 摄像头准备就绪。
onMicDidReady 麦克风准备就绪。
onUserVoiceVolume 用于提示音量大小的回调,包括每个 userId 的音量和远端总音量。
onDeviceChange 本地设备通断回调。
onTestMicVolume 麦克风测试音量回调。
onTestSpeakerVolume 扬声器测试音量回调。

自定义消息的接收回调

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

CDN 旁路转推回调

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

音效回调

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

屏幕分享回调

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

截图回调

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

背景混音事件回调

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

本地媒体录制回调

API 描述
onLocalRecordBegin 本地录制任务开始的事件。
onLocalRecording 本地录制任务正在进行中的事件。
onLocalRecordComplete 本地录制任务结束的事件。

关键类型定义

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

枚举值

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