tencent cloud

Feedback

LiveCoreView

Last updated: 2024-12-13 17:54:11

    API Overview

    LiveCoreView is a fundamental control developed for our video live streaming UIKit. This core control provides rich APIs such as preview before broadcasting, start video live streaming, stop video live streaming, live streaming room connection with audience, and cross-room connection with other anchors.

    API Overview

    API
    Description
    Create LiveCoreView object, supporting both code creation and XML loading methods.
    Start camera capture and display the captured video on LiveCoreView.
    Turn on the local microphone
    Pause publishing local audio stream?
    Turns the local camera off
    Turn off the local microphone
    Anchor creates a live streaming room and starts streaming
    Anchor stops streaming and destroys the live room
    Audience member joins an anchor's live streaming room
    Audience member leaves an anchor's live streaming room
    Audience member requests to connect with the anchor
    Audience member cancels the request to connect with the anchor
    Anchor responds to the audience member's request for connection
    Anchor disconnects the connected audience member
    Audience member stops the connection with the anchor themselves
    Anchor requests to connect with another anchor in a different live room
    Anchor cancels the request to connect with another anchor in a different live room
    Anchor responds to the connection request
    Anchor disconnects the connection
    Register a connection event callback
    Unregister a connection event callback
    Set the layout mode of the connected broadcaster's video screen
    Set a view adapter for adding widgets to the broadcaster's video screen

    API Details

    LiveCoreView

    Create an instance of the LiveCoreView object. Supports both code creation and XML loading methods.
    public LiveCoreView(Context context)
    Parameters:
    Parameters
    Type
    Meaning
    context
    Context
    Android context object
    Return value: LiveCoreView

    startCamera

    Start camera capture and display the captured video on the LiveCoreView view.
    public void startCamera(boolean useFrontCamera, ActionCallback callback)
    Parameters:
    Parameters
    Type
    Meaning
    useFrontCamera
    boolean
    true: use front camera, false: use rear camera
    callback
    ActionCallback
    Callback of the operation
    Returned value: void

    startMicrophone

    Enable the local microphone.
    void startMicrophone(ActionCallback callback)
    Parameters:
    Parameter
    Type
    Meaning
    callback
    ActionCallback
    Callback of the operation
    Returned value: void

    muteMicrophone

    Pause publishing the local audio stream.
    void muteMicrophone(boolean mute)
    Parameters:
    Parameter
    Type
    Meaning
    mute
    boolean
    true: Pause video stream publishing, false: Normal video stream publishing
    Returned value:void

    stopCamera

    Turns the local camera off.
    void stopCamera()
    Parameters:
    Returned value: void

    stopMicrophone

    Turn off the local microphone.
    void stopMicrophone()
    Parameters:
    Returned value: void

    startLiveStream

    Anchor creates a live streaming room and starts streaming.
    void startLiveStream(RoomInfo roomInfo, GetRoomInfoCallback callback)
    Parameters:
    Parameter
    Type
    Meaning
    roomInfo
    RoomInfo
    Create live room information
    callback
    ActionCallback
    Callback of the operation
    Returned value: void

    stopLiveStream

    Anchor stops streaming and destroys the live room.
    void stopLiveStream(ActionCallback callback)
    Parameters:
    Parameter
    Type
    Meaning
    callback
    ActionCallback
    Callback of the operation
    Returned value: void

    joinLiveStream

    Audience member joins an anchor's live streaming room.
    void joinLiveStream(String roomId, GetRoomInfoCallback callback)
    Parameters:
    Parameter
    Type
    Meaning
    roomId
    String
    Live room ID
    callback
    ActionCallback
    Callback of the operation
    Returned value: void

    leaveLiveStream

    Audience member leaves an anchor's live streaming room.
    void leaveLiveStream(ActionCallback callback)
    Parameters:
    Parameter
    Type
    Meaning
    callback
    ActionCallback
    Callback of the operation
    Returned value: void

    requestIntraRoomConnection

    Audience member requests to connect with the anchor.
    void requestIntraRoomConnection(String userId, int timeout, boolean openCamera, ActionCallback callback)
    Parameters:
    Parameter
    Type
    Meaning
    userId
    String
    User ID. If left blank, it represents the anchor's user ID.
    timeout
    int
    Request timeout duration, unit: seconds.
    openCamera
    boolean
    Whether to turn on the camera after a successful mic connection. true: video mic connect, false: voice mic connect.
    callback
    ActionCallback
    Callback of operations.
    Returned value: void

    cancelIntraRoomConnection

    Audience member cancels the request to connect with the anchor.
    void cancelIntraRoomConnection(String userId, ActionCallback callback)
    Parameters:
    Parameter
    Type
    Meaning
    userId
    String
    User ID of the user who cancels the mic connection. If left blank, it represents the anchor's user ID.
    callback
    ActionCallback
    Callback of the operation
    Returned value: void

    respondIntraRoomConnection

    The anchor responds to the audience's request for connection.
    void respondIntraRoomConnection(String userId, boolean isAccepted, ActionCallback callback)
    Parameters:
    Parameter
    Type
    Meaning
    userId
    String
    Responding user's User ID
    isAccepted
    isAccepted
    Whether to accept the mic connection request. true: accept the mic connection request, false: reject the mic connection request
    callback
    ActionCallback
    Callback of the operation
    Returned value: void

    disconnectUser

    The anchor disconnects the connected audience member.
    void disconnectUser(String userId, ActionCallback callback)
    Parameters:
    Parameter
    Type
    Meaning
    userId
    String
    The anchor needs to disconnect the co-anchoring user's ID
    callback
    ActionCallback
    Callback of the operation
    Returned value: void

    terminateIntraRoomConnection

    The audience member stops the connection with the anchor themselves.
    void terminateIntraRoomConnection()
    Parameters: None
    Returned value: void

    requestCrossRoomConnection

    Anchor requests to connect with another anchor in a different live room.
    void requestCrossRoomConnection(String roomId, int timeout, ActionCallback callback)
    Parameters:
    Parameter
    Type
    Meaning
    roomId
    String
    Room ID of the cross-room connection request.
    timeout
    int
    Request timeout duration, unit: seconds.
    callback
    ActionCallback
    Callback of operations.
    Returned value: void

    cancelCrossRoomConnection

    Anchor cancels the request to connect with another anchor in a different live room.
    void cancelCrossRoomConnection(String roomId, ActionCallback callback)
    Parameters:
    Parameter
    Type
    Meaning
    roomId
    String
    Room ID to cancel the connection
    callback
    ActionCallback
    Callback of the operation
    Returned value: void

    respondToCrossRoomConnection

    The anchor responds to the connection request.
    void respondToCrossRoomConnection(String roomId, boolean isAccepted, ActionCallback callback)
    Parameters:
    Parameter
    Type
    Meaning
    roomId
    String
    Room ID for the response to the connection
    isAccepted
    boolean
    Whether to agree to the connection, true: agree to the connection, false: reject the connection
    callback
    ActionCallback
    Callback of the operation
    Returned value: void

    terminateCrossRoomConnection

    The anchor disconnects the connection.
    void terminateCrossRoomConnection()
    Parameters: None
    Returned value: void

    registerConnectionObserver

    Register a connection event callback.
    void registerConnectionObserver(ConnectionObserver observer)
    Parameters:
    Parameter
    Type
    Meaning
    observer
    Callback object for connection events
    Returned value: void

    unregisterConnectionObserver

    Unregister a connection event callback.
    void unregisterConnectionObserver(ConnectionObserver observer)
    Parameters:
    Parameter
    Type
    Meaning
    observer
    Callback object for connection events
    Returned value: void

    setLayoutMode

    Set the layout mode of the connected broadcaster's video screen.
    void setLayoutMode(LayoutMode layoutModel, String layoutJson)
    Parameters:
    Parameter
    Type
    Meaning
    layoutModel
    Layout mode during connection, supporting grid layout, floating window layout, and custom layout.
    layoutJson
    String
    Layout JSON string
    Returned value: void

    setVideoViewAdapter

    Set a view adapter for adding widgets to the broadcaster's video screen.
    void setVideoViewAdapter(LiveCoreViewDefine.VideoViewAdapter viewAdapter)
    Parameters:
    Parameter
    Type
    Meaning
    viewAdapter
    View adapter for adding widgets to the broadcaster's video screen
    Returned value: void
    

    Type Definition

    Type
    Description
    Set callback events for core control connections.
    Layout mode during connection, supporting grid layout, floating window layout, and custom layout.
    Connection view adapter interface, which allows you to add widgets to each audio and video stream view by implementing this interface.

    ConnectionObserver

    Type
    Description
    Callback for changes in the list of connected users.
    Callback for receiving a connection request.
    Callback for receiving a request to cancel the connection.
    Callback for connection request approval.
    Callback for connection request rejection.
    Callback for connection request timeout.
    Callback for the host disconnecting the mic connection with this viewer.
    Callback for the viewer actively disconnecting.
    Callback for changes in the cross-room connection room list.
    Callback for receiving a cross-room connection request.
    Callback for receiving a request to cancel the cross-room connection.
    Received callback for consent to cross-room connection
    Received callback for cross-room connection rejection
    Received callback for cross-room connection timeout.
    Received callback for cross-room disconnection.
    Received callback for room termination.

    LayoutMode

    Layout mode during connection
    Type
    Description
    GRID_LAYOUT
    Grid Layout.
    FLOAT_LAYOUT
    Floating Window Layout.
    FREE_LAYOUT
    Custom Layout.

    VideoViewAdapter

    Connection view adapter interface, which allows you to add widgets to each audio and video stream view by implementing this interface.
    API
    Description
    Callback when creating a connected audience view. The View created through this API will be displayed on the connected audience's view.
    Callback when updating the connected audience view.
    Callback when creating a connected host view, the View created through this API will be displayed on the connected host's view.
    Callback when updating the connected host view.

    Callback Event Details

    onConnectedUsersUpdated

    Callback for changes in the list of connected users.
    void onConnectedUsersUpdated(List<UserInfo> userList, List<UserInfo> joinList, List<UserInfo> leaveList);
    Parameters:
    Parameter
    Type
    Description
    userList
    List<UserInfo>
    List of connected users
    joinList
    List<UserInfo>
    Newly connected users
    leaveList
    List<UserInfo>
    Users who have left the connection
    Returned value: void

    onUserConnectionRequest

    Callback for receiving a connection request.
    void onUserConnectionRequest(UserInfo inviterUser);
    Parameters:
    Parameter
    Type
    Description
    inviterUser
    UserInfo
    Information of the user applying for connection
    Returned value: void

    onUserConnectionCancelled

    Callback for receiving a request to cancel the connection.
    void onUserConnectionCancelled(UserInfo inviterUser);
    Parameters:
    Parameter
    Type
    Description
    inviterUser
    UserInfo
    Information of the user canceling the connection
    Returned value: void

    onUserConnectionAccepted

    Callback for connection request approval.
    void onUserConnectionAccepted(UserInfo userInfo);
    Parameters:
    Parameter
    Type
    Description
    userInfo
    UserInfo
    Information of users who agreed to the mic connection
    Returned value: void

    onUserConnectionRejected

    Callback for connection request rejection.
    void onUserConnectionRejected(UserInfo userInfo);
    Parameters:
    Parameter
    Type
    Description
    userInfo
    UserInfo
    Information of users who rejected the mic connection
    Returned value: void

    onUserConnectionTimeout

    Callback for connection request timeout.
    void onUserConnectionTimeout(UserInfo userInfo);
    Parameters:
    Parameter
    Type
    Description
    userInfo
    UserInfo
    Information of users whose mic connection request timed out
    Returned value: void

    onUserConnectionTerminated

    Callback for the host disconnecting the mic connection with this viewer.
    vvoid onUserConnectionTerminated();
    Parameter: None
    Returned value: void

    onUserConnectionExited

    Callback for disconnecting a connected user.
    void onUserConnectionExited(UserInfo userInfo);
    Parameters:
    Parameter
    Type
    Description
    userInfo
    UserInfo
    User information
    Returned value: void

    onConnectedRoomsUpdated

    Callback for changes in the connected room list.
    void onConnectedRoomsUpdated(List<RoomInfo> roomList);
    Parameters:
    Parameter
    Type
    Description
    roomList
    List<RoomInfo>
    Room list
    Returned value: void

    onCrossRoomConnectionRequest

    Callback for receiving a cross-room connection request.
    void onCrossRoomConnectionRequest(RoomInfo roomInfo);
    Parameters:
    Parameter
    Type
    Description
    roomInfo
    RoomInfo
    Information of the live room applying for connection
    Returned value: void

    onCrossRoomConnectionCancelled

    Callback for receiving a request to cancel the cross-room connection.
    void onCrossRoomConnectionCancelled(RoomInfo roomInfo);
    Parameters:
    Parameter
    Type
    Description
    roomInfo
    RoomInfo
    Information of the live room cancelling the connection application
    Returned value: void

    onCrossRoomConnectionAccepted

    Callback for receiving the cross-room connection approval.
    void onCrossRoomConnectionAccepted(RoomInfo roomInfo);
    Parameters:
    Parameter
    Type
    Description
    roomInfo
    RoomInfo
    Information of the live room agreeing to the connection
    Returned value: void

    onCrossRoomConnectionRejected

    Callback for receiving the cross-room connection rejection.
    void onCrossRoomConnectionRejected(RoomInfo roomInfo);
    Parameters:
    Parameter
    Type
    Description
    roomInfo
    RoomInfo
    Information of the live room rejecting the connection
    Returned value: void

    onCrossRoomConnectionTimeout

    Received callback for room connection request timeout.
    void onCrossRoomConnectionTimeout(RoomInfo inviter, RoomInfo invitee);
    Parameters:
    Parameter
    Type
    Description
    inviter
    RoomInfo
    Information of the live room applying for connection
    invitee
    RoomInfo
    Information of the live room invited for connection
    Returned value: void

    onCrossRoomConnectionExited

    Callback for changes in the list of connected users.
    void onCrossRoomConnectionExited(RoomInfo roomInfo);
    Parameters:
    Parameter
    Type
    Description
    roomInfo
    RoomInfo
    Information of the live room exiting the connection
    Returned value: void

    onRoomDismissed

    Received callback for live room termination.
    void onRoomDismissed(String roomId);
    Parameters:
    Parameter
    Type
    Description
    roomId
    String
    Room ID
    Returned value: void

    createCoGuestView

    Create an overlay view for audience mic connection. This view will be added to the user's video stream.
    View createCoGuestView(TUIRoomDefine.UserInfo userInfo);
    Parameters:
    Parameter
    Type
    Description
    userInfo
    UserInfo
    Information of the user connected to the mic
    Returned value: View

    updateCoGuestView

    Callback for updating the overlay view. Generally, you don’t need to concern yourself with this callback; you can update your overlay view according to the state of your overlay data, unless your overlay depends on the change in userInfo.
    void updateCoGuestView(TUIRoomDefine.UserInfo userInfo, View coGuestView);
    Parameters:
    Parameter
    Type
    Description
    userInfo
    UserInfo
    Information of the user connected to the mic
    coGuestView
    View
    The widget view created by you through the createCoGuestView API
    Returned value: void

    createCoHostView

    Create the widget view for the connected host, which will be added to the video stream of the connected host.
    View createCoHostView(TUILiveConnectionManager.ConnectionUser connectionUser);
    Parameters:
    Parameter
    Type
    Description
    connectionUser
    ConnectionUser
    Information of the connected host
    Returned value: View

    updateCoHostView

    Callback for updating the widget view. Generally, you do not need to worry about this callback. You can update the widget view you set based on the status of your own widget data, unless your widget relies on changes in connectionUser.
    void updateCoHostView(TUILiveConnectionManager.ConnectionUser connectionUser, View coHostView);
    Parameters:
    Parameter
    Type
    Description
    connectionUser
    ConnectionUser
    Information of the connected host
    coHostView
    View
    The widget view created by you through the createCoHostView API
    Returned value: void
    
    Contact Us

    Contact our sales team or business advisors to help your business.

    Technical Support

    Open a ticket if you're looking for further assistance. Our Ticket is 7x24 avaliable.

    7x24 Phone Support