new TrtcCloud()
TrtcCloud
Methods
(static) createInstance()
创建 TrtcCloud 单例
Example
TrtcCloud.createInstance();
(static) destroyInstance()
销毁 TrtcCloud 单例
Example
TrtcCloud.destroyInstance();
(static) on(event, callback)
设置 TrtcCloud 事件监听
Example
this.trtcCloud = TrtcCloud.createInstance(); // 创建 trtcCloud 实例
this.trtcCloud.on('onEnterRoom', (res) => {});
Parameters:
Name | Type | Description |
---|---|---|
event |
String |
事件名称 |
callback |
function |
事件回调 |
(static) off(event)
取消事件绑定
Example
this.trtcCloud.off('onEnterRoom');
this.trtcCloud.off('*'); // 取消所有绑定的事件
Parameters:
Name | Type | Description |
---|---|---|
event |
String |
事件名称,传入通配符 '*' 会解除所有事件绑定。 |
(static) enterRoom(params, scene)
进房
调用接口后,您会收到来自 TRTCCallback 中的 onEnterRoom(result) 回调
如果加入成功,result 会是一个正数(result > 0),表示加入房间所消耗的时间,单位是毫秒(ms)。
如果加入失败,result 会是一个负数(result < 0),表示进房失败的错误码。
- 参数 scene 的枚举值如下:
- TRTCAppSceneVideoCall:
视频通话场景,支持720P、1080P高清画质,单个房间最多支持300人同时在线,最高支持50人同时发言。
适合:[1对1视频通话]、[300人视频会议]、[在线问诊]、[视频聊天]、[远程面试]等。 - TRTCAppSceneAudioCall:
语音通话场景,支持 48kHz,支持双声道。单个房间最多支持300人同时在线,最高支持50人同时发言。
适合:[1对1语音通话]、[300人语音会议]、[语音聊天]、[语音会议]、[在线狼人杀]等。 - TRTCAppSceneLIVE:
视频互动直播,支持平滑上下麦,切换过程无需等待,主播延时小于300ms;支持十万级别观众同时播放,播放延时低至1000ms。
适合:[视频低延时直播]、[十万人互动课堂]、[视频直播 PK]、[视频相亲房]、[互动课堂]、[远程培训]、[超大型会议]等。 - TRTCAppSceneVoiceChatRoom:
语音互动直播,支持平滑上下麦,切换过程无需等待,主播延时小于300ms;支持十万级别观众同时播放,播放延时低至1000ms。
适合:[语音低延时直播]、[语音直播连麦]、[语聊房]、[K 歌房]、[FM 电台]等。
Note:
- 当 scene 选择为 TRTCAppSceneLIVE 或 TRTCAppSceneVoiceChatRoom 时,您必须通过 TRTCParams 中的 role 字段指定当前用户的角色。
- 不管进房是否成功,enterRoom 都必须与 exitRoom 配对使用,在调用
exitRoom
前再次调用enterRoom
函数会导致不可预期的错误问题。
Example
import { TRTCAppScene } from '@/TrtcCloud/lib/TrtcDefines';
this.trtcCloud = TrtcCloud.createInstance(); // 创建实例,只需创建一次
const params = {
sdkAppId: 0,
userId: 'xxx',
roomId: 12345,
userSig: 'xxx'
};
this.trtcCloud.enterRoom(params, TRTCAppScene.TRTCAppSceneVideoCall);
Parameters:
Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
params |
TRTCParams |
进房参数 Properties
|
||||||||||||||||||||||||||||||||||||||||||||
scene |
TRTCAppScene |
应用场景,目前支持视频通话(TRTCAppSceneVideoCall)、语音通话(TRTCAppSceneAudioCall)、在线直播(TRTCAppSceneLIVE)、语音聊天室(VTRTCAppSceneVoiceChatRoom)四种场景, 详见 [TrtcDefines] 中 TRTCAppScene 参数定义 |
(static) exitRoom()
退房
执行退出房间的相关逻辑释放资源后,SDK 会通过 onExitRoom()
回调通知到您
Note:
- 如果您要再次调用
enterRoom()
或者切换到其它的音视频 SDK,请等待onExitRoom()
回调到来后再执行相关操作,否则可能会遇到如摄像头、麦克风设备被强占等各种异常问题。
Example
this.trtcCloud.exitRoom();
(static) switchRole(role)
切换角色,仅适用于直播场景(TRTCAppSceneLIVE 和 TRTCAppSceneVoiceChatRoom)
在直播场景下,一个用户可能需要在“观众”和“主播”之间来回切换。 您可以在进房前通过 TRTCParams 中的 role 字段确定角色,也可以通过 switchRole 在进房后切换角色。
Example
import { TRTCRoleType } from '@/TrtcCloud/lib/TrtcDefines';
this.trtcCloud.switchRole(TRTCRoleType.TRTCRoleAudience);
Parameters:
Name | Type | Description |
---|---|---|
role |
TRTCRoleType |
目标角色,默认为主播
|
(static) connectOtherRoom(params)
请求跨房通话
默认情况下,只有同一个房间中的用户之间可以进行音视频通话,不同的房间之间的音视频流是相互隔离的。 使用该接口让身处两个不同房间中的主播进行跨房间的音视频流分享,从而让每个房间中的观众都能观看到这两个主播的音视频。 跨房通话的请求结果会通过监听 onConnectOtherRoom 事件通知给您。
Example
this.trtcCloud.connectOtherRoom({"roomId": 1233, "userId": "user_11"});
this.trtcCloud.connectOtherRoom({"strRoomId": "1233", "userId": "user_22"});
Parameters:
Name | Type | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
params |
Object |
跨房通话参数
Properties
|
(static) disconnectOtherRoom()
退出跨房通话
退出跨房通话的请求结果会通过监听 onDisconnectOtherRoom 事件通知给您。
Example
this.trtcCloud.disconnectOtherRoom();
(static) startLocalPreview(isFrontCamera, viewIdopt)
开启本地视频的预览画面
当开始渲染首帧摄像头画面时,您会收到 onFirstVideoFrame(null)
回调
Example
// 预览本地画面
const viewId = this.userId;
this.trtcCloud.startLocalPreview(true, viewId);
Parameters:
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
isFrontCamera |
Boolean |
true
|
前置、后置摄像头,true:前置摄像头;false:后置摄像头,默认为 true |
|
viewId |
String |
<optional> |
用于承载视频画面的渲染控件,使用原生插件中的 TRTCCloudUniPlugin-TXLocalViewComponent component,需要提供 viewId 属性值,例如 viewId=userId |
(static) setVideoEncoderParam(param)
设置视频编码器的编码参数
- 该设置能够决定远端用户看到的画面质量,同时也能决定云端录制出的视频文件的画面质量。
Example
import { TRTCVideoResolution, TRTCVideoResolutionMode, TRTCVideoEncParam } from '@/TrtcCloud/lib/TrtcDefines';
const videoResolution = TRTCVideoResolution.TRTCVideoResolution_480_360;
const videoResolutionMode = TRTCVideoResolutionMode.TRTCVideoResolutionModeLandscape; // 横屏采集
const videoFps = 15;
const videoBitrate = 900;
const minVideoBitrate = 200;
const enableAdjustRes = false;
// const param = new TRTCVideoEncParam(videoResolution, videoResolutionMode, videoFps, videoBitrate, minVideoBitrate, enableAdjustRes); // v1.1.0 方式
const param = { // v1.2.0 以上版本支持的方式
videoResolution,
videoResolutionMode,
videoFps,
videoBitrate,
minVideoBitrate,
enableAdjustRes,
};
this.trtcCloud.setVideoEncoderParam(param);
Parameters:
Name | Type | Description |
---|---|---|
param |
TRTCVideoEncParam |
用于设置视频编码器的相关参数 |
(static) switchCamera(isFrontCamera)
切换前置或后置摄像头
Example
// 切换前置或后置摄像头
const isFrontCamera = true;
this.trtcCloud.switchCamera(isFrontCamera);
Parameters:
Name | Type | Description |
---|---|---|
isFrontCamera |
Boolean |
前置、后置摄像头,true:前置摄像头;false:后置摄像头 |
(static) stopLocalPreview()
停止本地视频采集及预览
Example
this.trtcCloud.stopLocalPreview();
(static) setLocalRenderParams(params)
设置本地画面的渲染参数,可设置的参数包括有:画面的旋转角度、填充模式以及左右镜像等。
Example
import { TRTCVideoRotation, TRTCVideoFillMode, TRTCVideoMirrorType } from '@/TrtcCloud/lib/TrtcDefines';
const renderParams = {
rotation: TRTCVideoRotation.TRTCVideoRotation_0,
fillMode: TRTCVideoFillMode.TRTCVideoFillMode_Fill,
mirrorType: TRTCVideoMirrorType.TRTCVideoMirrorType_Auto
};
this.trtcCloud.setLocalRenderParams(renderParams);
Parameters:
Name | Type | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
params |
TRTCRenderParams |
本地图像的参数 Properties
|
(static) muteLocalVideo(streamType, mute)
暂停/恢复发布本地的视频流
该接口可以暂停(或恢复)发布本地的视频画面,暂停之后,同一房间中的其他用户将无法继续看到自己画面。 该接口在指定 TRTCVideoStreamTypeBig 时等效于 start/stopLocalPreview 这两个接口,但具有更好的响应速度。 因为 start/stopLocalPreview 需要打开和关闭摄像头,而打开和关闭摄像头都是硬件设备相关的操作,非常耗时。 相比之下,muteLocalVideo 只需要在软件层面对数据流进行暂停或者放行即可,因此效率更高,也更适合需要频繁打开关闭的场景。 当暂停/恢复发布指定 TRTCVideoStreamTypeBig 后,同一房间中的其他用户将会收到 onUserVideoAvailable 回调通知。 当暂停/恢复发布指定 TRTCVideoStreamTypeSub 后,同一房间中的其他用户将会收到 onUserSubStreamAvailable 回调通知。
Example
this.trtcCloud.muteLocalVideo(TRTCVideoStreamType.TRTCVideoStreamTypeBig, true);
Parameters:
Name | Type | Description |
---|---|---|
streamType |
Number |
要暂停/恢复的视频流类型(仅支持 TRTCVideoStreamTypeBig 和 TRTCVideoStreamTypeSub) |
mute |
Boolean |
true:屏蔽;false:开启,默认值:false |
(static) startRemoteView(userId, streamType, viewId)
显示远端视频或辅流
Example
import { TRTCVideoStreamType } from '@/TrtcCloud/lib/TrtcDefines';
const viewId = this.remoteUserId;
this.trtcCloud.startRemoteView(userId, TRTCVideoStreamType.TRTCVideoStreamTypeBig, viewId);
Parameters:
Name | Type | Description |
---|---|---|
userId |
String |
指定远端用户的 userId |
streamType |
Number |
指定要观看 userId 的视频流类型
|
viewId |
String |
用于承载视频画面的渲染控件,使用原生插件中的 TRTCCloudUniPlugin-TXRemoteViewComponent component,需要提供 viewId 属性值,例如 viewId=userId |
(static) stopRemoteView(userId, streamType)
停止显示远端视频画面,同时不再拉取该远端用户的视频数据流
指定要停止观看的 userId 的视频流类型
Example
import { TRTCVideoStreamType } from '@/TrtcCloud/lib/TrtcDefines';
this.trtcCloud.stopRemoteView(remoteUserId, TRTCVideoStreamType.TRTCVideoStreamTypeBig);
Parameters:
Name | Type | Description |
---|---|---|
userId |
String |
指定的远端用户 ID |
streamType |
Number |
|
(static) setRemoteRenderParams(userId, streamType, params)
设置远端画面的渲染参数,可设置的参数包括有:画面的旋转角度、填充模式以及左右镜像等。
Example
import { TRTCVideoRotation, TRTCVideoFillMode, TRTCVideoMirrorType } from '@/TrtcCloud/lib/TrtcDefines';
const renderParams = {
rotation: TRTCVideoRotation.TRTCVideoRotation_0,
fillMode: TRTCVideoFillMode.TRTCVideoFillMode_Fill,
mirrorType: TRTCVideoMirrorType.TRTCVideoMirrorType_Auto
};
this.trtcCloud.setRemoteRenderParams(userId, TRTCVideoStreamType.TRTCVideoStreamTypeBig, renderParams);
Parameters:
Name | Type | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
userId |
String |
远端用户 ID |
||||||||||||
streamType |
Number |
可以设置为主路画面(TRTCVideoStreamTypeBig)或辅路画面(TRTCVideoStreamTypeSub) |
||||||||||||
params |
TRTCRenderParams |
图像的参数 Properties
|
(static) setVideoEncoderRotation(rotation)
设置视频编码器输出的画面方向
该设置不影响本地画面的预览方向,但会影响房间中其他用户所观看到(以及云端录制文件)的画面方向。
当用户将手机或 Pad 上下颠倒时,由于摄像头的采集方向没有变,所以房间中其他用户所看到的画面会变成上下颠倒的,
在这种情况下,您可以通过调用该接口将 SDK 编码出的画面方向旋转180度,如此一来,房间中其他用户所看到的画面可保持正常的方向。
如果您希望实现上述这种友好的交互体验,我们更推荐您直接调用 setGSensorMode 实现更加智能的方向适配,无需您手动调用本接口。
Example
import { TRTCVideoRotation } from '@/TrtcCloud/lib/TrtcDefines';
this.trtcCloud.setVideoEncoderRotation(TRTCVideoRotation.TRTCVideoRotation_90);
Parameters:
Name | Type | Description |
---|---|---|
rotation |
Number |
目前支持 0、90、180、270 两个旋转角度,默认值:TRTCVideoRotation_0,即不旋转。 |
(static) setVideoEncoderMirror(mirror)
设置编码器输出的画面镜像模式
Example
this.trtcCloud.setVideoEncoderMirror(true);
Parameters:
Name | Type | Description |
---|---|---|
mirror |
Boolean |
是否开启远端镜像,true:开启远端画面镜像;false:关闭远端画面镜像,默认值:false。 |
(static) setGSensorMode(mode)
设置重力感应的适配模式
您可以通过本接口实现如下这种友好的交互体验:
当用户将手机或 Pad 上下颠倒时,由于摄像头的采集方向没有变,所以房间中其他用户所看到的画面会变成上下颠倒的,
在这种情况下,您可以通过调用该接口让 SDK 根据设备陀螺仪的朝向自动调整本地画面和编码器输出画面的旋转方向,以使远端观众可以看到正常朝向的画面。
Example
import { TRTCGSensorMode } from '@/TrtcCloud/lib/TrtcDefines';
this.trtcCloud.setGSensorMode(TRTCGSensorMode.TRTC_GSENSOR_MODE_DISABLE);
Parameters:
Name | Type | Description |
---|---|---|
mode |
Number |
重力感应模式,详情请参见 TRTCGSensorMode,默认值:TRTCGSensorMode_UIAutoLayout。。 |
(static) snapshotVideo(userId, streamType, sourceType)
视频画面截图
您可以通过本接口截取本地的视频画面,远端用户的主路画面以及远端用户的辅路(屏幕分享)画面。
Example
import { TRTCVideoStreamType } from '@/TrtcCloud/lib/TrtcDefines';
this.trtcCloud.snapshotVideo(null, TRTCVideoStreamType.TRTCVideoStreamTypeBig, TRTCSnapshotSourceType.TRTCSnapshotSourceTypeStream); // 截取本地视频流画面
this.trtcCloud.snapshotVideo(this.remoteUserId, TRTCVideoStreamType.TRTCVideoStreamTypeBig, TRTCSnapshotSourceType.TRTCSnapshotSourceTypeView); // 截取远端指定用户视频渲染画面
Parameters:
Name | Type | Description |
---|---|---|
userId |
String | null |
用户 ID,如指定 null 表示截取本地的视频画面 |
streamType |
Number |
视频流类型,可选择截取主路画面(TRTCVideoStreamTypeBig,常用于摄像头)或辅路画面(TRTCVideoStreamTypeSub,常用于屏幕分享) |
sourceType |
TRTCSnapshotSourceType |
画面来源,可选择截取视频流画面(TRTCSnapshotSourceTypeStream)或视频渲染画面(TRTCSnapshotSourceTypeView),前者一般更清晰 |
(static) startLocalAudio(quality)
开启本地音频的采集和上行, 并设置音频质量
该函数会启动麦克风采集,并将音频数据传输给房间里的其他用户。 SDK 不会默认开启本地音频采集和上行,您需要调用该函数开启,否则房间里的其他用户将无法听到您的声音
主播端的音质越高,观众端的听感越好,但传输所依赖的带宽也就越高,在带宽有限的场景下也更容易出现卡顿
Example
import { TRTCAudioQuality } from '@/TrtcCloud/lib/TrtcDefines';
this.trtcCloud.startLocalAudio(TRTCAudioQuality.TRTCAudioQualityDefault);
Parameters:
Name | Type | Description |
---|---|---|
quality |
TRTCAudioQuality |
声音音质
|
(static) stopLocalAudio()
关闭本地音频的采集和上行
当关闭本地音频的采集和上行,房间里的其它成员会收到 onUserAudioAvailable(false)
回调通知
Example
this.trtcCloud.stopLocalAudio();
(static) muteLocalAudio(mute)
静音本地的音频
当静音本地音频后,房间里的其它成员会收到 onUserAudioAvailable(false) 回调通知。 与 stopLocalAudio 不同之处在于,muteLocalAudio 并不会停止发送音视频数据,而是会继续发送码率极低的静音包。 在对录制质量要求很高的场景中,选择 muteLocalAudio 是更好的选择,能录制出兼容性更好的 MP4 文件。 这是由于 MP4 等视频文件格式,对于音频的连续性是要求很高的,简单粗暴地 stopLocalAudio 会导致录制出的 MP4 不易播放。
Example
this.trtcCloud.muteLocalAudio(true);
Parameters:
Name | Type | Description |
---|---|---|
mute |
Boolean |
true:屏蔽;false:开启,默认值:false |
(static) muteRemoteAudio(userId, mute)
静音掉某一个用户的声音,同时不再拉取该远端用户的音频数据流
Example
this.trtcCloud.muteRemoteAudio('denny', true);
Parameters:
Name | Type | Description |
---|---|---|
userId |
String |
用户 ID |
mute |
Boolean |
true:静音;false:非静音 |
(static) muteAllRemoteAudio(mute)
静音掉所有用户的声音,同时不再拉取该远端用户的音频数据流
Example
this.trtcCloud.muteAllRemoteAudio(true);
Parameters:
Name | Type | Description |
---|---|---|
mute |
Boolean |
true:静音;false:非静音 |
(static) setAudioRoute(route)
设置音频路由
设置“音频路由”,即设置声音是从手机的扬声器还是从听筒中播放出来,因此该接口仅适用于手机等移动端设备。 手机有两个扬声器:一个是位于手机顶部的听筒,一个是位于手机底部的立体声扬声器。 设置音频路由为听筒时,声音比较小,只有将耳朵凑近才能听清楚,隐私性较好,适合用于接听电话。 设置音频路由为扬声器时,声音比较大,不用将手机贴脸也能听清,因此可以实现“免提”的功能。
Example
import { TRTCAudioRoute } from '@/TrtcCloud/lib/TrtcDefines';
this.trtcCloud.setAudioRoute(TRTCAudioRoute.TRTCAudioRouteSpeaker); // TRTCAudioRoute.TRTCAudioRouteEarpiece (听筒)
Parameters:
Name | Type | Description |
---|---|---|
route |
TRTCAudioRoute |
音频路由,即声音由哪里输出(扬声器、听筒), 默认值:TRTCAudioRoute.TRTCAudioRouteSpeaker(扬声器), |
(static) enableAudioVolumeEvaluation(interval)
启用或关闭音量大小提示
开启此功能后,SDK 会在 onUserVoiceVolume() 中反馈对每一路声音音量大小值的评估。
Note:
- 如需打开此功能,请在 startLocalAudio 之前调用才可以生效。
Example
this.trtcCloud.enableAudioVolumeEvaluation(300);
Parameters:
Name | Type | Description |
---|---|---|
interval |
Number |
设置 onUserVoiceVolume 回调的触发间隔,单位为ms,最小间隔为100ms,如果小于等于0则会关闭回调,建议设置为300ms |
(static) setSubStreamEncoderParam(param)
设置屏幕分享(即辅路)的视频编码参数
该接口可以设定远端用户所看到的屏幕分享(即辅路)的画面质量,同时也能决定云端录制出的视频文件中屏幕分享的画面质量。 请注意如下两个接口的差异:
- setVideoEncoderParam 用于设置主路画面(TRTCVideoStreamTypeBig,一般用于摄像头)的视频编码参数。
- setSubStreamEncoderParam 用于设置辅路画面(TRTCVideoStreamTypeSub,一般用于屏幕分享)的视频编码参数。
Note:
- 即使您使用主路传输屏幕分享(在调用 startScreenCapture 时设置 type=TRTCVideoStreamTypeBig),依然要使用 setSubStreamEncoderParam 设定屏幕分享的编码参数,而不要使用 setVideoEncoderParam
Example
const params = {
videoResolution: TRTCVideoResolution.TRTCVideoResolution_640_360,
videoResolutionMode: TRTCVideoResolutionMode.TRTCVideoResolutionModePortrait,
videoFps: 15,
videoBitrate: 900,
minVideoBitrate: 200,
enableAdjustRes: false,
};
this.trtcCloud.setSubStreamEncoderParam(params);
Parameters:
Name | Type | Description |
---|---|---|
param |
TRTCVideoEncParam |
辅流编码参数,详情请参考 TRTCVideoEncParam。 |
(static) startScreenCapture(streamType, encParams, shareParams)
启动屏幕分享
Note:
- 一个用户同时最多只能上传一条主路(TRTCVideoStreamTypeBig)画面和一条辅路(TRTCVideoStreamTypeSub)画面, 默认情况下,屏幕分享使用辅路画面,如果使用主路画面,建议您提前停止摄像头采集(stopLocalPreview)避免相互冲突。
- 仅支持 iOS 13.0 及以上系统,进行应用内的屏幕分享
- Android: UniApp 使用 SDK 内置的前台服务时,只需要将接口参数 enableForegroundService 设置为 true。
- Android: UniApp 自己启动前台,需要在 mediaProject 类型的前台服务成功后再启动屏幕分享。
Example
import { TRTCVideoResolution, TRTCVideoResolutionMode, TRTCVideoStreamType} from '@/TrtcCloud/lib/TrtcDefines';
const encParams = {
videoResolution: TRTCVideoResolution.TRTCVideoResolution_640_360,
videoResolutionMode: TRTCVideoResolutionMode.TRTCVideoResolutionModePortrait,
videoFps: 15,
videoBitrate: 900,
minVideoBitrate: 200,
enableAdjustRes: false,
};
const shareParams = {
enableForegroundService: true,
};
this.trtcCloud.startScreenCapture(TRTCVideoStreamType.TRTCVideoStreamTypeSub, encParams, shareParams);
Parameters:
Name | Type | Default | Description |
---|---|---|---|
streamType |
Number |
屏幕分享使用的线路,可以设置为主路(TRTCVideoStreamTypeBig)或者辅路(TRTCVideoStreamTypeSub),推荐使用 |
|
encParams |
TRTCVideoEncParam |
null
|
屏幕分享的画面编码参数,可以设置为 null,表示让 SDK 选择最佳的编码参数(分辨率、码率等)。即使在调用 startScreenCapture 时设置 type=TRTCVideoStreamTypeBig,依然可以使用此接口更新屏幕分享的编码参数。 |
shareParams |
TRTCScreenShareParams |
您可以通过其中的 enableForegroundService 参数启用 SDK 内置的前台服务 |
(static) stopScreenCapture()
停止屏幕分享
Example
this.trtcCloud.stopScreenCapture();
(static) pauseScreenCapture()
暂停屏幕分享
Example
this.trtcCloud.pauseScreenCapture();
(static) resumeScreenCapture()
恢复屏幕分享
Example
this.trtcCloud.resumeScreenCapture();
(static) setBeautyStyle(beautyStyle)
设置美颜(磨皮)算法 TRTC 内置多种不同的磨皮算法,您可以选择最适合您产品定位的方案
Note:
- 设置美颜前,先调用
setBeautyLevel
设置美颜级别。否则美颜级别为 0 表示关闭美颜
Example
import { TRTCBeautyStyle } from '@/TrtcCloud/lib/TrtcDefines';
const beautyLevel = 5; // 美颜级别,取值范围0 - 9; 0表示关闭,9表示效果最明显。
this.trtcCloud.setBeautyLevel(beautyLevel);
this.trtcCloud.setBeautyStyle(TRTCBeautyStyle.TRTCBeautyStyleSmooth);
Parameters:
Name | Type | Description |
---|---|---|
beautyStyle |
TRTCBeautyStyle |
美颜风格,TRTCBeautyStyleSmooth:光滑;TRTCBeautyStyleNature:自然;TRTCBeautyStylePitu:优图 |
(static) setBeautyLevel(beautyLevel)
设置美颜级别
Example
const beautyLevel = 5; // 美颜级别,取值范围0 - 9; 0表示关闭,9表示效果最明显。
this.trtcCloud.setBeautyLevel(beautyLevel);
Parameters:
Name | Type | Description |
---|---|---|
beautyLevel |
Number |
美颜级别,取值范围0 - 9; 0表示关闭,9表示效果最明显。 |
(static) startPlayMusic(musicParam)
开始播放背景音乐
每个音乐都需要您指定具体的 ID,您可以通过该 ID 对音乐的开始、停止、音量等进行设置。
Note:
- 如果要多次播放同一首背景音乐,请不要每次播放都分配一个新的 ID,我们推荐使用相同的 ID。
- 若您希望同时播放多首不同的音乐,请为不同的音乐分配不同的 ID 进行播放。
- 如果使用同一个 ID 播放不同音乐,SDK 会先停止播放旧的音乐,再播放新的音乐。
Note:
在 uni-app 中 path 如何获取。
- 使用 cdn 地址,例如:
path = https://web.sdk.qcloud.com/component/TUIKit/assets/uni-app/calling-bell-1.mp3;
- 使用本地绝对路径。
- 通过 uni.saveFile 获取保存后的相对路径(建议这种路径)。
- 将上一步的相对路径转成绝对路径,plus.io.convertLocalFileSystemURL。
Example
import { AudioMusicParam } from '@/TrtcCloud/lib/TrtcDefines';
const musicParam = {
id: 1,
path: '',
loopCount: 1,
publish: true,
isShortFile: false,
startTimeMS: 0,
endTimeMS: 0,
};
this.trtcCloud.startPlayMusic(musicParam);
Parameters:
Name | Type | Description | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
musicParam |
AudioMusicParam |
音乐参数 Properties
|
(static) stopPlayMusic(id)
停止播放背景音乐
Example
const musicId = 5;
this.trtcCloud.stopPlayMusic(musicId);
Parameters:
Name | Type | Description |
---|---|---|
id |
Number |
音乐 ID |
(static) pausePlayMusic(id)
暂停播放背景音乐
Example
const musicId = 5;
this.trtcCloud.pausePlayMusic(musicId);
Parameters:
Name | Type | Description |
---|---|---|
id |
Number |
音乐 ID |
(static) resumePlayMusic(id)
恢复播放背景音乐
Example
const musicId = 5;
this.trtcCloud.resumePlayMusic(musicId);
Parameters:
Name | Type | Description |
---|---|---|
id |
Number |
音乐 ID |