LiveCoreView
API 简介
LiveCoreView 是我们开发视频直播UIKit的一个基础控件,该核心控件提供了 开播前画面预览、开启视频直播、关闭视频直播,直播间内和观众连线,跨房和其他主播连线等丰富的 API。
API 概览
API | 描述 |
创建 LiveCoreView 对象,支持 代码创建 和 xml 加载两种方式。 | |
开启摄像头采集,并将采集到的画面显示到LiveCoreView上。 | |
打开本地麦克风 | |
是否暂停发布本地的音频流 | |
关闭本地摄像头 | |
关闭本地麦克风 | |
主播创建直播间并开始推流 | |
主播停止推流并销毁直播间 | |
观众加入某个主播的直播间 | |
观众离开某个主播的直播间 | |
观众请求和主播连线 | |
观众取消和主播连线的请求 | |
主播响应观众连线的请求 | |
主播断开连线的观众 | |
观众自己停止和主播的连线 | |
主播请求和另外一个直播间的主播连线 | |
主播取消和另外一个直播间的主播连线的请求 | |
主播响应连线请求 | |
主播断开连线 | |
注册一个连线事件回调 | |
反注册一个连线事件回调 | |
设置连线主播视频画面的布局模式 | |
设置为连线主播视频画面上添加挂件的视图适配器 |
API 详情
LiveCoreView
创建一个 LiveCoreView 对象实例。同时支持 代码创建 和 xml 加载两种方式创建。
public LiveCoreView(Context context)
参数:
参数 | 类型 | 含义 |
context | Context | Android 上下文对象 |
返回值:LiveCoreView
startCamera
开始摄像头采集并将采集到的画面显示到LiveCoreView视图上。
public void startCamera(boolean useFrontCamera, ActionCallback callback)
参数:
参数 | 类型 | 含义 |
useFrontCamera | boolean | true:使用前置摄像头;false:使用后置摄像头 |
callback | ActionCallback | 操作的回调 |
返回值:void
startMicrophone
打开本地麦克风。
void startMicrophone(ActionCallback callback)
参数:
参数 | 类型 | 含义 |
callback | ActionCallback | 操作的回调 |
返回值:void
muteMicrophone
是否暂停发布本地的音频流。
void muteMicrophone(boolean mute)
参数:
参数 | 类型 | 含义 |
mute | boolean | true:暂停发布视频流,false:正常发布视频流 |
返回值:void
stopCamera
关闭本地摄像头。
void stopCamera()
参数:
返回值:void
stopMicrophone
关闭本地麦克风。
void stopMicrophone()
参数:
返回值:void
startLiveStream
主播创建直播间并开始推流。
void startLiveStream(RoomInfo roomInfo, GetRoomInfoCallback callback)
参数:
参数 | 类型 | 含义 |
roomInfo | RoomInfo | 创建直播间的信息 |
callback | ActionCallback | 操作的回调 |
返回值:void
stopLiveStream
主播停止推流并销毁直播间。
void stopLiveStream(ActionCallback callback)
参数:
参数 | 类型 | 含义 |
callback | ActionCallback | 操作的回调 |
返回值:void
joinLiveStream
观众加入某个主播的直播间。
void joinLiveStream(String roomId, GetRoomInfoCallback callback)
参数:
参数 | 类型 | 含义 |
roomId | String | 直播间 ID |
callback | ActionCallback | 操作的回调 |
返回值:void
leaveLiveStream
观众离开某个主播的直播间。
void leaveLiveStream(ActionCallback callback)
参数:
参数 | 类型 | 含义 |
callback | ActionCallback | 操作的回调 |
返回值:void
requestIntraRoomConnection
观众请求和主播连线。
void requestIntraRoomConnection(String userId, int timeout, boolean openCamera, ActionCallback callback)
参数:
参数 | 类型 | 含义 |
userId | String | 用户 ID,如果不填,则代表主播的用户 ID。 |
timeout | int | 请求超时时长,单位: 秒。 |
openCamera | boolean | 连麦成功后是否打开摄像头。true:视频连麦, false:语音连麦。 |
callback | ActionCallback | 操作的回调。 |
返回值:void
cancelIntraRoomConnection
观众取消和主播连线的请求。
void cancelIntraRoomConnection(String userId, ActionCallback callback)
参数:
参数 | 类型 | 含义 |
userId | String | 取消连麦的用户ID,如果不填,则代表主播的用户ID。 |
callback | ActionCallback | 操作的回调 |
返回值:void
respondIntraRoomConnection
主播响应观众连线的请求。
void respondIntraRoomConnection(String userId, boolean isAccepted, ActionCallback callback)
参数:
参数 | 类型 | 含义 |
userId | String | 响应用户的用户 ID |
isAccepted | isAccepted | 是否接受连麦请求,true:同意连麦请求,false:拒绝连麦请求 |
callback | ActionCallback | 操作的回调 |
返回值:void
disconnectUser
主播断开连线的观众。
void disconnectUser(String userId, ActionCallback callback)
参数:
参数 | 类型 | 含义 |
userId | String | 主播需要断开连麦的用户 ID |
callback | ActionCallback | 操作的回调 |
返回值:void
terminateIntraRoomConnection
观众自己停止和主播的连线。
void terminateIntraRoomConnection()
参数:无
返回值:void
requestCrossRoomConnection
主播请求和另外一个直播间的主播连线。
void requestCrossRoomConnection(String roomId, int timeout, ActionCallback callback)
参数:
参数 | 类型 | 含义 |
roomId | String | 请求跨房连线的房间 ID。 |
timeout | int | 请求的超时时长,单位:秒。 |
callback | ActionCallback | 操作的回调。 |
返回值:void
cancelCrossRoomConnection
主播取消和另外一个直播间的主播连线的请求。
void cancelCrossRoomConnection(String roomId, ActionCallback callback)
参数:
参数 | 类型 | 含义 |
roomId | String | 取消连线的房间 ID |
callback | ActionCallback | 操作的回调 |
返回值:void
respondToCrossRoomConnection
主播响应连线请求。
void respondToCrossRoomConnection(String roomId, boolean isAccepted, ActionCallback callback)
参数:
参数 | 类型 | 含义 |
roomId | String | 响应连线的房间 ID |
isAccepted | boolean | 是否同意连线,true:同意连线,false:拒绝连线 |
callback | ActionCallback | 操作的回调 |
返回值:void
terminateCrossRoomConnection
主播断开连线。
void terminateCrossRoomConnection()
参数:无
返回值:void
registerConnectionObserver
注册一个连线事件回调。
void registerConnectionObserver(ConnectionObserver observer)
参数:
参数 | 类型 | 含义 |
observer | 连线事件的回调对象 |
返回值:void
unregisterConnectionObserver
反注册一个连线事件回调。
void unregisterConnectionObserver(ConnectionObserver observer)
参数:
参数 | 类型 | 含义 |
observer | 连线事件的回调对象 |
返回值:void
setLayoutMode
设置连线主播视频画面的布局模式。
void setLayoutMode(LayoutMode layoutModel, String layoutJson)
参数:
参数 | 类型 | 含义 |
layoutModel | 连线时的布局模式,支持宫格布局、浮窗布局、自定义布局。 | |
layoutJson | String | 布局的 json 字符串 |
返回值:void
setVideoViewAdapter
设置为连线主播视频画面上添加挂件的视图适配器。
void setVideoViewAdapter(LiveCoreViewDefine.VideoViewAdapter viewAdapter)
参数:
参数 | 类型 | 含义 |
viewAdapter | 连线主播视频画面上添加挂件的视图适配器 |
返回值:void
- API 简介
- API 概览
- API 详情
- stopMicrophone
- startLiveStream
- stopLiveStream
- joinLiveStream
- leaveLiveStream
- requestIntraRoomConnection
- cancelIntraRoomConnection
- respondIntraRoomConnection
- disconnectUser
- terminateIntraRoomConnection
- requestCrossRoomConnection
- cancelCrossRoomConnection
- respondToCrossRoomConnection
- terminateCrossRoomConnection
- registerConnectionObserver
- unregisterConnectionObserver
- setLayoutMode
- setVideoViewAdapter