tencentTRTC

立即使用

概述

腾讯实时音视频(Tencent Real-Time Communication,TRTC),将腾讯21年来在网络与音视频技术上的深度积累,以多人音视频通话和低延时互动直播两大场景化方案,通过腾讯云服务向开发者开放,致力于帮助开发者快速搭建低成本、低延时、高品质的音视频互动解决方案。

接口

enterRoom

进入房间

enterRoom({params}, callback(ret, err))

params

appId:

  • 类型:数字类型
  • 描述:腾讯云 SDKAppId,进入腾讯云实时音视频控制台 创建应用,即可看到 SDKAppId

userId:

  • 类型:字符串类型
  • 描述:当前用户的 userId,相当于用户名

roomId:

  • 类型:字符串类型
  • 描述:房间号码 ,在同一个房间里的用户(userId)可以彼此看到对方并进行视频通话

userSig:

  • 类型:字符串类型
  • 描述:用户签名 ,当前 userId 对应的验证签名,相当于使用云服务的登录密码,如何计算userSig

privateMapKey:

  • 类型:字符串类型
  • 描述:(可选项)房间签名 ,当您希望某个房间只能让特定的 userId 进入时,需要使用 privateMapKey 进行权限保护。仅建议有高级别安全需求的客户使用,更多详情请参见 进房权限保护

scene:

  • 类型:数字类型
  • 描述:(可选项)应用场景
  • 可选值:0:视频通话
                  1:视频直播
                  2:语音通话
                  3:语音直播
    
  • 默认值:0

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.enterRoom({
  appId:,
  userId:''
  roomId:'',
  userSig:'',
},function(ret, err) {
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setTRTCListener

添加监听

setTRTCListener({params}, callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status: true,      //布尔型;true||false;是否成功
  action:'',         //字符串类型;回调事件
                              ‘error’:错误回调
                            ‘warning’:警告事件
                            ‘enterRoom’:进入房间
                            ‘exitRoom’:退出房间
                            ‘remoteUserEnterRoom’:有用户加入当前房间
                            ‘remoteUserLeaveRoom’:由用户离开当前房间
                            ‘firstVideoFrame’:开始渲染本地或远程用户的首帧画面               
                            'firstAudioFrame':开始播放远程用户的首帧音频(本地声音暂不通知)
                            'sendFirstLocalVideoFrame':首帧本地视频数据已经被送出
                            ‘sendFirstLocalAudioFrame’:首帧本地音频数据已经被送出
                            ‘connectionLost’:与服务器连接断开
                            ‘tryToReconnect’:尝试重新连接到服务器
                            ‘connectionRecovery’:与服务器连接恢复
                            ‘screenCaptureStarted’:屏幕分享开始
                            ‘screenCapturePaused’:屏幕分享暂停
                            ‘screenCaptureResumed‘:屏幕分享恢复
                            ’screenCaptureStoped‘:屏幕分享停止
   error:{        //Json对象类型,action为’error‘时返回
           errCode:,   //数字类型;错误码
        errMsg:'',    //字符串类型;错误信息
    },
    warning:{  //Json对象类型,action为’warning‘时返回
        warningCode:,     //数字类型;错误码
        warningMsg:'',       //字符串类型;警告信息
    },
    enterRoom:{//Json对象类型,action为’enterRoom‘时返回
        result:,  //数字类型,正数为成功加入时间消耗,负数为错误码
    },
    exitRoom:{//Json对象类型,action为’exitRoom‘时返回
        reason:,  //数字类型,离开房间原因,0:主动调用 exitRoom 退房;1:被服务器踢出当前房间;2:当前房间整个被解散
    },
    remoteUserEnterRoom:{//Json对象类型,action为’remoteUserEnterRoom‘时返回
        userId:'',  //字符串类型;加入房间用户id
    },
    remoteUserLeaveRoom:{//Json对象类型,action为’remoteUserLeaveRoom‘时返回
        userId:'',  //字符串类型;退出房间用户id
       reason:,  //数字类型;退出原因
    },
    firstVideoFram:{//Json对象类型,action为’firstVideoFram‘时返回
        userId:'',  //字符串类型;用户id
       available:,  //布尔类型;画面是否开启,仅android支持
       streamType:,//数字类型;视频流类型:摄像头或屏幕分享;0:主画面视频流,1:小画面视频流,2:辅流(屏幕分享),仅支持iOS
       width:,     //数字类型;画面宽度,仅支持iOS
       height:,    //数字类型;画面高度,仅支持iOS
    },
    firstAudioFrame:{//Json对象类型,action为’firstAudioFrame‘时返回
        userId:'',  //字符串类型;用户id
    },
    screenCapturePaused:{//Json对象类型,action为’screenCapturePaused‘时返回,仅支持iOS
        reason:,  //数字类型,暂停原因,0:用户主动暂停;1:屏幕窗口不可见暂停
    },
    screenCaptureResumed:{//Json对象类型,action为’screenCaptureResumed‘时返回,仅支持iOS
        reason:,  //数字类型,恢复原因,0:用户主动恢复;1:屏幕窗口恢复可见从而恢复分享
    },
    screenCaptureStoped:{//Json对象类型,action为’screenCaptureStoped‘时返回,仅支持iOS
        reason:,  //数字类型,停止原因,0:用户主动停止;1:屏幕窗口关闭导致停止
    },
}

err:

  • 类型:JSON 对象
  • 内部字段:
{  
  msg:''         //错误原因
}

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setTRTCListener({

},function(ret, err) {
    if (ret.status) {
        alert('成功');
    }
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

exitRoom

退出房间

exitRoom({params}, callback(ret, err))

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.exitRoom({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

startLocalAudio

开启本地语音

startLocalAudio({params}, callback(ret, err))

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.startLocalAudio({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

stopLocalAudio

关闭本地语音

stopLocalAudio({params}, callback(ret, err))

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.stopLocalAudio({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

startLocalPreview

开启本地画面采集

startLocalPreview({params}, callback(ret, err))

params

rect:

  • 类型:Json对象类型
  • 描述:画面预览控件位置
  • 内部字段:
    { x:,  //数字类型,控件到屏幕左边框距离,默认:0
    y:,   //数字类型,控件到屏幕上边框距离,默认:0
    w:,  //数字类型,控件宽,默认:300
    h:,   //数字类型,控件高,默认:300
    }
    

isFrontCamera

  • 类型:布尔类型
  • 描述:(可选项)是否开启前置摄像头
  • 默认:true

fixedOn:

  • 类型:字符串类型
  • 描述:(可选项)模块视图添加到指定 frame 的名字(只指 frame,传 window 无效)
  • 默认:模块依附于当前 window

fixed:

  • 类型:布尔
  • 描述:(可选项)模块是否随所属 window 或 frame 滚动
  • 默认值:true(不随之滚动)

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.startLocalPreview({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

stopLocalPreview

停止本地画面采集

stopLocalPreview({params}, callback(ret, err))

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.stopLocalPreview({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

switchCamera

切换摄像头

switchCamera({params}, callback(ret, err))

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.switchCamera({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

muteLocalVideo

暂停/恢复推送本地的视频数据

muteLocalVideo({params}, callback(ret, err))

params

mute:

  • 类型:布尔类型
  • 描述:(可选项)是否暂停,true:暂停,false:恢复
  • 默认值:true

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.muteLocalVideo({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

muteLocalAudio

暂停/恢复推送本地的音频数据

muteLocalAudio({params}, callback(ret, err))

params

mute:

  • 类型:布尔类型
  • 描述:(可选项)是否暂停,true:暂停,false:恢复
  • 默认值:true

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.muteLocalAudio({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

startRemoteView

开始显示用户userId的视频画面

startRemoteView({params}, callback(ret, err))

params

rect:

  • 类型:Json对象类型
  • 描述:画面预览控件位置
  • 内部字段:
    { x:,  //数字类型,控件到屏幕左边框距离,默认:0
    y:,   //数字类型,控件到屏幕上边框距离,默认:0
    w:,  //数字类型,控件宽,默认:300
    h:,   //数字类型,控件高,默认:300
    }
    

remoteUid

  • 类型:字符串类型
  • 描述:远程用户userId

fixedOn:

  • 类型:字符串类型
  • 描述:(可选项)模块视图添加到指定 frame 的名字(只指 frame,传 window 无效)
  • 默认:模块依附于当前 window

fixed:

  • 类型:布尔
  • 描述:(可选项)模块是否随所属 window 或 frame 滚动
  • 默认值:true(不随之滚动)

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.startRemoteView({
rect:{
    x:,
    y:,
    w:,
    h:,
},
remoteUid:'',
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

stopRemoteView

停止显示用户userId的视频画面

stopRemoteView({params}, callback(ret, err))

params

remoteUid

  • 类型:字符串类型
  • 描述:远程用户userId

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.stopRemoteView({
remoteUid:'',
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

stopAllRemoteView

停止显示所有远端视频画面,同时不再拉取远端用户的视频数据流

stopAllRemoteView({params}, callback(ret, err))

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.stopAllRemoteView({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

muteRemoteVideoStream

暂停/恢复接收指定的远端视频流。

muteRemoteVideoStream({params}, callback(ret, err))

params

remoteUid

  • 类型:字符串类型
  • 描述:远程用户userId

mute:

  • 类型:布尔类型
  • 描述:是否暂停接收
  • 默认值:true

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.muteRemoteVideoStream({
remoteUid:'',
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

muteAllRemoteVideoStreams

暂停/恢复接收所有远端视频流。

muteAllRemoteVideoStreams({params}, callback(ret, err))

params

mute:

  • 类型:布尔类型
  • 描述:是否暂停接收
  • 默认值:true

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.muteAllRemoteVideoStreams({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

muteRemoteAudio

暂停/恢复接收指定的远端音频流。

muteRemoteAudio({params}, callback(ret, err))

params

remoteUid

  • 类型:字符串类型
  • 描述:远程用户userId

mute:

  • 类型:布尔类型
  • 描述:是否暂停接收
  • 默认值:true

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.muteRemoteAudio({
remoteUid:'',
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

muteAllRemoteAudio

暂停/恢复接收所有远端音频流。

muteAllRemoteAudio({params}, callback(ret, err))

params

mute:

  • 类型:布尔类型
  • 描述:是否暂停接收
  • 默认值:true

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.muteAllRemoteAudio({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setLocalViewRotation

设置本地图像的顺时针旋转角度

setLocalViewRotation({params}, callback(ret, err))

params

rotation:

  • 类型:数字类型
  • 描述:旋转角度
  • 可选值:0:不旋转
                  1:顺时针旋转90度
                  2:顺时针旋转180度
                  3:顺时针旋转270度
    
  • 默认值:0

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setLocalViewRotation({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setRemoteViewRotation

设置远端图像的顺时针旋转角度

setRemoteViewRotation({params}, callback(ret, err))

params

remoteUid

  • 类型:字符串类型
  • 描述:远程用户userId

rotation:

  • 类型:数字类型
  • 描述:旋转角度
  • 可选值:0:不旋转
                  1:顺时针旋转90度
                  2:顺时针旋转180度
                  3:顺时针旋转270度
    
  • 默认值:0

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setRemoteViewRotation({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setVideoEncoderRotation

设置视频编码输出的画面方向,即设置远端用户观看到的和服务器录制的画面方向

setVideoEncoderRotation({params}, callback(ret, err))

params

rotation:

  • 类型:数字类型
  • 描述:旋转角度
  • 可选值:0:不旋转
                  1:顺时针旋转90度
                  2:顺时针旋转180度
                  3:顺时针旋转270度
    
  • 默认值:0

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setVideoEncoderRotation({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setLocalViewMirror

设置本地摄像头预览画面的镜像模式

setLocalViewMirror({params}, callback(ret, err))

params

type:

  • 类型:数字类型
  • 描述:镜像模式
  • 可选值:0:前置摄像头镜像,后置摄像头不开启镜像
        1:前置摄像头和后置摄像头都开启镜 
        2:前置摄像头和后置摄像头都不开启镜像
    
  • 默认值:0

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setLocalViewMirror({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setVideoEncoderMirror

设置编码器输出的画面镜像模式

setVideoEncoderMirror({params}, callback(ret, err))

params

mirror:

  • 类型:布尔类型
  • 描述:(可选项)是否镜像
  • 默认值:false

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setVideoEncoderMirror({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setGSensorMode

设置重力感应的适应模式

setGSensorMode({params}, callback(ret, err))

params

mode:

  • 类型:数字类型
  • 描述:(可选项)重力感应模式
  • 取值范围: 0:关闭重力感应
           1:开启重力感应,但是 android SDK 不会根据陀螺仪自动调整本地 View 的画面方向, 而是交给 Android 系统的自动排布功能
          2:开启重力感应,并且 android SDK 会根据陀螺仪自动调整本地 View 的画面方向。
    
  • 默认值:android:0,iOS:1
  • 说明:iOS平台0关闭,1开启,3待废弃,效果等同于 UIAutoLayout

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setGSensorMode({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

snapshotVideo

视频画面截图

snapshotVideo({params}, callback(ret, err))

params

remoteUid

  • 类型:字符串类型
  • 描述:远程用户userId,iOS端不传此参数表示截取本地视频画面

streamType

  • 类型:数字类型
  • 描述:(可选项)视频流类型
  • android 取值范围:0:摄像头画面
                  1:屏幕分享画面
    
  • iOS 取值范围:0:主画面视频流

               1:小画面视频流    
               2:辅流(屏幕分享)            
    
  • 默认值:0

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status: true,      //布尔型;true||false;是否成功
  imgPath:,            //字符串类型;截图路径
}

err:

  • 类型:JSON 对象
  • 内部字段:
{  
  msg:''         //错误原因
}

示例代码

var tencentTRTC = api.require('tencentTRTC');
tencentTRTC.snapshotVideo({
remoteUid:'',
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setAudioCaptureVolume

设置 SDK 采集音量

setAudioCaptureVolume({params}, callback(ret, err))

params

volume

  • 类型:数字类型
  • 描述:音量大小
  • 取值范围:[0-100]
  • 默认值:50

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setAudioCaptureVolume({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

getAudioCaptureVolume

获取 SDK 采集音量

getAudioCaptureVolume({params}, callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status: true,      //布尔型;true||false;是否成功
  volume:,            //数字类型;音量
}

err:

  • 类型:JSON 对象
  • 内部字段:
{  
  msg:''         //错误原因
}

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.getAudioCaptureVolume({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setAudioPlayoutVolume

设置 SDK 播放音量

setAudioPlayoutVolume({params}, callback(ret, err))

params

volume

  • 类型:数字类型
  • 描述:音量大小
  • 取值范围:[0-100]
  • 默认值:50

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setAudioPlayoutVolume({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

getAudioPlayoutVolume

获取 SDK 播放音量

getAudioPlayoutVolume({params}, callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status: true,      //布尔型;true||false;是否成功
  volume:,            //数字类型;音量
}

err:

  • 类型:JSON 对象
  • 内部字段:
{  
  msg:''         //错误原因
}

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.getAudioPlayoutVolume({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

enableAudioEarMonitoring

开启耳返

enableAudioEarMonitoring({params}, callback(ret, err))

params

enable:

  • 类型:布尔类型
  • 描述:是否开启耳返,开启后会在耳机里听到自己的声音,仅带耳机时有效
  • 默认:false

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.enableAudioEarMonitoring({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

isCameraZoomSupported

查询当前摄像头是否支持缩放

isCameraZoomSupported({params}, callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status: true,      //布尔型;true||false;是否成功
  enable:,            //布尔类型;是否支持缩放
}

err:

  • 类型:JSON 对象
  • 内部字段:
{  
  msg:''         //错误原因
}

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.isCameraZoomSupported({
},function(ret,err){

});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setZoom

设置摄像头缩放因子(焦距)

setZoom({params}, callback(ret, err))

params

distance:

  • 类型:数字类型
  • 描述:缩放因子
  • 取值范围:[1-5],数值越大焦距越远

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setZoom({
distance:3,
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

isCameraTorchSupported

查询是否支持开启闪光灯

isCameraTorchSupported({params}, callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status: true,      //布尔型;true||false;是否成功
  enable:,            //布尔类型;是否支持闪光灯
}

err:

  • 类型:JSON 对象
  • 内部字段:
{  
  msg:''         //错误原因
}

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.isCameraTorchSupported({
},function(ret,err){

});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

enableTorch

开关闪光灯

enableTorch({params}, callback(ret, err))

params

enable:

  • 类型:布尔类型
  • 描述:是否开启闪光灯
  • 默认值:false

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.enableTorch({
enable:,
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

isCameraFocusSupport

是否支持设置焦点

isCameraFocusSupport({params}, callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status: true,      //布尔型;true||false;是否成功
  enable:,            //布尔类型;是否支持
}

err:

  • 类型:JSON 对象
  • 内部字段:
{  
  msg:''         //错误原因
}

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.isCameraFocusSupport({
},function(ret,err){

});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setFocusPosition

设置摄像头焦点

setFocusPosition({params}, callback(ret, err))

params

x:

  • 类型:数字类型
  • 描述:对焦位置x坐标

y:

  • 类型:数字类型
  • 描述:对焦位置y坐标

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setFocusPosition({
x:,
y:,
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

startScreenCapture

启动屏幕分享,iOS本接口只支持iOS 13(包含)以上系统

startScreenCapture({params}, callback(ret, err))

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.startScreenCapture({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

stopScreenCapture

停止屏幕采集,iOS本接口只支持iOS 13(包含)以上系统

stopScreenCapture({params}, callback(ret, err))

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.stopScreenCapture({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

pauseScreenCapture

暂停屏幕分享,iOS本接口只支持iOS 13(包含)以上系统

pauseScreenCapture({params}, callback(ret, err))

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.pauseScreenCapture({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

resumeScreenCapture

恢复屏幕分享,iOS本接口只支持iOS 13(包含)以上系统

resumeScreenCapture({params}, callback(ret, err))

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.resumeScreenCapture({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

playBGM

启动播放背景音乐

playBGM({params}, callback(ret, err))

params

path:

  • 类型:字符串类型
  • 描述:音乐文件路径,支持的文件格式:aac, mp3,android支持fs路径,iOS支持widget、fs路径

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status: true,      //布尔型;true||false;是否成功
  action:'',      //字符串类型;回调阶段
                          ‘start’:开始播放
                        ‘progress’:播放进度
                        ‘complete’:播放完成
  startCode:, //数字类型,action为‘start’时返回,0为成功
  completeCode:,//数字类型,action为‘complete’时返回,0为正常结束
  duration:,    //数字类型,总时长,action为‘progress’返回
  progress:,    //数字类型,已播放时长,action为‘progress’返回
}

err:

  • 类型:JSON 对象
  • 内部字段:
{  
  msg:''         //错误原因
}

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.playBGM({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

stopBGM

停止播放背景音乐。

stopBGM({params}, callback(ret, err))

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.stopBGM({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

pauseBGM

暂停播放背景音乐。

pauseBGM({params}, callback(ret, err))

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.pauseBGM({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

resumeBGM

继续播放背景音乐

resumeBGM({params}, callback(ret, err))

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.resumeBGM({
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setBGMPosition

设置 BGM 播放进度。

setBGMPosition({params}, callback(ret, err))

params

pos:

  • 类型:数字类型
  • 描述:进度,(豪秒)

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status: true,      //布尔型;true||false;是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{  
  msg:''         //错误原因
}

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setBGMPosition({
pos:,
},function(ret,err){
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setBGMVolume

设置背景音乐播放音量的大小。

setBGMVolume({params}, callback(ret, err))

params

volume:

  • 类型:数字类型
  • 描述:音量大小
  • 取值范围:[0-100]

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setBGMVolume({
volume:,
},function(ret,err){
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setBGMPlayoutVolume

设置背景音乐本地播放音量的大小。

setBGMPlayoutVolume({params}, callback(ret, err))

params

volume:

  • 类型:数字类型
  • 描述:音量大小
  • 取值范围:[0-100]

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setBGMPlayoutVolume({
volume:,
},function(ret,err){
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setBGMPublishVolume

设置背景音乐远端播放音量的大小。

setBGMPublishVolume({params}, callback(ret, err))

params

volume:

  • 类型:数字类型
  • 描述:音量大小
  • 取值范围:[0-100]

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setBGMPublishVolume({
volume:,
},function(ret,err){
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setVoiceChangerType

设置变声类型

setVoiceChangerType({params}, callback(ret, err))

params

type:

  • 类型:数字类型
  • 描述:变声类型
  • 取值范围:0:关闭变声器
          1:熊孩子
        2:萝莉
        3:大叔
        4:重金属
        5:感冒
        6:外国人
        7:困兽
        8:死肥宅
        9:强电流
        10:重机械
        11:空灵
    

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
  status: true,      //布尔型;true||false;是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{  
  msg:''         //错误原因
}

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setVoiceChangerType({
type:,
},function(ret,err){
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setLocalViewFillMode

设置本地图像的渲染模式

setLocalViewFillMode({params}, callback(ret, err))

params

type:

  • 类型:数字类型
  • 描述:变声类型
  • 取值范围:0:图像铺满屏幕,超出显示视窗的视频部分将被裁剪
          1:图像长边填满屏幕,短边区域会被填充黑色
    

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setLocalViewFillMode({
type:,
});

可用性

iOS、Android系统

可提供的1.0.1及更高版本

setRemoteViewFillMode

设置远端图像的渲染模式

setRemoteViewFillMode({params}, callback(ret, err))

params

remoteUid

  • 类型:字符串类型
  • 描述:用户 ID

type:

  • 类型:数字类型
  • 描述:变声类型
  • 取值范围:0:图像铺满屏幕,超出显示视窗的视频部分将被裁剪
          1:图像长边填满屏幕,短边区域会被填充黑色
    

示例代码

var tencentTRTC = api.require('tencentTRTC');
tencentTRTC.setRemoteViewFillMode({
type:,
});

可用性

iOS、Android系统

可提供的1.0.1及更高版本

setVideoEncoderParam

设置视频编码器相关参数,,、该设置决定了远端用户看到的画面质量(同时也是云端录制出的视频文件的画面质量)

setVideoEncoderParam({params}, callback(ret, err))

params

videoResolution:

  • 类型:数字类型
  • 描述:视频分辨率,此处仅定义横屏分辨率,如需使用竖屏分辨率(例如360 × 640),需要同时指定 resMode 为 1(竖屏分辨率)。1920_1080(114)分辨率仅支持iOS
  • 取值范围:1:宽高比1:1,120_120,建议码率 VideoCall:80kbps LIVE:120kbps
          3:宽高比1:1,160_160,建议码率 VideoCall:100kbps  LIVE:150kbps
          5:宽高比1:1,270_270,建议码率 VideoCall:200kbps  LIVE:120kbps
          7:宽高比1:1,480_480,建议码率 VideoCall:350kbps  LIVE:120kbps
          50:宽高比4:3,160_120,建议码率 VideoCall:100kbps  LIVE:150kbps
          52:宽高比4:3,240_180,建议码率 VideoCall:150kbps  LIVE:225kbps
          54:宽高比4:3,280_210,建议码率 VideoCall:200kbps  LIVE:300kbps
          56:宽高比4:3,320_240,建议码率 VideoCall:250kbps  LIVE:375kbps
          58:宽高比4:3,400_300,建议码率 VideoCall:300kbps  LIVE:450kbps
          60:宽高比4:3,480_360,建议码率 VideoCall:400kbps  LIVE:600kbps
          62:宽高比4:3,640_480,建议码率 VideoCall:600kbps  LIVE:900kbps
          64:宽高比4:3,960_720,建议码率 VideoCall:1000kbps LIVE:1500kbps
          100:宽高比16:9,160_90,建议码率 VideoCall:150kbps  LIVE:250kbps
          102:宽高比16:9,256_144,建议码率 VideoCall:200kbps  LIVE:300kbps
          104:宽高比16:9,320_180,建议码率 VideoCall:250kbps  LIVE:400kbps
          106:宽高比16:9,480_270,建议码率 VideoCall:350kbps  LIVE:550kbps
          108:宽高比16:9,640_360,建议码率 VideoCall:550kbps  LIVE:900kbps
          110:宽高比16:9,960_540,建议码率 VideoCall:850kbps  LIVE:1300kbps
          112:宽高比16:9,1280_720,建议码率 VideoCall:1200kbps LIVE:1800kbps
          114:宽高比16:9,1920_1080,建议码率 VideoCall:2000kbps LIVE:3000kbps(此分辨率仅支持iOS)
    

resMode:

  • 类型:数字类型
  • 描述:分辨率模式
  • 取值范围:0:横屏分辨率
          1:竖屏分辨率
    
  • 推荐取值:手机直播建议选择 竖屏,Window 和 Mac 建议选择 横屏
  • 特别说明:如果 videoResolution 指定分辨率 640 × 360,resMode 指定模式为 Portrait,则最终编码出的分辨率为360 × 640

videoFps:

  • 类型:数字类型
  • 描述:视频采集帧率
  • 推荐取值:15fps或20fps,5fps以下,卡顿感明显。10fps以下,会有轻微卡顿感。20fps以上,则过于浪费(电影的帧率为24fps)
  • 特别说明:很多 Android 手机的前置摄像头并不支持15fps以上的采集帧率,部分过于突出美颜功能的 Android 手机前置摄像头的采集帧率可能低于10fps

videoBitrate:

  • 类型:数字类型
  • 描述:目标视频码率,SDK 会按照目标码率进行编码,只有在网络不佳的情况下才会主动降低视频码率
  • 推荐取值:请参考本 videoResolution 在各档位注释的最佳码率,也可以在此基础上适当调高。比如 videoResolution 对应 1200kbps 的目标码率,您也可以设置为 1500kbps 用来获得更好的清晰度观感
  • 特别说明:很多 Android 手机的前置摄像头并不支持15fps以上的采集帧率,部分过于突出美颜功能的 Android 手机前置摄像头的采集帧率可能低于10fps

enableAdjustRes:

  • 类型:布尔类型
  • 描述:是否允许 SDK 动态调整分辨率,开启后会对云端录制产生影响
  • 推荐取值:需要开启云端录制的场景建议设置为 false,中途视频分辨率发生变化后,云端录制出的 MP4 在一般的播放器上都无法正常播放。视频通话模式,若无需云端录制,可以设置为 true,此时 SDK 会根据当前待带宽情况自动选择合适的分辨率(仅针对 主路画面 生效)。
  • 特别说明:如有云端录制需求,请设置为 false
  • 默认:false

示例代码

var tencentTRTC= api.require('tencentTRTC');
tencentTRTC.setVideoEncoderParam({
});

可用性

iOS、Android系统

可提供的1.0.1及更高版本