函数列表 | 描述 |
创建 TRTCCloud 实例(单例模式) | |
销毁 TRTCCloud 实例(单例模式) | |
添加 TRTC 事件回调 | |
移除 TRTC 事件回调 | |
设置驱动 TRTCCloudListener 事件回调的队列 | |
进入房间 | |
离开房间 | |
切换角色 | |
切换角色(支持设置权限位) | |
切换房间 | |
请求跨房通话 | |
退出跨房通话 | |
设置订阅模式(需要在进入房前设置才能生效) | |
创建子房间实例(用于多房间并发观看) | |
销毁子房间实例 | |
更改跨房主播在本房间的上行能力 | |
开始发布媒体流 | |
更新发布媒体流 | |
停止发布媒体流 | |
开启本地摄像头的预览画面(移动端) | |
更新本地摄像头的预览画面 | |
停止摄像头预览 | |
暂停/恢复发布本地的视频流 | |
设置本地画面被暂停期间的替代图片 | |
订阅远端用户的视频流,并绑定视频渲染控件 | |
更新远端用户的视频渲染控件 | |
停止订阅远端用户的视频流,并释放渲染控件 | |
停止订阅所有远端用户的视频流,并释放全部渲染资源 | |
暂停/恢复订阅远端用户的视频流 | |
暂停/恢复订阅所有远端用户的视频流 | |
设置视频编码器的编码参数 | |
设置网络质量控制的相关参数 | |
设置本地画面的渲染参数 | |
设置远端画面的渲染模式 | |
开启大小画面双路编码模式 | |
切换指定远端用户的大小画面 | |
视频画面截图 | |
视频画面透视校正坐标设置 | |
设置重力感应的适配模式(11.7 及以上版本) | |
开启本地音频的采集和发布 | |
停止本地音频的采集和发布 | |
暂停/恢复发布本地的音频流 | |
暂停/恢复播放远端的音频流 | |
暂停/恢复播放所有远端用户的音频流 | |
设置音频路由 | |
设定某一个远端用户的声音播放音量 | |
设定本地音频的采集音量 | |
获取本地音频的采集音量 | |
设定远端音频的播放音量 | |
获取远端音频的播放音量 | |
启用音量大小提示 | |
开始录音 | |
停止录音 | |
开启本地媒体录制 | |
停止本地媒体录制 | |
设置远端音频流智能并发播放策略 | |
启用 3D 音效 | |
设置 3D 音效中自身坐标及朝向信息 | |
设置 3D 音效中远端用户坐标信息 | |
设置指定用户所发出声音的可被接收范围 | |
获取设备管理类(TXDeviceManager) | |
获取美颜管理类(TXBeautyManager) | |
添加水印 | |
获取音效管理类(TXAudioEffectManager) | |
开启系统声音采集 | |
停止系统声音采集(iOS 端暂未支持) | |
启动屏幕分享 | |
停止屏幕分享 | |
暂停屏幕分享 | |
恢复屏幕分享 | |
设置屏幕分享(即辅路)的视频编码参数(桌面系统和移动系统均已支持) | |
启用/关闭视频自定义采集模式 | |
向 SDK 投送自己采集的视频帧 | |
启用音频自定义采集模式 | |
向 SDK 投送自己采集的音频数据 | |
启用/关闭自定义音轨 | |
向 SDK 混入自定义音轨 | |
设置推流时混入外部音频的推流音量和播放音量 | |
生成自定义采集时的时间戳 | |
设置第三方美颜的视频数据回调 | |
设置本地视频自定义渲染回调 | |
设置远端视频自定义渲染回调 | |
设置音频数据自定义回调 | |
设置本地麦克风采集出的音频帧回调格式 | |
设置经过前处理后的本地音频帧回调格式 | |
设置最终要由系统播放出的音频帧回调格式 | |
开启音频自定义播放 | |
获取可播放的音频数据 | |
使用 UDP 通道发送自定义消息给房间内所有用户 | |
使用 SEI 通道发送自定义消息给房间内所有用户 | |
开始进行网速测试(进入房间前使用) | |
停止网络测速 | |
获取 SDK 版本信息 | |
设置 Log 输出级别 | |
启用/禁用控制台日志打印 | |
启用/禁用日志的本地压缩 | |
设置本地日志的保存路径 | |
设置日志回调 | |
显示仪表盘 | |
设置仪表盘的边距 | |
调用实验性接口 | |
开启或关闭媒体流私有加密 |
TRTCCloud sharedInstance | (Context context) |
参数 | 描述 |
context | 仅适用于 Android 平台,SDK 内部会将其转化为 Android 平台的 ApplicationContext 用于调用 Android System API。 如果传入的 context 参数为空,SDK 内部会自动获取当前进程的 ApplicationContext。 |
void addListener |
void setListenerHandler | (Handler listenerHandler) |
参数 | 描述 |
listenerHandler | 事件回调句柄 |
void enterRoom | |
| int scene) |
参数 | 描述 |
param | |
scene |
void switchRole | (int role) |
主播
和 观众
两种角色之间来回切换。参数 | 描述 |
role | 角色,默认为 主播。 TRTCRoleAnchor :主播,可以发布自己的音视频,同一个房间里最多支持50个主播同时发布音视频。 TRTCRoleAudience :观众,不能发布自己的音视频流,只能观看房间中其他主播的音视频。如果要发布自己的音视频,需要先通过 switchRole 切换成 主播,同一个房间内同时最多可以容纳 10 万名观众。 |
void switchRole | (int role |
| final String privateMapKey) |
主播
和 观众
两种角色之间来回切换。参数 | 描述 |
privateMapKey | 用于权限控制的权限票据,当您希望某个房间只能让特定的 userId 进入或者上行视频时,需要使用 privateMapKey 进行权限保护。 仅建议有高级别安全需求的客户使用,更多详情请参见 开启高级权限控制。 |
role | 角色,默认为“主播”: TRTCRoleAnchor :主播,可以发布自己的音视频,同一个房间里最多支持50个主播同时发布音视频。 TRTCRoleAudience :观众,不能发布自己的音视频流,只能观看房间中其他主播的音视频。如果要发布自己的音视频,需要先通过 switchRole 切换成“主播”,同一个房间内同时最多可以容纳 10 万名观众。 |
void switchRoom |
参数 | 描述 |
config |
void ConnectOtherRoom | (String param) |
JSONObject jsonObj = new JSONObject();jsonObj.put("roomId", 102);jsonObj.put("userId", "userB");trtc.ConnectOtherRoom(jsonObj.toString());
JSONObject jsonObj = new JSONObject();jsonObj.put("strRoomId", "102");jsonObj.put("userId", "userB");trtc.ConnectOtherRoom(jsonObj.toString());
参数 | 描述 |
param | 需要你传入 JSON 格式的字符串参数,roomId 代表数字格式的房间号,strRoomId 代表字符串格式的房间号,userId 代表目标主播的用户 ID。 |
void setDefaultStreamRecvMode | (boolean autoRecvAudio |
| boolean autoRecvVideo) |
参数 | 描述 |
autoRecvAudio | true:自动订阅音频;false:需手动调用 muteRemoteAudio(false) 订阅音频。默认值:true。 |
autoRecvVideo | true:自动订阅视频;false:需手动调用 startRemoteView 订阅视频。默认值:true。 |
//In the small room that needs interaction, enter the room as an anchor and push audio and video streamsTRTCCloud mainCloud = TRTCCloud.sharedInstance(mContext);TRTCCloudDef.TRTCParams mainParams = new TRTCCloudDef.TRTCParams();//Fill your paramsmainParams.role = TRTCCloudDef.TRTCRoleAnchor;mainCloud.enterRoom(mainParams, TRTCCloudDef.TRTC_APP_SCENE_LIVE);//...mainCloud.startLocalPreview(true, videoView);mainCloud.startLocalAudio(TRTCCloudDef.TRTC_AUDIO_QUALITY_DEFAULT);//In the large room that only needs to watch, enter the room as an audience and pull audio and video streamsTRTCCloud subCloud = mainCloud.createSubCloud();TRTCCloudDef.TRTCParams subParams = new TRTCCloudDef.TRTCParams();//Fill your paramssubParams.role = TRTCCloudDef.TRTCRoleAudience;subCloud.enterRoom(subParams, TRTCCloudDef.TRTC_APP_SCENE_LIVE);//...subCloud.startRemoteView(userId, TRTCCloudDef.TRTC_VIDEO_STREAM_TYPE_BIG, view);//...//Exit from new room and release it.subCloud.exitRoom();mainCloud.destroySubCloud(subCloud);
void updateOtherRoomForwardMode | (String param) |
{"roomId":102,"userId":"userC","muteAudio":false,"muteVideo":true,"muteSubStream":false}
{"strRoomId":"102","userId":"userC","muteAudio":false,"muteVideo":true,"muteSubStream":false}
参数 | 描述 |
param | 需要你传入 JSON 格式的字符串参数,roomId 代表数字格式的房间号,strRoomId 代表字符串格式的房间号,userId 代表目标主播的用户 ID,muteAudio、muteVideo、muteSubStream均为可选项,分表代表禁止或允许跨房主播发布音频/主路视频/辅路视频的能力。 |
void startPublishMediaStream | |
| |
|
参数 | 描述 |
config | |
params | 媒体流编码输出参数,具体配置参考 TRTCStreamEncoderParam。转码和回推到 TRTC 房间中时为必填项,您需要指定您预期的转码输出参数。在转推时,为了更好的转推稳定性和 CDN 兼容性,也建议您进行配置。 |
target |
void updatePublishMediaStream | (final String taskId |
| |
| |
|
参数 | 描述 |
config | |
params | 媒体流编码输出参数,具体配置参考 TRTCStreamEncoderParam。转码和回推到 TRTC 房间中时为必填项,您需要指定您预期的转码输出参数。在转推时,为了更好的转推稳定性和 CDN 兼容性,也建议您进行配置。 |
target | |
taskId |
void stopPublishMediaStream | (final String taskId) |
参数 | 描述 |
taskId |
void startLocalPreview | (boolean frontCamera |
| TXCloudVideoView view) |
参数 | 描述 |
frontCamera | true:前置摄像头;false:后置摄像头。 |
view | 承载视频画面的控件。 |
void updateLocalView | (TXCloudVideoView view) |
void muteLocalVideo | (int streamType |
| boolean mute) |
参数 | 描述 |
mute | true:暂停;false:恢复。 |
streamType |
void setVideoMuteImage | (Bitmap image |
| int fps) |
参数 | 描述 |
fps | 设置替代图片帧率,最小值为5,最大值为10,默认5。 |
image | 设置替代图片,空值代表在 muteLocalVideo 之后不再发送视频流数据,默认值为空。 |
void startRemoteView | (String userId |
| int streamType |
| TXCloudVideoView view) |
参数 | 描述 |
streamType | 指定要观看 userId 的视频流类型。 高清大画面:TRTC_VIDEO_STREAM_TYPE_BIG。 低清小画面:TRTC_VIDEO_STREAM_TYPE_SMALL(需要远端用户通过 enableEncSmallVideoStream 开启双路编码后才有效果)。 辅流画面(常用于屏幕分享):TRTC_VIDEO_STREAM_TYPE_SUB。 |
userId | 指定远端用户的 ID。 |
view | 用于承载视频画面的渲染控件。 |
void updateRemoteView | (String userId |
| int streamType |
| TXCloudVideoView view) |
参数 | 描述 |
streamType | |
userId | 指定远端用户的 ID。 |
view | 承载视频画面的控件。 |
void stopRemoteView | (String userId |
| int streamType) |
参数 | 描述 |
streamType | 指定要观看 userId 的视频流类型。 高清大画面:TRTC_VIDEO_STREAM_TYPE_BIG。 低清小画面:TRTC_VIDEO_STREAM_TYPE_SMALL。 辅流画面(常用于屏幕分享):TRTC_VIDEO_STREAM_TYPE_SUB。 |
userId | 指定远端用户的 ID。 |
void muteRemoteVideoStream | (String userId |
| int streamType |
| boolean mute) |
参数 | 描述 |
mute | 是否暂停接收。 |
streamType | 要暂停/恢复的视频流类型。 高清大画面:TRTC_VIDEO_STREAM_TYPE_BIG。 低清小画面:TRTC_VIDEO_STREAM_TYPE_SMALL。 辅流画面(常用于屏幕分享):TRTC_VIDEO_STREAM_TYPE_SUB。 |
userId | 指定远端用户的 ID。 |
void muteAllRemoteVideoStreams | (boolean mute) |
参数 | 描述 |
mute | 是否暂停接收。 |
void setVideoEncoderParam |
参数 | 描述 |
param |
void setNetworkQosParam |
参数 | 描述 |
param |
void setLocalRenderParams |
void setRemoteRenderParams | (String userId |
| int streamType |
|
参数 | 描述 |
params | |
streamType | |
userId | 指定远端用户的 ID。 |
int enableEncSmallVideoStream | (boolean enable |
|
参数 | 描述 |
enable | 是否开启小画面编码,默认值:false。 |
smallVideoEncParam | 小流的视频参数。 |
int setRemoteVideoStreamType | (String userId |
| int streamType) |
参数 | 描述 |
streamType | 视频流类型,即选择看大画面还是小画面,默认为大画面。 |
userId | 指定远端用户的 ID。 |
void snapshotVideo | (String userId |
| int streamType |
| int sourceType |
|
参数 | 描述 |
sourceType | 画面来源,可选择截取视频流画面(TRTC_SNAPSHOT_SOURCE_TYPE_STREAM)、视频渲染画面(TRTC_SNAPSHOT_SOURCE_TYPE_VIEW)或 采集画面(TRTC_SNAPSHOT_SOURCE_TYPE_CAPTURE),采集画面截图更清晰。 |
streamType | |
userId | 用户 ID,如指定空置表示截取本地的视频画面。 |
void setPerspectiveCorrectionPoints | (String userId |
| PointF[] srcPoints |
| PointF[] dstPoints) |
参数 | 描述 |
dstPoints | 期望校正到的目标坐标区域4个顶点坐标,需按照左上、左下、右上、右下的顺序传入,所有的坐标需要根据画面宽高做 [0,1] 区间的归一化;传 null 则停止透视校正。 |
srcPoints | 原始画面坐标区域4个顶点坐标,需按照左上、左下、右上、右下的顺序传入,所有的坐标需要根据画面宽高做 [0,1] 区间的归一化; 传 null 则停止透视校正。 |
userId | 用户 ID,如指定空值表示校正本地的视频画面。 |
void setGravitySensorAdaptiveMode | (int mode) |
void startLocalAudio | (int quality) |
参数 | 描述 |
quality | 声音音质 TRTC_AUDIO_QUALITY_SPEECH,流畅:单声道;音频裸码率:18kbps;适合语音通话为主的场景,比如在线会议,语音通话。 TRTC_AUDIO_QUALITY_DEFAULT,默认:单声道;音频裸码率:50kbps;SDK 默认的音频质量,如无特殊需求推荐选择之。 TRTC_AUDIO_QUALITY_MUSIC,高音质:双声道 + 全频带;音频裸码率:128kbps;适合需要高保真传输音乐的场景,比如在线K歌、音乐直播等。 |
void muteLocalAudio | (boolean mute) |
参数 | 描述 |
mute | true:静音;false:恢复。 |
void muteRemoteAudio | (String userId |
| boolean mute) |
参数 | 描述 |
mute | true:静音;false:取消静音。 |
userId | 用于指定远端用户的 ID。 |
void muteAllRemoteAudio | (boolean mute) |
参数 | 描述 |
mute | true:静音;false:取消静音。 |
void setAudioRoute | (int route) |
参数 | 描述 |
route |
void setRemoteAudioVolume | (String userId |
| int volume) |
参数 | 描述 |
userId | 用于指定远端用户的 ID。 |
volume | 音量大小,取值范围为0 - 100,默认值:100。 |
void setAudioCaptureVolume | (int volume) |
参数 | 描述 |
volume | 音量大小,取值范围为0 - 100;默认值:100。 |
void setAudioPlayoutVolume | (int volume) |
参数 | 描述 |
volume | 音量大小,取值范围为0 - 100,默认值:100。 |
void enableAudioVolumeEvaluation | (boolean enable |
|
参数 | 描述 |
enable | 是否启用音量提示,默认为关闭状态。 |
params |
int startAudioRecording |
参数 | 描述 |
param |
void startLocalRecording |
void setRemoteAudioParallelParams |
void enable3DSpatialAudioEffect | (boolean enabled) |
参数 | 描述 |
enabled | 是否启用 3D 音效,默认为关闭状态。 |
void updateSelf3DSpatialPosition | (int[] position |
| float[] axisForward |
| float[] axisRight |
| float[] axisUp) |
参数 | 描述 |
axisForward | 自身坐标系前轴在世界坐标系中的单位向量,三个值依次表示前、右、上坐标值。 |
axisRight | 自身坐标系右轴在世界坐标系中的单位向量,三个值依次表示前、右、上坐标值。 |
axisUp | 自身坐标系上轴在世界坐标系中的单位向量,三个值依次表示前、右、上坐标值。 |
position | 自身在世界坐标系中的坐标,三个值依次表示前、右、上坐标值。 |
void updateRemote3DSpatialPosition | (String userId |
| int[] position) |
参数 | 描述 |
position | 该远端用户在世界坐标系中的坐标,三个值依次表示前、右、上坐标值。 |
userId | 指定远端用户的 ID。 |
void set3DSpatialReceivingRange | (String userId |
| int range) |
参数 | 描述 |
range | 声音最大可被接收范围。 |
userId | 指定远端用户的 ID。 |
void setWatermark | (Bitmap image |
| int streamType |
| float x |
| float y |
| float width) |
参数 | 描述 |
image | 水印图片,必须使用透明底色的 png 格式。 |
rect | 水印相对于编码分辨率的归一化坐标,x,y,width,height 取值范围0 - 1。 |
streamType |
void startScreenCapture | (int streamType |
| |
|
参数 | 描述 |
encParams | |
shareParams | |
streamType |
void setSubStreamEncoderParam |
参数 | 描述 |
param |
void enableCustomVideoCapture | (int streamType |
| boolean enable) |
参数 | 描述 |
enable | 是否启用,默认值:false。 |
streamType |
void sendCustomVideoData | (int streamType |
|
参数 | 描述 |
frame | |
streamType |
void enableCustomAudioCapture | (boolean enable) |
参数 | 描述 |
enable | 是否启用,默认值:false。 |
void sendCustomAudioData |
参数 | 描述 |
frame | 音频数据 |
void enableMixExternalAudioFrame | (boolean enablePublish |
| boolean enablePlayout) |
参数 | 描述 |
enablePlayout | 控制混入的音轨是否要在本地播放,默认值:false。 |
enablePublish | 控制混入的音轨是否要在远端播放,默认值:false。 |
int mixExternalAudioFrame |
参数 | 描述 |
frame | 音频数据 |
void setMixExternalAudioVolume | (int publishVolume |
| int playoutVolume) |
参数 | 描述 |
playoutVolume | 设置的播放音量大小,范围0 - 100,-1表示不改变。 |
publishVolume | 设置的推流音量大小,范围0 - 100,-1表示不改变。 |
int setLocalVideoProcessListener | (int pixelFormat |
| int bufferType |
|
参数 | 描述 |
bufferType | 指定回调的数据格式,目前支持: TRTC_VIDEO_BUFFER_TYPE_TEXTURE:适用于 pixelFormat 被设置为 TRTC_VIDEO_PIXEL_FORMAT_Texture_2D 时。 TRTC_VIDEO_BUFFER_TYPE_BYTE_BUFFER:适用于 pixelFormat 被设置为 TRTC_VIDEO_PIXEL_FORMAT_I420 时。 TRTC_VIDEO_BUFFER_TYPE_BYTE_ARRAY:适用于 pixelFormat 被设置为 TRTC_VIDEO_PIXEL_FORMAT_I420 时。 |
listener | |
pixelFormat | 指定回调的像素格式,目前支持: TRTC_VIDEO_PIXEL_FORMAT_Texture_2D: 显存纹理方案。 TRTC_VIDEO_PIXEL_FORMAT_I420:内存数据方案。 |
int setLocalVideoRenderListener | (int pixelFormat |
| int bufferType |
|
参数 | 描述 |
bufferType | 指定视频帧的数据结构: TRTC_VIDEO_BUFFER_TYPE_TEXTURE:适用于 pixelFormat 被设置为 TRTC_VIDEO_PIXEL_FORMAT_Texture_2D 时。 TRTC_VIDEO_BUFFER_TYPE_BYTE_BUFFER:适用于 pixelFormat 被设置为 TRTC_VIDEO_PIXEL_FORMAT_I420 和 TRTC_VIDEO_PIXEL_FORMAT_RGBA 时。 TRTC_VIDEO_BUFFER_TYPE_BYTE_ARRAY:适用于 pixelFormat 被设置为 TRTC_VIDEO_PIXEL_FORMAT_I420 和 TRTC_VIDEO_PIXEL_FORMAT_RGBA 时。 |
listener | 自定义视频渲染回调,每一帧视频数据回调一次。 |
pixelFormat | 指定视频帧的像素格式,如: TRTC_VIDEO_PIXEL_FORMAT_Texture_2D:OpenGL 纹理格式,比较适合 GPU 进行处理,处理效率高。 TRTC_VIDEO_PIXEL_FORMAT_I420:标准 i420 格式,比较适合 CPU 进行处理,处理效率较差。 TRTC_VIDEO_PIXEL_FORMAT_RGBA:RGBA 格式,比较适合 CPU 进行处理,处理效率较差。 |
int setRemoteVideoRenderListener | (String userId |
| int pixelFormat |
| int bufferType |
|
参数 | 描述 |
bufferType | |
listener | 自定义视频渲染回调,每一帧视频数据回调一次。 |
pixelFormat | |
userId | 指定远端用户的 ID。 |
void setAudioFrameListener |
int setCapturedAudioFrameCallbackFormat |
参数 | 描述 |
format | 音频数据回调格式。 |
int setLocalProcessedAudioFrameCallbackFormat |