tencentRtc
来自于:厦门软云网络科技有限公司立即使用
腾讯云实时音视频
实时音视频主打低延时互动直播和多人音视频两大解决方案,支持低延时直播观看、实时录制、美颜特效、立体声等能力,还能和直播 CDN 无缝对接,适用于互动连麦、跨房PK、语音电台、K 歌、小班课、大班课、语音聊天、视频聊天、在线会议等业务场景。
论坛示例
该论坛提供了模块使用示例入口,您可以在论坛中找到使用的Demo,以及问题反馈。
技术支持
如果您有以下需求:
- 方案咨询;
- 接入流程协助;
- 测试DEMO功能;
- 内测功能;
- 问题反馈;
- 需求反馈;
音视频产品使用复杂程度高,可以先联系我们,获取技术支持,微信号为: ruanyunkeji001或ruanyunkeji002
接口列表
初始化与监听
接口列表 | 功能 |
---|---|
init | 初始化 |
setTrtcListener | 设置监听 |
removeTrtcListener | 移除监听 |
destroy | 销毁 |
房间相关
接口列表 | 功能 |
---|---|
enterRoom | 进入房间 |
exitRoom | 离开房间 |
switchRole | 切换角色 |
connectOtherRoom | 请求跨房通话(主播PK) |
disconnectOtherRoom | 退出跨房通话 |
setDefaultStreamRecvMode | 设置音视频数据接收模式 |
CDN接口
接口列表 | 功能 |
---|---|
startPublishing | 开始向腾讯云的直播CDN推流 |
stopPublishing | 停止向腾讯云CDN推流 |
startPublishCDNStream | 开始向友商云的直播CDN转推 |
stopPublishCDNStream | 停止向非腾讯云的地址转推 |
视频接口
接口列表 | 功能 |
---|---|
startLocalPreview | 开启本地视频的预览画面 |
stopLocalPreview | 停止本地视频采集以及预览 |
muteLocalVideo | 暂停/恢复推送本地的视频数据 |
setVideoMuteImage | 设置暂停推送本地视频时要推送的图片 |
startRemoteView | 开始显示远端视频画面 |
stopRemoteView | 停止显示远端画面 |
stopAllRemoteView | 停止显示所有远端视频画面 |
muteRemoteVideoStream | 暂停/恢复接收指定的远端视频流 |
muteAllRemoteVideoStreams | 暂停/回复所有远端视频流 |
setVideoEncoderParam | 设置视频编码器相关参数 |
setLocalRenderParams | 本地图像的渲染设置 |
setRemoteRenderParams | 远端图像的渲染设置 |
setVideoEncoderRotation | 设置视频编码输出的画面方向 |
setVideoEncoderMirror | 设置本地摄像头预览画面的镜像模式 |
setGSensorMode | 设置重力感应的适应模式 |
音频接口
接口列表 | 功能 |
---|---|
startLocalAudio | 开启本地音频的采集和上行 |
stopLocalAudio | 关闭本地音频的采集和上行 |
muteLocalAudio | 静音或取消本地音频静音 |
muteRemoteAudio | 静音/取消静音指定的远端用户的声音 |
muteAllRemoteAudio | 静音/取消静音所有用户的声音 |
摄像头接口
接口列表 | 功能 |
---|---|
isFrontCamera | 是否使用前置摄像头 |
switchCamera | 切换摄像头 |
基础美颜
接口列表 | 功能 |
---|---|
setBeautyStyle | 设置美颜(磨皮)算法 |
setBeautyLevel | 设置美颜级别 |
setWhitenessLevel | 设置美白级别 |
setRuddyLevel | 设置红润级别 |
setFilter | 设置滤镜 |
setFilterStrength | 设置滤镜浓度 |
音乐特效和人声
接口列表 | 功能 |
---|---|
setMusicListener | 设置音乐监听器 |
removeMusicListener | 移除音乐监听器 |
startPlayMusic | 开始播放背景音乐 |
stopPlayMusic | 停止播放背景音乐 |
pausePlayMusic | 暂停播放背景音乐 |
resumePlayMusic | 恢复播放背景音乐 |
自定义消息
如果想要在 App 切后台时依然能够实时收到 IM 消息,可以使用离线推送服务。
接口列表 | 功能 |
---|---|
sendCustomCmdMsg | 发送自定义消息给房间内所有用户 |
sendSEIMsg | 将小数据量的自定义数据嵌入视频帧中 |
模块接口
init
初始化
init({}, function(ret, err))
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
代码示例
trtc.init({}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS系统,Android系统
可提供1.0.0及更高版本
setTrtcListener
设置监听
setTrtcListener({}, function(ret, err))
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
{
eventType: 'onScreenCaptureStopped'
}
- 字段详情:
eventType:
- 类型: 字符串类型
- 描述: 事件名称
- 取值范围:
onEnterRoom:
已加入房间的回调
onExitRoom:
离开房间的事件回调
onSwitchRole:
切换角色的事件回调
onConnectOtherRoom:
请求跨房通话(主播 PK)的结果回调
onDisconnectOtherRoom:
结束跨房通话(主播 PK)的结果回调
onSwitchRoom:
切换房间 (switchRoom) 的结果回调
onRemoteUserEnterRoom:
有用户加入当前房间
onRemoteUserLeaveRoom:
有用户离开当前房间
onUserVideoAvailable:
远端用户是否存在可播放的主路画面(一般用于摄像头)
onUserSubStreamAvailable:
远端用户是否存在可播放的辅路画面(一般用于屏幕分享)
onUserAudioAvailable:
远端用户是否存在可播放的音频数据
onFirstVideoFrame:
开始渲染本地或远程用户的首帧画面
onFirstAudioFrame:
开始播放远程用户的首帧音频(本地声音暂不通知)
onSendFirstLocalVideoFrame:
首帧本地视频数据已经被送出
onSendFirstLocalAudioFrame:
首帧本地音频数据已经被送出
onConnectionLost:
SDK 跟服务器的连接断开
onTryToReconnect:
SDK 尝试重新连接到服务器
onConnectionRecovery:
SDK 跟服务器的连接恢复
onCameraDidReady:
摄像头准备就绪
onMicDidReady:
麦克风准备就绪
onAudioRouteChanged:
音频路由发生变化,音频路由即声音由哪里输出(扬声器或听筒)
onUserVoiceVolume:
用于提示音量大小的回调,包括每个 userId 的音量和远端总音量
onRecvCustomCmdMsg:
收到自定义消息回调
onMissCustomCmdMsg:
自定义消息丢失回调
onRecvSEIMsg:
收到 SEI 消息的回调
onStartPublishing:
开始向腾讯云的直播 CDN 推流的回调,对应于startPublishing() 接口
onStopPublishing:
停止向腾讯云的直播 CDN 推流的回调,对应于 stopPublishing() 接口
onStartPublishCDNStream:
启动旁路推流到 CDN 完成的回调,对应于中的 startPublishCDNStream() 接口
onStopPublishCDNStream:
停止旁路推流到 CDN 完成的回调
代码示例
trtc.setTrtcListener({}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS系统,Android系统
可提供1.0.0及更高版本
removeTrtcListener
移除监听
removeTrtcListener({}, function(ret, err))
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
代码示例
trtc.removeTrtcListener({}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS系统,Android系统
可提供1.0.0及更高版本
destroy
销毁
destroy({}, function(ret, err))
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
Im.destroy({}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS系统,Android系统
可提供1.0.0及更高版本
enterRoom
进入房间
enterRoom({params}, function(ret, err))
params
scence:
- 类型: 整数类型
- 描述: (必填项) 应用场景
- 取值范围:
- 0: 视频通话(VideoCall)
- 1: 语音通话(AudioCall)
- 2: 连麦直播(Live)
- 3: 语聊房(VoiceChatRoom)
params:
- 类型: JSON对象
- 描述: (必填项) 进房参数
- 字段详情:
sdkAppId:
- 类型: 整数类型
- 描述: (必填项) 应用标识
userId:
- 类型: 字符串类型
- 描述: (必填项) 当前用户的 userId,相当于用户名
userSig:
- 类型: 字符串类型
- 描述: (必填项) 用户签名, 当前 userId 对应的验证签名,相当于使用云服务的登录密码
roomId:
- 类型: 整数类型
- 描述: (必填项) 数字房间号码,在同一个房间里的用户(userId)可以彼此看到对方并进行视频通话
- 取值范围: [1 - 4294967294]
role:
- 类型: 整数类型
- 描述: (可选项) 直播场景下的角色,仅适用于直播场景(LIVE 和 VoiceChatRoom),通话场景下指定无效。
- 取值范围:
- 0: 主播
- 1: 观众
- 默认值: 0
streamId:
- 类型: 字符串类型
- 描述: (可选项) 绑定腾讯云直播CDN流Id,设置之后,您就可以在腾讯云直播 CDN 上通过标准直播方案(FLV或HLS)播放该用户的音视频流
- 推荐取值: 限制长度为64字节,可以不填写,一种推荐的方案是使用 “sdkappid_roomid_userid_main” 作为 streamid,这样比较好辨认且不会在您的多个应用中发生冲突
- 特殊说明: 要使用腾讯云直播 CDN,您需要先在控制台 中的功能配置页开启“启用旁路直播”开关
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911 // 整数类型, 错误码
msg: '签名过期' // 字符串类型, 错误信息
}
示例代码
var sdkAppId = 14xxxxx16;
var userId = 'test001';
var userSig = 'eJwtzE0xxxxxpQsAsxp';
var roomId = 1;
var streamId = 'user_stream_001';
var scence = 0;
trtc.enterRoom({
sdkAppId: sdkAppId,
userId: userId,
userSig: userSig,
roomId: roomId,
streamId: streamId,
scence: scence
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS系统,Android系统
可提供1.0.0及更高版本
exitRoom
离开房间
exitRoom({}, function(ret, err))
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
trtc.exitRoom({}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS系统,Android系统
可提供1.0.0及更高版本
switchRole
切换角色,仅适用于直播场景(连麦直播Live 和 语聊房VoiceChatRoom)
switchRole({params}, function(ret, err))
params
role:
- 类型: 整数类型
- 描述: (可选项) 目标角色,默认为主播
- 取值范围:
- 0: 主播,可以上行视频和音频,一个房间里最多支持50个主播同时上行音视频。
- 1: 观众,只能观看,不能上行视频和音频,一个房间里的观众人数没有上限。
- 默认值: 0
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var role = 0;
trtc.switchRole({
role: role
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS系统,Android系统
可提供1.0.0及更高版本
connectOtherRoom
请求跨房通话(主播 PK)
connectOtherRoom({params}, function(ret, err))
params
roomId:
- 类型: 整数类型
- 描述: (必填项) 目标房间号
userId:
- 类型: 字符串类型
- 描述: (必填项) 目标用户Id
callback(ret, err)
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var remoteUserId = 'test002';
var otherRoomId = 2;
trtc.connectOtherRoom({
userId: remoteUserId,
roomId: otherRoomId
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
disconnectOtherRoom
退出跨房通话
disconnectOtherRoom({}, function(ret, err))
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
trtc.disconnectOtherRoom({}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
setDefaultStreamRecvMode
设置音视频数据接收模式,需要在进房前设置才能生效
setDefaultStreamRecvMode({params}, function(ret, err))
params
isAudioAuto:
- 类型: 布尔类型
- 描述: (可选项) true表示自动接收音频数据;false表示需要调用 muteRemoteAudio 进行请求或取消。
- 默认值:true
isVideoAuto:
- 类型: 布尔类型
- 描述: (可选项) true表示自动接收视频数据;false表示需要调用 startRemoteView/stopRemoteView 进行请求或取消。
- 默认值:true
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var isAudioAuto = true;
var isVideoAuto = true;
trtc.setDefaultStreamRecvMode({
isAudioAuto: isAudioAuto,
isVideoAuto: isVideoAuto
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
startPublishing
开始向腾讯云的直播 CDN 推流
startPublishing({params}, function(ret, err))
params
streamId:
- 类型: 字符串类型
- 描述: (必填项) 自定义流Id
streamType:
- 类型: 整数类型
- 描述: (必填项) 画面视频流类型
- 取值范围:
- 0: 主画面视频流
- 1: 小画面视频流
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var streamId = 'user_stream_001';
var streamType = 0;
trtc.startPublishing({
streamId: streamId,
streamType: streamType
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
stopPublishing
停止向腾讯云的直播 CDN 推流
stopPublishing({}, function(ret, err))
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
trtc.stopPublishing({}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
startPublishCDNStream
开始向友商云的直播 CDN 转推
startPublishCDNStream({params}, function(ret, err))
params
appId:
- 类型: 整数类型
- 描述: (必填项) 腾讯云 AppID,请在 实时音视频控制台 选择已经创建的应用,单击【帐号信息】,在“直播信息”中获取
bizid:
- 类型: 整数类型
- 描述: (必填项) 腾讯云直播 bizid,请在 实时音视频控制台 选择已经创建的应用,单击【帐号信息】,在“直播信息”中获取
url:
- 类型: 字符串类型
- 描述: (必填项) 旁路转推的Url
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var appId = 111;
var bizId = 1234;
trtc.startPublishCDNStream({
appId: appId,
bizId: bizId,
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
stopPublishCDNStream
停止向非腾讯云地址转推
stopPublishCDNStream({}, function(ret, err))
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
trtc.stopPublishCDNStream({}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
startLocalPreview
开启摄像头预览
startLocalPreview({params}, function(ret, err))
params
isFront:
- 类型: 布尔类型
- 描述: (必填项) true表示前置摄像头;false表示后置摄像头
rect:
- 类型: JSON对象
- 描述: (必填项) 画面显示的区域和大小
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
trtc.startLocalPreview({
rect: {
x: 0,
y: 0,
w: api.winWidth / 2,
h: api.winHeight / 2
},
isFront: isFront
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
stopLocalPreview
停止本地视频采集及预览
stopLocalPreview({}, function(ret, err))
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
trtc.stopLocalPreview({}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
muteLocalVideo
暂停/恢复推送本地的视频数据
muteLocalVideo({params}, function(ret, err))
params
isMute:
- 类型: 布尔类型
- 描述: (必填项) true表示暂停;false表示恢复
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var isMute = true;
trtc.muteLocalVideo({
isMute: isMute
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
setVideoMuteImage
设置暂停推送本地视频时要推送的图片
setVideoMuteImage({params}, function(ret, err))
params
img:
- 类型: 字符串类型
- 描述: (必填项) 邀请Id
fps:
- 类型: 整数类型
- 描述: (必填项) 设置推送图片帧率
- 取值范围: [5 - 10]
- 默认值: 5
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var img = 'xxxx';
var fps = 10;
trtc.setVideoMuteImage({
img: img,
fps: fps
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
startRemoteView
开始拉取并显示指定用户的远端画面
startRemoteView({params}, function(ret, err))
params
userId:
- 类型: 字符串类型
- 描述: (必填项) 指定远端用户的 userId
streamType:
- 类型: 整数类型
- 描述: (必填项) 指定要观看 userId 的视频流类型
- 取值范围:
- 0: 高清大画面
- 1: 低清小画面
- 2: 辅流(屏幕分享)
rect:
- 类型: JSON对象
- 描述: (必填项) 画面显示的位置和大小
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var remoteUserId = 'test002';
var streamType = 0;
trtc.startRemoteView({
rect: {
x: 0,
y: 0,
w: api.winWidth / 4,
h: api.winHeight / 4
},
userId: remoteUserId,
streamType: streamType
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
stopRemoteView
停止显示远端视频画面,同时不再拉取该远端用户的视频数据流
stopRemoteView({params}, function(ret, err))
params
userId:
- 类型: 字符串类型
- 描述: (必填项) 指定远端用户的 userId
streamType:
- 类型: 整数类型
- 描述: (必填项) 指定要停止观看的 userId 的视频流类型
- 取值范围:
- 0: 高清大画面
- 1: 低清小画面
- 2: 辅流(屏幕分享)
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var remoteUserId = 'test002';
var streamType = 0;
trtc.stopRemoteView({
userId: remoteUserId,
streamType: streamType
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
stopAllRemoteView
停止显示远端视频画面,同时不再拉取该远端用户的视频数据流
stopAllRemoteView({}, function(ret, err))
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
trtc.stopAllRemoteView({}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
muteRemoteVideoStream
暂停/恢复接收指定的远端视频流
muteRemoteVideoStream({params}, function(ret, err))
params
userId:
- 类型:字符串类型
- 描述: (必填项) 对方的用户标识
isMute:
- 类型: 布尔类型
- 描述: (可选项) 是否暂停接收
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var remoteUserId = 'test002';
var isMute = true;
trtc.muteRemoteVideoStream({
userId: remoteUserId,
isMute: isMute
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
muteAllRemoteVideoStreams
暂停/恢复接收所有远端视频流
muteAllRemoteVideoStreams({params}, function(ret, err))
params
isMute:
- 类型:布尔类型
- 描述: (可选项) 是否暂停接收
- 默认值: false
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var isMute = true;
trtc.muteAllRemoteVideoStreams({
isMute: isMute
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
setVideoEncoderParam
设置视频编码器相关参数
setVideoEncoderParam({params}, function(ret, err))
params
resolution:
- 类型: 整数类型
- 描述: (必填项) 视频分辨率
- 取值范围:
宽高比1:1
- 0: 分辨率120x120, 建议码率 VideoCall:80kbps LIVE:120kbps
- 1: 分辨率160x160, 建议码率 VideoCall:100kbps LIVE:150kbps
- 2: 分辨率270x270, 建议码率 VideoCall:200kbps LIVE:120kbps
- 3: 分辨率480x480, 建议码率 VideoCall:350kbps LIVE:120kbps 宽高比4:3
- 4: 分辨率160x120, 建议码率 VideoCall:100kbps LIVE:150kbps
- 5: 分辨率240x180, 建议码率 VideoCall:150kbps LIVE:225kbps
- 6: 分辨率280x210, 建议码率 VideoCall:200kbps LIVE:300kbps
- 7: 分辨率320x240, 建议码率 VideoCall:250kbps LIVE:375kbps
- 8: 分辨率400x300, 建议码率 VideoCall:300kbps LIVE:450kbps
- 9: 分辨率480x360, 建议码率 VideoCall:400kbps LIVE:600kbps
- 10: 分辨率640x480, 建议码率 VideoCall:600kbps LIVE:900kbps
- 11: 分辨率960x720, 建议码率 VideoCall:1000kbps LIVE:1500kbps 宽高比16:9
- 12: 分辨率160x90, 建议码率 VideoCall:150kbps LIVE:250kbps
- 13: 分辨率256x144, 建议码率 VideoCall:200kbps LIVE:300kbps
- 14: 分辨率320x180, 建议码率 VideoCall:250kbps LIVE:400kbps
- 15: 分辨率480x270, 建议码率 VideoCall:350kbps LIVE:550kbps
- 16: 分辨率640x360, 建议码率 VideoCall:550kbps LIVE:900kbps
- 17: 分辨率960x540, 建议码率 VideoCall:850kbps LIVE:1300kbps
- 18: 分辨率1280x720, 建议码率 VideoCall:1200kbps LIVE:1800kbps
- 19: 分辨率1920x1080, 建议码率 VideoCall:2000kbps LIVE:3000kbps
fps:
- 类型: 整数类型
- 描述: (必填项) 视频采集帧率
- 推荐取值: 15fps或20fps,5fps以下,卡顿感明显。10fps以下,会有轻微卡顿感。20fps以上,则过于浪费(电影的帧率为24fps)。
- 特别说明: 很多 Android 手机的前置摄像头并不支持15fps以上的采集帧率,部分过于突出美颜功能的 Android 手机前置摄像头的采集帧率可能低于10fps。
bitrate:
- 类型: 整数类型
- 描述: (必填项) 目标视频码率,SDK 会按照目标码率进行编码,只有在网络不佳的情况下才会主动降低视频码率
- 推荐取值: 请参考本 videoResolution 在各档位注释的最佳码率,也可以在此基础上适当调高。 比如 分辨率1280x720 对应 1200kbps 的目标码率,您也可以设置为 1500kbps 用来获得更好的清晰度观感。
- 特别说明: SDK 会努力按照 videoBitrate 指定的码率进行编码,只有在网络不佳的情况下才会主动降低视频码率,最低会降至 minVideoBitrate 所设定的数值。 如果您追求“允许卡顿但要保持清晰”的效果,可以设置 minVideoBitrate 为 videoBitrate 的 60; 如果您追求“允许模糊但要保持流畅”的效果,可以设置 minVideoBitrate 为 200kbps; 如果您将 videoBitrate 和 minVideoBitrate 设置为同一个值,等价于关闭 SDK 的自适应调节能力。
resMode:
- 类型: 整数类型
- 描述: (可选项) 分辨率模式(横屏分辨率 - 竖屏分辨率)
- 取值范围:
- 0: Portrait
- 1: Landscape
- 推荐取值: 手机直播建议选择 Portrait,Window 和 Mac 建议选择 Landscape。
- 特别说明: 如果 videoResolution 指定分辨率 640 × 360,resMode 指定模式为 Portrait,则最终编码出的分辨率为360 × 640。
- 默认值: 0
minBitrate:
- 类型: 整数类型
- 描述: (可选项) 最低视频码率,SDK 会在网络不佳的情况下主动降低视频码率,最低会降至 minVideoBitrate 所设定的数值。
- 推荐取值:
- 如果您追求“允许卡顿但要保持清晰”的效果,可以设置 minBitrate 为 videoBitrate 的 60;
- 如果您追求“允许模糊但要保持流畅”的效果,可以设置 minVideoBitrate 为 200kbps;
- 如果您将 videoBitrate 和 minVideoBitrate 设置为同一个值,等价于关闭 SDK 的自适应调节能力;
- 默认值:0,此时最低码率由 SDK 根据分辨率情况,自动设置合适的数值。
- 特别说明: 当您把分辨率设置的比较高时,minBitrate 不适合设置的太低,否则会出现画面模糊和大范围的马赛克宏块。 比如把分辨率设置为 720p,把码率设置为 200kbps,那么编码出的画面将会出现大范围区域性马赛克。
- 默认值: 0
enableAdjustRes:
- 类型: 布尔类型
- 描述: (可选项) 是否允许调整分辨率
- 推荐取值:
- 手机直播建议选择 false。
- 视频通话模式,若更关注流畅性,建议选择 true,此时若遇到带宽有限的弱网,SDK 会自动降低分辨率以保障更好的流畅度(仅针对 TRTCVideoStreamTypeBig 生效)。
- 默认值: false
- 特别说明: 若有录制需求,选择 true 时,请确保通话过程中,调整分辨率不会影响您的录制效果。
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var videoEncParam = {
resolution: 0,
bitrate: 12800
};
trtc.setVideoEncoderParam({
videoEncParam: videoEncParam
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
setLocalRenderParams
本地图像的渲染设置
setLocalRenderParams({params}, function(ret, err))
params
fillMode:
- 类型:整数类型
- 描述: (可选项) 画面填充模式
- 取值范围:
- 0: 填充(画面可能会被拉伸裁剪)
- 1: 适应(画面可能会有黑边)
- 默认值: 0
mirrorType:
- 类型: 整数类型
- 描述: (可选项) 画面镜像模式
- 取值范围:
- 0: 前置摄像头镜像,后置摄像头不镜像
- 1: 前后置摄像头画面均镜像
- 2: 前后置摄像头画面均不镜像
- 默认值: 0
rotation:
- 类型: 整数类型
- 描述: (可选项) 画面朝向
- 取值范围:
- 0: 不旋转
- 1: 顺时针旋转90度
- 2: 顺时针旋转180度
- 3: 顺时针旋转270度
- 默认值: 0
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var fillMode = 0;
var rotation = 0;
var mirrorType = 0;
trtc.setLocalRenderParams({
fillMode: fillMode,
mirrorType: mirrorType,
rotation: rotation
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
setRemoteRenderParams
远端图像的渲染设置
setRemoteRenderParams({params}, function(ret, err))
params
userId:
- 类型:字符串类型
- 描述: (必填项) 用户Id
streamType:
- 类型: 整数类型
- 描述: (必填项) 视频线路
- 取值范围:
- 0: 主路(TRTCVideoStreamTypeBig)
- 1: 辅路(TRTCVideoStreamTypeSub)
renderParams:
- 类型: JSON对象
描述: (可选项) 渲染设置
字段详情:
fillMode:
- 类型:整数类型
- 描述: (可选项) 画面填充模式
- 取值范围:
- 0: 填充(画面可能会被拉伸裁剪)
- 1: 适应(画面可能会有黑边)
- 默认值: 0
mirrorType:
- 类型: 整数类型
- 描述: (可选项) 画面镜像模式
- 取值范围:
- 0: 前置摄像头镜像,后置摄像头不镜像
- 1: 前后置摄像头画面均镜像
- 2: 前后置摄像头画面均不镜像
- 默认值: 0
rotation:
- 类型: 整数类型
- 描述: (可选项) 画面朝向
- 取值范围:
- 0: 不旋转
- 1: 顺时针旋转90度
- 2: 顺时针旋转180度
- 3: 顺时针旋转270度
- 默认值: 0
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var remoteUserId = 'test002';
var streamType = 0;
var fillMode = 0;
var rotation = 0;
var mirrorType = 0;
trtc.setRemoteRenderParams({
userId: remoteUserId,
streamType: streamType,
renderParams: {
fillMode: fillMode,
mirrorType: mirrorType,
rotation: rotation
}
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
setVideoEncoderRotation
设置视频编码输出的画面方向,即设置远端用户观看到的和服务器录制的画面方向
setVideoEncoderRotation({params}, function(ret, err))
params
rotation:
- 类型:整数类型
- 描述: (可选项) 旋转角度
- 取值范围: 0: 旋转0度 1: 旋转180度
- 默认值: 0
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var rotation = 0;
trtc.setVideoEncoderRotation({
rotation: rotation
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
setVideoEncoderMirror
设置编码器输出的画面镜像模式
setVideoEncoderMirror({params}, function(ret, err))
params
isMirror:
- 类型: 布尔类型
- 描述: (必填项) 是否开启远端镜像
- 默认值: false
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var isMirror = true;
trtc.setVideoEncoderMirror({
isMirror: isMirror
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
setGSensorMode
设置重力感应的适应模式
setGSensorMode({params}, function(ret, err))
params
mode:
- 类型: 整数类型
- 描述: (必填项) 重力感应模式
- 取值范围:
- 0: 关闭重力感应
- 1: 开启重力感应
- 2: 待废弃,效果等同于1
- 默认值: 1
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var gSensorMode = 0;
trtc.setGSensorMode({
mode: gSensorMode
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
startLocalAudio
开启本地音频的采集和上行
startLocalAudio({params}, function(ret, err))
params
quality:
- 类型: 整数类型
- 描述: (必填项) 声音音质
- 取值范围:
- 0: 流畅:采样率:16k;单声道;音频裸码率:16kbps;适合语音通话为主的场景,比如在线会议,语音通话。
- 1: 默认:采样率:48k;单声道;音频裸码率:50kbps;SDK 默认的音频质量,如无特殊需求推荐选择之。
- 高音质:采样率:48k;双声道 + 全频带;音频裸码率:128kbps;适合需要高保真传输音乐的场景,比如K歌、音乐直播等。
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var quality = 1;
trtc.startLocalAudio({
quality: quality
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
stopLocalAudio
关闭本地音频的采集和上行
stopLocalAudio({}, function(ret, err))
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
trtc.stopLocalAudio({}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
muteLocalAudio
静音/取消静音本地的音频
muteLocalAudio({params}, function(ret, err))
params
isMute:
- 类型: 布尔类型
- 描述: (可选项) 是否静音
- 默认值: false
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var isMute = true;
trtc.muteLocalAudio({
isMute: isMute
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
muteRemoteAudio
静音/取消静音指定的远端用户的声音
muteRemoteAudio({params}, function(ret, err))
params
userId:
- 类型: 字符串类型
- 描述: (必填项) 对方的用户Id
isMute:
- 类型: 布尔类型
- 描述: (可选项) 是否静音
- 默认值: false
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var remoteUserId = 'test002';
var isMute = true;
trtc.muteRemoteAudio({
userId: remoteUserId,
isMute: isMute
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
isFrontCamera
判断当前是否为前置摄像头
isFrontCamera({}, function(ret, err))
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
trtc.isFrontCamera({}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
switchCamera
切换摄像头
switchCamera({params}, function(ret, err))
params
isFront:
- 类型: 布尔类型
- 描述: (必填项) 是否为前置摄像头
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true, // 布尔类型, true表示操作成功
isFront: true
}
- 字段详情:
isFront:
- 类型: 布尔类型
- 描述: 是否使用前置摄像头
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var isFront = true;
trtc.switchCamera({
isFront: isFront
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
Android系统
可提供的1.0.0及更高版本
setBeautyStyle
设置美颜(磨皮)算法
setBeautyStyle({params}, function(ret, err))
params
mode:
- 类型: 整数类型
- 描述: (必填项) 美颜风格,光滑或者自然,光滑风格磨皮更加明显,适合娱乐场景。
- 取值范围:
- 0: 光滑,适用于美女秀场,效果比较明显
- 1: 自然,磨皮算法更多地保留了面部细节,主观感受上会更加自然
- 2: 朦胧(仅支持iOS)
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var beautyStyleMode = 0;
trtc.setBeautyStyle({
mode: beautyStyleMode
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
setBeautyLevel
设置美颜级别
setBeautyLevel({params}, function(ret, err))
params
level:
- 类型: 字符串类型
- 描述: (必填项) 美颜级别,0表示关闭,1 - 9值越大,效果越明显。
- 取值范围: [0 - 9]
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var beautyLevel = 1;
trtc.setBeautyLevel({
level: beautyLevel
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
setWhitenessLevel
设置美白级别
setWhitenessLevel({params}, function(ret, err))
params
level:
- 类型: 整数类型
- 描述: (必填项) 美白级别,0表示关闭,1 - 9值越大,效果越明显。
- 取值范围: [0 - 9]
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var whitenessLevel = 1;
trtc.setWhitenessLevel({
level: whitenessLevel
}, function(ret, err){
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
setRuddyLevel
设置红润级别
setRuddyLevel({params}, function(ret, err))
params
level:
- 类型: 整数类型
- 描述: (必填项) 红润级别,0表示关闭,1 - 9值越大,效果越明显。
- 取值范围: [0 - 9]
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var ruddyLevel = 1;
trtc.setRuddyLevel({
level: ruddyLevel
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
setFilter
设置指定素材滤镜特效
setFilter({params}, function(ret, err))
params
img:
- 类型: 字符串类型
- 描述: (必填项) 滤镜图片
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var img = 'xxxxx';
trtc.setFilter({
img: img
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
setFilterStrength
设置滤镜浓度
setFilterStrength({param}, function(ret, err))
params
strength
- 类型: 浮点数类型
- 描述: (必填项) 滤镜浓度
- 取值范围: [0 - 1]
- 默认值: 0.5
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var strength = 0.5;
trtc.setFilterStrength({
strength: strength
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
setMusicListener
设置背景音乐监听
setMusicListener({}, function(ret, err))
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var musicId = 12;
trtc.setMusicListener({
id: musicId
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
removeMusicListener
移除背景音乐监听
removeMusicListener({}, function(ret, err))
callback
ret:
- 类型: JSON对象
- 内部字段
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var musicId = 12;
trtc.removeMusicListener({
id: musicId
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
startPlayMusic
开始播放背景音乐
startPlayMusic({params}, function(ret, err))
params
id:
- 类型: 整数类型
- 描述: (必填项 ) 音乐 Id
path:
- 类型: 字符串类型
- 描述: (必填项) 音乐文件的绝对路径
callback
status:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var musicId = 10;
var musicPath = 'http://bgm-1252463788.cos.ap-guangzhou.myqcloud.com/keluodiya.mp3';
trtc.startPlayMusic({
id: musicId,
path: musicPath
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
stopPlayMusic
停止播放背景音乐
stopPlayMusic({params}, function(ret, err))
params
id:
- 类型: 整数类型
- 描述: (必填项 ) 音乐 Id
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var musicId = 10;
trtc.stopPlayMusic({
id: musicId
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
pausePlayMusic
暂停播放背景音乐
pausePlayMusic({params}, function(ret, err))
params
id:
- 类型: 整数类型
- 描述: (必填项 ) 音乐 Id
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var musicId = 10;
trtc.pausePlayMusic({
id: musicId
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
resumePlayMusic
恢复播放背景音乐
resumePlayMusic({params}, function(ret, err))
params
id:
- 类型: 整数类型
- 描述: (必填项 ) 音乐 Id
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var musicId = 10;
trtc.resumePlayMusic({
id: musicId
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
sendCustomCmdMsg
发送自定义消息给房间内所有用户
sendCustomCmdMsg({params}, function(ret, err))
params
cmdId:
- 类型: 整数类型
- 描述: (必填项) 消息 Id
- 取值范围: [1 - 10]
msg:
- 类型: 字符串类型
- 描述: (必填项) 待发送的消息,最大支持1KB(1000字节)的数据大小
reliable:
- 类型: 布尔类型
- 描述: (可选项) 是否可靠发送,可靠发送的代价是会引入一定的延时,因为接收端要暂存一段时间的数据来等待重传
- 默认值: false
ordered:
- 类型: 布尔类型
- 描述: (可选项) 是否要求有序,即是否要求接收端接收的数据顺序和发送端发送的顺序一致,这会带来一定的接收延时,因为在接收端需要暂存并排序这些消息。
- 默认值: false
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var cmdId = 2;
var msg = 'this is custom cmd msg';
trtc.sendCustomCmdMsg({
cmdId: cmdId,
msg: msg
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本
sendSEIMsg
将小数据量的自定义数据嵌入视频帧中
sendSEIMsg({params}, function(ret, err))
params
msg:
- 类型: 字符串类型
- 描述: (必填项) 待发送的数据,最大支持1kb(1000字节)的数据大小
repeatCount:
- 类型: 整数类型
- 描述: (必填项) 发送数据次数
callback
ret:
- 类型: JSON对象
- 内部字段:
{
status: true // 布尔类型, true表示操作成功
}
err:
- 类型: JSON对象
- 内部字段:
{
code: -911, // 整数类型, 错误码
msg: '错误描述' // 字符串类型, 错误信息
}
示例代码
var msg = 'this is a sei msg';
var repeatCount = 1;
trtc.sendSEIMsg({
msg: msg,
repeatCount: repeatCount
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS, Android系统
可提供的1.0.0及更高版本