函数列表 | 描述 |
创建 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) |
result 会是一个正数(result > 0),表示从函数调用到进入房间所花费的时间,单位是毫秒(ms)。 result 会是一个负数(result < 0),表示进房失败的错误码。参数 | 描述 |
param | |
scene |
scene 。不同的 scene 会导致偶现的异常问题。 scene 为 TRTC_APP_SCENE_LIVE 或 TRTC_APP_SCENE_VOICE_CHATROOM 时,您必须通过 TRTCParams 中的 role 字段为当前用户设定他/她在房间中的角色。void switchRole | (int role) |
参数 | 描述 |
role | 角色,默认为 主播。 TRTCRoleAnchor :主播,可以发布自己的音视频,同一个房间里最多支持50个主播同时发布音视频。 TRTCRoleAudience :观众,不能发布自己的音视频流,只能观看房间中其他主播的音视频。如果要发布自己的音视频,需要先通过 switchRole 切换成 主播,同一个房间内同时最多可以容纳 10 万名观众。 |
scene 为 TRTC_APP_SCENE_VIDEOCALL 或 TRTC_APP_SCENE_AUDIOCALL,请不要调用这个接口。void switchRole | (int role |
| final String privateMapKey) |
参数 | 描述 |
privateMapKey | 用于权限控制的权限票据,当您希望某个房间只能让特定的 userId 进入或者上行视频时,需要使用 privateMapKey 进行权限保护。 仅建议有高级别安全需求的客户使用,更多详情请参见 开启高级权限控制。 |
role | 角色,默认为 主播。 TRTCRoleAnchor :主播,可以发布自己的音视频,同一个房间里最多支持50个主播同时发布音视频。 TRTCRoleAudience :观众,不能发布自己的音视频流,只能观看房间中其他主播的音视频。如果要发布自己的音视频,需要先通过 switchRole 切换成 主播,同一个房间内同时最多可以容纳 10 万名观众。 |
void switchRoom |
exitRoom(当前房间) + enterRoom(新的房间) 。 switchRoom 可以获得比 exitRoom + enterRoom 更好的流畅性和更少的代码量。参数 | 描述 |
config |
config 中同时包含 roomId 与 strRoomId 两个参数,这两个参数的填写格外讲究,请注意如下事项: strRoomId ,则 roomId 需要填写为0。若两者都填,将优先选用 roomId 。 strRoomId 或同时使用 roomId ,不可混用,否则将会出现很多预期之外的 bug。void ConnectOtherRoom | (String param) |
connectOtherRoom() 跟房间“102”中的主播 B 建立跨房通话后, onRemoteUserEnterRoom(B) 和 onUserVideoAvailable(B,true) 这两个事件回调,即房间“101”中的用户都可以订阅主播 B 的音视频。 onRemoteUserEnterRoom(A) 和 onUserVideoAvailable(A,true) 这两个事件回调,即房间“102”中的用户都可以订阅主播 A 的音视频。
{"roomId": 102, "userId": "userB"} JSONObject jsonObj = new JSONObject();jsonObj.put("roomId", 102);jsonObj.put("userId", "userB");trtc.ConnectOtherRoom(jsonObj.toString());
{"strRoomId": "102", "userId": "userB"} 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) |
onRemoteUserEnterRoom(C) , onUserVideoAvailable(C,true) 和 onUserAudioAvailable(C,true) 这三个事件回调,可以订阅主播 C 的音视频。 onUserAudioAvailable(C,false) 事件回调,且无法再通过 muteRemoteAudio(C,false) 订阅主播 C 的音频。{"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 |
target 支持同时配置多个 CDN URL(最多同时 10 个)。若您的同一个转推/转码任务需要发布至多路 CDN,则仅需要在 target 中配置多个 CDN URL 即可。同一个转码任务即使有多个转推地址,对应的转码计费仍只收取一份。void updatePublishMediaStream | (final String taskId |
| |
| |
|
参数 | 描述 |
config | |
params | 媒体流编码输出参数,具体配置参考 TRTCStreamEncoderParam。转码和回推到 TRTC 房间中时为必填项,您需要指定您预期的转码输出参数。在转推时,为了更好的转推稳定性和 CDN 兼容性,也建议您进行配置。 |
target | |
taskId |
taskId 来更新调整转推/转码任务。例如在 pk 业务中,您可以先通过 startPublishMediaStream 发起转推,接着在主播发起 pk 时,通过 taskId 和本接口将转推更新为转码任务。此时,CDN 播放将连续并且不会发生断流(您需要保持媒体流编码输出参数 param 一致)。void stopPublishMediaStream | (final String taskId) |
参数 | 描述 |
taskId |
taskId ,在您的主播异常退房重进后,如果您需要重新获取 taskId ,您可以再次调用 startPublishMediaStream 启动任务。此时 TRTC 后台会返回任务启动失败,同时带给您上一次启动的 taskId 。 taskId 填空字符串,将会停止该用户所有通过 startPublishMediaStream 启动的媒体流,如果您只启动了一个媒体流或者想停止所有通过您启动的媒体流,推荐使用这种方式。void startLocalPreview | (boolean frontCamera |
| TXCloudVideoView view) |
参数 | 描述 |
frontCamera | true:前置摄像头;false:后置摄像头。 |
view | 承载视频画面的控件。 |
void updateLocalView | (TXCloudVideoView view) |
void muteLocalVideo | (int streamType |
| boolean mute) |
startLocalPreview + stopLocalPreview 需要打开和关闭摄像头,而打开和关闭摄像头都是硬件设备相关的操作,非常耗时。 muteLocalVideo 只需要在软件层面对数据流进行暂停或者放行即可,因此效率更高,也更适合需要频繁打开关闭的场景。参数 | 描述 |
mute | true:暂停;false:恢复。 |
streamType |
void setVideoMuteImage | (Bitmap image |
| int fps) |
muteLocalVideo(true) 暂停本地画面时,您可以通过调用本接口设置一张替代图片,设置后,房间中的其他用户会看到这张替代图片,而不是黑屏画面。参数 | 描述 |
fps | 设置替代图片帧率,最小值为5,最大值为10,默认5。 |
image |
void startRemoteView | (String userId |
| int streamType |
| TXCloudVideoView view) |
startRemoteView 订阅该用户的画面。参数 | 描述 |
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) |
void muteAllRemoteAudio | (boolean mute) |
void setAudioRoute | (int route) |
参数 | 描述 |
route |
void setRemoteAudioVolume | (String userId |
| int volume) |
setRemoteAudioVolume(userId, 0) 将某一个远端用户的声音静音。参数 | 描述 |
userId | 用于指定远端用户的 ID。 |
volume | 音量大小,取值范围为 [0, 150],默认值:100。 |
volume 设置成 100 之后感觉音量还是太小,可以将 volume 最大设置成 150,但超过 100 的 volume 会有爆音的风险,请谨慎操作。void setAudioCaptureVolume | (int volume) |
参数 | 描述 |
volume | 音量大小,取值范围为 [0, 150];默认值:100。 |
volume 设置成 100 之后感觉音量还是太小,可以将 volume 最大设置成 150,但超过 100 的 volume 会有爆音的风险,请谨慎操作。void setAudioPlayoutVolume | (int volume) |
参数 | 描述 |
volume | 音量大小,取值范围为 [0, 150],默认值: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) |
540 × 0.2 = 108px ,水印的高度会根据水印图片的宽高比由 SDK 自动算出。参数 | 描述 |
image | 水印图片,必须使用透明底色的 png 格式。 |
rect | 水印相对于编码分辨率的归一化坐标,x,y,width,height 取值范围 [0, 1]。 |
streamType |
streamType 。 android:foregroundServiceType="mediaProjection" 。void startScreenCapture | (int streamType |
| |
|
参数 | 描述 |
encParams | |
shareParams | |
streamType |
void setSubStreamEncoderParam |
参数 | 描述 |
param |
void enableCustomVideoCapture | (int streamType |
| boolean enable) |
参数 | 描述 |
enable | 是否启用视频自定义采集,默认值:false。 |
streamType |
void sendCustomVideoData | (int streamType |
|
参数 | 描述 |
frame | 视频数据,如果是内存传递方案,请设置 data 字段;如果是显存传递方案,请设置 TRTCTexture 字段。bufferType 推荐选择 TRTC_VIDEO_BUFFER_TYPE_TEXTURE,pixelFormat 推荐选择 TRTC_VIDEO_PIXEL_FORMAT_Texture_2D,更多支持格式参考 TRTCVideoFrame。 |
streamType |
void enableCustomAudioCapture | (boolean enable) |
参数 | 描述 |
enable | 是否启用音频自定义采集模式,默认值:false。 |
void sendCustomAudioData |
48000 × 0.02s × 1 × 16bit = 15360bit = 1920字节 。参数 | 描述 |
frame | 音频数据 |
void enableMixExternalAudioFrame | (boolean enablePublish |
| boolean enablePlayout) |
参数 | 描述 |
enablePlayout | 控制混入的音轨是否要在本地播放,默认值:false。 |
enablePublish | 控制混入的音轨是否要在远端播放,默认值:false。 |
enablePublish 和 enablePlayout 均为 false,代表完全关闭您的自定义音轨。int mixExternalAudioFrame |
48000 × 0.02s × 1 × 16bit = 15360bit = 1920字节 。参数 | 描述 |
frame | 音频数据 |
mixExternalAudioFrame )void setMixExternalAudioVolume | (int publishVolume |
| int playoutVolume) |
参数 | 描述 |
playoutVolume | 设置的播放音量大小,范围 [0, 150],-1 表示不改变。 |
publishVolume | 设置的推流音量大小,范围 [0, 150],-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。 |
startRemoteView(userId, null) 启动远程视频流的拉取,并将 view 设置为 null,否则不会有数据回调出来。void setAudioFrameListener |
int setCapturedAudioFrameCallbackFormat |
采样点数 = 毫秒数 * 采样率 / 1000 。 960 = 20 * 48000 / 1000 。参数 | 描述 |
format | 音频数据回调格式。 |
字节数 = 采样点数 * channel * 2(位宽) 。举例:48000Hz 采样率,双声道,20ms 帧长,采样点数为 960,字节数为 3840 = 960 * 2 * 2 。int setLocalProcessedAudioFrameCallbackFormat |
采样点数 = 毫秒数 * 采样率 / 1000 。 960 = 20 * 48000 / 1000 。参数 | 描述 |
format | 音频数据回调格式。 |
字节数 = 采样点数 * channel * 2(位宽) 。 举例:48000Hz 采样率,双声道,20ms 帧长,采样点数为 960,字节数为 3840 = 960 * 2 * 2 。int setMixedPlayAudioFrameCallbackFormat |
采样点数 = 毫秒数 * 采样率 / 1000 。 960 = 20 * 48000 / 1000 。参数 | 描述 |
format | 音频数据回调格式。 |
字节数 = 采样点数 * channel * 2(位宽) 。 举例:48000Hz 采样率,双声道,20ms 帧长,采样点数为 960,字节数为 3840 = 960 * 2 * 2 。void enableCustomAudioRendering | (boolean enable) |
参数 | 描述 |
enable | 是否启用音频自定义播放,默认为关闭状态。 |
void getCustomAudioRenderingFrame |
采样率 x 播放时长 x 声道数量 x 2(每个样点的字节数) , 例如: 48000Hz 采样率、单声道、且播放时长为 20ms 的一帧音频帧的 buffer 大小为 48000 × 0.02s × 1 × 16bit = 15360bit = 1920字节 。参数 | 描述 |
audioFrame | 音频数据帧。 |
boolean sendCustomCmdMsg | (int cmdID |
| byte[] data |
| boolean reliable |
| boolean ordered) |
参数 | 描述 |
cmdID | 消息 ID,取值范围为 [1, 10]。 |
data | 待发送的消息,单个消息的最大长度被限制为 1KB。 |
ordered | 是否要求有序,即是否要求接收端的数据包顺序和发送端的数据包顺序一致(这会带来一定的接收延时)。 |
reliable | 是否可靠发送,可靠发送可以获得更高的发送成功率,但可靠发送比不可靠发送会带来更大的接收延迟。 |
reliable 和 ordered 同时设置为 true 或同时设置为 false,暂不支持交叉设置。boolean sendSEIMsg | (byte[] data |
| int repeatCount) |
参数 | 描述 |
data | 待发送的数据,最大支持 1KB(1000字节)的数据大小 |
repeatCount | 发送数据次数 |
int startSpeedTest |
参数 | 描述 |
params | 测速选项 |
void setLogLevel | (int level) |
参数 | 描述 |
level |
void setConsoleEnabled | (boolean enabled) |
参数 | 描述 |
enabled | 指定是否启用,默认:禁止状态。 |
void setLogCompressEnabled | (boolean enabled) |
参数 | 描述 |
enabled | 指定是否启用,默认为启动状态 |
void setLogDirPath | (String path) |
参数 | 描述 |
path | 存储日志的路径 |
void showDebugView | (int showType) |
参数 | 描述 |
showType | 0:不显示;1:显示精简版(仅显示音视频信息);2:显示完整版(包含音视频信息和事件信息)。 |
public TRTCViewMargin | (float leftMargin |
| float rightMargin |
| float topMargin |
| float bottomMargin) |
参数 | 描述 |
margin | 仪表盘内边距,注意这里是基于 parentView 的百分比, margin 的取值范围是 [0, 1]。 |
userId | 用户 ID。 |
String callExperimentalAPI | (String jsonStr) |
int enablePayloadPrivateEncryption | (boolean enabled |
|
enablePayloadPrivateEncryption 方法开启媒体流私有加密。参数 | 描述 |
config | |
enabled | 是否开启媒体流私有加密。 |
文档反馈