API | 描述 |
获取单例对象。 | |
销毁单例对象。 | |
设置事件回调。 | |
设置事件回调所在的线程。 | |
登录。 | |
登出。 | |
修改个人信息。 |
API | 描述 |
创建房间(主播调用),若房间不存在,系统将自动创建一个新房间。 | |
销毁房间(主播调用)。 | |
进入房间(观众调用)。 | |
离开房间(观众调用)。 | |
获取房间列表的详细信息。 | |
获取房间内所有的主播列表,enterRoom() 成功后调用才有效。 | |
获取房间内所有的观众信息,enterRoom() 成功后调用才有效。 |
API | 描述 |
开启本地视频的预览画面。 | |
停止本地视频采集及预览。 | |
开始直播(推流)。 | |
停止直播(推流)。 | |
播放远端视频画面,可以在普通观看和连麦场景中调用。 | |
停止渲染远端视频画面。 |
API | 描述 |
观众请求连麦。 | |
主播处理连麦请求。 | |
主播踢除连麦观众。 |
API | 描述 |
主播请求跨房 PK。 | |
主播响应跨房 PK 请求。 | |
退出跨房 PK。 |
API | 描述 |
切换前后摄像头。 | |
设置是否镜像展示。 | |
静音本地音频。 | |
静音远端音频。 | |
静音所有远端音频。 |
API | 描述 |
API | 描述 |
API | 描述 |
在房间中广播文本消息,一般用于弹幕聊天。 | |
发送自定义文本消息。 |
API | 描述 |
是否在界面中展示 debug 信息。 |
API | 描述 |
错误回调。 | |
警告回调。 | |
Log 回调。 |
API | 描述 |
房间被销毁的回调。 | |
直播房间信息变更回调。 |
API | 描述 |
收到新主播进房通知。 | |
收到主播退房通知。 | |
收到观众进房通知。 | |
收到观众退房通知。 |
API | 描述 |
主播收到观众连麦请求时的回调。 | |
连麦观众收到被踢出连麦的通知。 |
API | 描述 |
收到请求跨房 PK 通知。 | |
收到断开跨房 PK 通知。 |
API | 描述 |
收到文本消息。 | |
收到自定义消息。 |
public static synchronized TRTCLiveRoom sharedInstance(Context context);
参数 | 类型 | 含义 |
context | Context | Android 上下文,内部会转为 ApplicationContext 用于系统 API 调用 |
public static void destroySharedInstance();
public abstract void setDelegate(TRTCLiveRoomDelegate delegate);
public abstract void setDelegateHandler(Handler handler);
参数 | 类型 | 含义 |
handler | Handler | TRTCLiveRoom 中的各种状态通知回调会通过该 handler 通知给您,请勿与 setDelegate 混用。 |
public abstract void login(int sdkAppId,String userId, String userSig,TRTCLiveRoomDef.TRTCLiveRoomConfig config,TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
sdkAppId | int | |
userId | String | 当前用户的 ID,字符串类型,只允许包含英文字母(a-z 和 A-Z)、数字(0-9)、连词符(-)和下划线(_)。 |
userSig | String | |
config | TRTCLiveRoomConfig | 全局配置信息,请在登录时初始化,登录之后不可变更。 useCDNFirst 属性:用于设置观众观看方式。true 表示普通观众通过 CDN 观看,计费便宜但延时较高。false 表示普通观众通过低延时观看,计费价格介于 CDN 和连麦之间,但延迟可控制在1s以内。 CDNPlayDomain 属性:在 useCDNFirst 设置为 true 时才会生效,用于指定 CDN 观看的播放域名,您可以登录直播控制台 >【域名管理】页面中进行设置。 |
callback | ActionCallback | 登录回调,成功时 code 为0。 |
public abstract void logout(TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
callback | ActionCallback | 登出回调,成功时 code 为0。 |
public abstract void setSelfProfile(String userName, String avatarURL, TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
userName | String | 昵称。 |
avatarURL | String | 头像地址。 |
callback | ActionCallback | 个人信息设置回调,成功时 code 为0。 |
public abstract void createRoom(int roomId, TRTCLiveRoomDef.TRTCCreateRoomParam roomParam, TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
roomId | int | 房间标识,需要由您分配并进行统一管理。多个 roomID 可以汇总成一个直播间列表,腾讯云暂不提供直播间列表的管理服务,请自行管理您的直播间列表。 |
roomParam | TRTCCreateRoomParam | 房间信息,用于房间描述的信息,例如房间名称,封面信息等。如果房间列表和房间信息都由您的服务器自行管理,可忽略该参数。 |
callback | ActionCallback | 创建房间的结果回调,成功时 code 为0。 |
startCameraPreview()
打开摄像头预览,此时可以调整美颜参数。 createRoom()
创建直播间,房间创建成功与否会通过 ActionCallback 通知给主播。starPublish()
开始推流。public abstract void destroyRoom(TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
callback | ActionCallback | 销毁房间的结果回调,成功时 code 为0。 |
public abstract void enterRoom(int roomId, TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
roomId | int | 房间标识。 |
callback | ActionCallback | 进入房间的结果回调,成功时 code 为0。 |
enterRoom()
进入该房间。startPlay(userId)
并传入主播的 userId 开始播放。startPlay(userId)
即可开始播放。TRTCLiveRoomDelegate
中的 onAnchorEnter(userId)
的事件回调,该回调中携带主播的 userId 信息,再调用startPlay(userId)
即可播放。public abstract void exitRoom(TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
callback | ActionCallback | 退出房间的结果回调,成功时 code 为0。 |
createRoom()
时通过 roomInfo 设置的。public abstract void getRoomInfos(List<Integer> roomIdList, TRTCLiveRoomCallback.RoomInfoCallback callback);
参数 | 类型 | 含义 |
roomIdList | List<Integer> | 房间号列表。 |
callback | RoomInfoCallback | 房间详细信息回调。 |
enterRoom()
成功后调用才有效。public abstract void getAnchorList(TRTCLiveRoomCallback.UserListCallback callback);
参数 | 类型 | 含义 |
callback | UserListCallback | 用户详细信息回调。 |
enterRoom()
成功后调用才有效。public abstract void getAudienceList(TRTCLiveRoomCallback.UserListCallback callback);
参数 | 类型 | 含义 |
callback | UserListCallback | 用户详细信息回调。 |
public abstract void startCameraPreview(boolean isFront, TXCloudVideoView view, TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
isFront | boolean | true:前置摄像头;false:后置摄像头。 |
view | TXCloudVideoView | 承载视频画面的控件。 |
callback | ActionCallback | 操作回调。 |
public abstract void stopCameraPreview();
public abstract void startPublish(String streamId, TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
streamId | String | 用于绑定直播 CDN 的 streamId,如果您希望观众通过直播 CDN 进行观看,需要指定当前主播的直播 streamId。 |
callback | ActionCallback | 操作回调。 |
public abstract void stopPublish(TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
callback | ActionCallback | 操作回调。 |
public abstract void startPlay(String userId, TXCloudVideoView view, TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
userId | String | 需要观看的用户id。 |
view | TXCloudVideoView | 承载视频画面的 view 控件。 |
callback | ActionCallback | 操作回调。 |
enterRoom()
成功后调用 startPlay(userId)
播放主播的画面。TRTCLiveRoomDelegate
中的 onAnchorEnter(userId)
的事件回调,该回调中携带主播的 userId 信息,再调用startPlay(userId)
即可播放主播的画面。TRTCLiveRoomDelegate
中的 onAnchorEnter(userId)
回调,此时使用回调中的 userId 调用 startPlay(userId) 即可播放连麦画面。onAnchorExit()
回调时,调用该接口。public abstract void stopPlay(String userId, TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
userId | String | 对方的用户信息。 |
callback | ActionCallback | 操作回调。 |
public abstract void requestJoinAnchor(String reason, int timeout, TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
reason | String | 连麦原因。 |
timeout | int | 超时时间。 |
callback | ActionCallback | 主播响应回调。 |
requestJoinAnchor()
向主播发起连麦请求。TRTCLiveRoomDelegate
的 onRequestJoinAnchor()
回调通知。responseJoinAnchor()
决定是否接受来自观众的连麦请求。startCameraPreview()
开启本地摄像头。startPublish()
正式进入推流状态。TRTCLiveRoomDelegate
的 onAnchorEnter()
通知。startPlay()
即可看到连麦观众的视频画面。onAnchorEnter()
通知,调用 startPlay()
播放其他连麦者的视频画面。TRTCLiveRoomDelegate
的 onRequestJoinAnchor()
回调后需要调用此接口来处理观众的连麦请求。public abstract void responseJoinAnchor(String userId, boolean agree, String reason);
参数 | 类型 | 含义 |
userId | String | 观众 ID。 |
agree | boolean | true:同意;false:拒绝。 |
reason | String | 同意/拒绝连麦的原因描述。 |
TRTCLiveRoomDelegate
的 onKickoutJoinAnchor()
回调通知。public abstract void kickoutJoinAnchor(String userId, TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
userId | String | 连麦观众 ID。 |
callback | ActionCallback | 操作回调。 |
public abstract void requestRoomPK(int roomId, String userId, TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
roomId | int | 被邀约房间 ID。 |
userId | String | 被邀约主播 ID。 |
callback | ActionCallback | 请求跨房 PK 的结果回调。 |
requestRoomPK()
向主播 B 发起连麦请求。TRTCLiveRoomDelegate
的 onRequestRoomPK()
回调通知。responseRoomPK()
决定是否接受主播 A 的 PK 请求。TRTCLiveRoomDelegate
的 onAnchorEnter()
通知,然后调用 startPlay()
来显示主播 A 的视频画面。responseCallback
回调通知,该通知会携带来自主播 B 的处理结果。TRTCLiveRoomDelegate
的 onAnchorEnter()
通知,然后调用 startPlay()
显示主播 B 的视频画面。requestRoomPK
传入的 responseCallback
回调。public abstract void responseRoomPK(String userId, boolean agree, String reason);
参数 | 类型 | 含义 |
userId | String | 发起 PK 请求的主播 ID。 |
agree | boolean | true:同意;false:拒绝。 |
reason | String | 同意/拒绝 PK 的原因描述。 |
TRTCLiveRoomDelegate
的 onQuitRoomPk()
回调通知。public abstract void quitRoomPK(TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
callback | ActionCallback | 操作回调。 |
public abstract void switchCamera();
public abstract void setMirror(boolean isMirror);
参数 | 类型 | 含义 |
isMirror | boolean | 开启/关闭镜像。 |
public abstract void muteLocalAudio(boolean mute);
参数 | 类型 | 含义 |
mute | boolean | true:开启静音;false:关闭静音。 |
public abstract void muteRemoteAudio(String userId, boolean mute);
参数 | 类型 | 含义 |
userId | String | 远端的用户 ID。 |
mute | boolean | true:开启静音;false:关闭静音。 |
public abstract void muteAllRemoteAudio(boolean mute);
参数 | 类型 | 含义 |
mute | boolean | true:开启静音;false:关闭静音。 |
public abstract TXAudioEffectManager getAudioEffectManager();
public abstract TXBeautyManager getBeautyManager();
public abstract void sendRoomTextMsg(String message, TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
message | String | 文本消息。 |
callback | ActionCallback | 发送结果回调。 |
public abstract void sendRoomCustomMsg(String cmd, String message, TRTCLiveRoomCallback.ActionCallback callback);
参数 | 类型 | 含义 |
cmd | String | 命令字,由开发者自定义,主要用于区分不同消息类型。 |
message | String | 文本消息。 |
callback | ActionCallback | 发送结果回调。 |
public abstract void showVideoDebugLog(boolean isShow);
参数 | 类型 | 含义 |
isShow | boolean | 开启/关闭 Debug 信息显示。 |
void onError(int code, String message);
参数 | 类型 | 含义 |
code | int | 错误码。 |
message | String | 错误信息。 |
void onWarning(int code, String message);
参数 | 类型 | 含义 |
code | int | 错误码。 |
message | String | 警告信息。 |
void onDebugLog(String message);
参数 | 类型 | 含义 |
message | String | 日志信息。 |
void onRoomDestroy(String roomId);
参数 | 类型 | 含义 |
roomId | String | 房间 ID。 |
void onRoomInfoChange(TRTCLiveRoomDef.TRTCLiveRoomInfo roomInfo);
参数 | 类型 | 含义 |
roomInfo | TRTCLiveRoomInfo | 房间信息。 |
TRTCLiveRoom
的 startPlay()
显示该主播的视频画面。void onAnchorEnter(String userId);
参数 | 类型 | 含义 |
userId | String | 新进房主播 ID。 |
TRTCLiveRoom
的 stopPlay()
关闭该主播的视频画面。void onAnchorExit(String userId);
参数 | 类型 | 含义 |
userId | String | 退房用户 ID。 |
void onAudienceEnter(TRTCLiveRoomDef.TRTCLiveUserInfo userInfo);
参数 | 类型 | 含义 |
userInfo | TRTCLiveUserInfo | 进房观众信息。 |
void onAudienceExit(TRTCLiveRoomDef.TRTCLiveUserInfo userInfo);
参数 | 类型 | 含义 |
userInfo | TRTCLiveUserInfo | 退房观众信息。 |
void onRequestJoinAnchor(TRTCLiveRoomDef.TRTCLiveUserInfo userInfo, String reason, int timeOut);
参数 | 类型 | 含义 |
userInfo | TRTCLiveUserInfo | 请求连麦观众信息。 |
reason | String | 连麦原因描述。 |
timeout | int | 处理请求的超时时间,如果上层超过该时间没有处理,则会自动将该次请求废弃。 |
TRTCLiveRoom
的 stopPublish()
退出连麦。void onKickoutJoinAnchor();
TRTCLiveRoomDelegate
的 onAnchorEnter()
通知,然后调用 startPlay()
来播放邀约主播的流。void onRequestRoomPK(TRTCLiveRoomDef.TRTCLiveUserInfo userInfo, int timeout);
参数 | 类型 | 含义 |
userInfo | TRTCLiveUserInfo | 发起跨房连麦的主播信息。 |
timeout | int | 处理请求的超时时间。 |
void onQuitRoomPK();
void onRecvRoomTextMsg(String message, TRTCLiveRoomDef.TRTCLiveUserInfo userInfo);
参数 | 类型 | 含义 |
message | String | 文本消息。 |
userInfo | TRTCLiveUserInfo | 发送者用户信息。 |
void onRecvRoomCustomMsg(String cmd, String message, TRTCLiveRoomDef.TRTCLiveUserInfo userInfo);
参数 | 类型 | 含义 |
command | String | 命令字,由开发者自定义,主要用于区分不同消息类型。 |
message | String | 文本消息。 |
userInfo | TRTCLiveUserInfo | 发送者用户信息。 |
void playBGM(String url, int loopTimes, int bgmVol, int micVol, TRTCCloud.BGMNotify notify);
参数 | 类型 | 含义 |
url | String | 背景音乐文件路径。 |
loopTimes | int | 循环次数 |
bgmVol | int | BGM 音量 |
micVol | int | 采集音量 |
notify | TRTCCloud.BGMNotify | 播放通知 |
void stopBGM();
void pauseBGM();
void resumeBGM();
void setBGMVolume(int volume);
参数 | 类型 | 含义 |
volume | int | 音量大小,100表示正常音量,取值范围为0 - 100,默认值为100。 |
int setBGMPosition(int position);
参数 | 类型 | 含义 |
position | int | 背景音乐播放进度,单位为毫秒(ms)。 |
void setMicVolume(int volume);
参数 | 类型 | 含义 |
volume | Int | 音量大小,取值0 - 100,默认值为100。 |
void setReverbType(int reverbType);
参数 | 类型 | 含义 |
reverbType | int |
void setVoiceChangerType(int type);
参数 | 类型 | 含义 |
type | int |
void playAudioEffect(int effectId, String path, int count, boolean publish, int volume);
参数 | 类型 | 含义 |
effectId | int | 音效 ID。 |
path | String | 音效路径。 |
count | int | 循环次数。 |
publish | boolean | 是否推送 / true 推送给观众, false 本地预览。 |
volume | int | 音量大小,取值范围为0 - 100,默认值为100。 |
void pauseAudioEffect(int effectId);
参数 | 类型 | 含义 |
effectId | int | 音效 ID。 |
void resumeAudioEffect(int effectId);
参数 | 类型 | 含义 |
effectId | int | 音效 ID。 |
void stopAudioEffect(int effectId);
参数 | 类型 | 含义 |
effectId | int | 音效 ID。 |
void stopAllAudioEffects();
void setAudioEffectVolume(int effectId, int volume);
参数 | 类型 | 含义 |
effectId | int | 音效 ID。 |
volume | int | 音量大小,取值范围为0 - 100,默认值为100。 |
void setAllAudioEffectsVolume(int volume);
参数 | 类型 | 含义 |
volume | int | 音量大小,取值范围为0 - 100,默认值为100。 |
本页内容是否解决了您的问题?