Interface StageRenderer


  • @RequiresApi(api=28)
    public interface StageRenderer
    An interface to implement that can be used to build user interfaces. Implementing a StageRenderer provides all the necessary information about a Stage to create a complete UI.
    • Method Detail

      • onError

        void onError​(@NonNull
                     BroadcastException exception)
        Triggers whenever an error occurs
        Parameters:
        exception - The error that occured
      • onConnectionStateChanged

        void onConnectionStateChanged​(@NonNull
                                      Stage stage,
                                      @NonNull
                                      Stage.ConnectionState state,
                                      @Nullable
                                      BroadcastException exception)
        The connection state of the associated Stage has changed.
        Parameters:
        stage - The Stage that had the connection state change.
        state - The new connection state of the Stage.
        exception - An error, if the state change was caused by an error.
      • onParticipantJoined

        void onParticipantJoined​(@NonNull
                                 Stage stage,
                                 @NonNull
                                 ParticipantInfo participantInfo)
        A new participant has joined the Stage and started publishing.
        Parameters:
        stage - The Stage that the participant joined and started publishing.
        participantInfo - A description of the participant that joined and started publishing.
      • onParticipantLeft

        void onParticipantLeft​(@NonNull
                               Stage stage,
                               @NonNull
                               ParticipantInfo participantInfo)
        A new participant has left the Stage or stopped publishing.
        Parameters:
        stage - The Stage that the participant left or stopped publishing.
        participantInfo - A description of the participant that left or stopped publishing.
      • onParticipantPublishStateChanged

        void onParticipantPublishStateChanged​(@NonNull
                                              Stage stage,
                                              @NonNull
                                              ParticipantInfo participantInfo,
                                              @NonNull
                                              Stage.PublishState publishState)
        The publish state of a participant has changed.
        Parameters:
        stage - The Stage associated with the participant that changed their publish state.
        participantInfo - The participant that changed their publish state.
        publishState - The new publish state.
      • onParticipantSubscribeStateChanged

        void onParticipantSubscribeStateChanged​(@NonNull
                                                Stage stage,
                                                @NonNull
                                                ParticipantInfo participantInfo,
                                                @NonNull
                                                Stage.SubscribeState subscribeState)
        The subscribe state of a participant has changed.
        Parameters:
        stage - The Stage associated with the participant that changed their subscribe state.
        participantInfo - The participant that changed their subscribe state.
        subscribeState - The new subscribe state.
      • onStreamsAdded

        void onStreamsAdded​(@NonNull
                            Stage stage,
                            @NonNull
                            ParticipantInfo participantInfo,
                            @NonNull
                            java.util.List<StageStream> streams)
        Triggers whenever a remote audio/video stream is added. This is the result of subscription state change
        Parameters:
        stage - The Stage associated with the added streams
        participantInfo - The ParticipantInfo associated with the added streams.
        streams - A list of added streams
      • onStreamsRemoved

        void onStreamsRemoved​(@NonNull
                              Stage stage,
                              @NonNull
                              ParticipantInfo participantInfo,
                              @NonNull
                              java.util.List<StageStream> streams)
        Triggers whenever a remote audio/video stream is removed. This could be caused by either remote participant is no longer publishing or network issue
        Parameters:
        stage - The Stage associated with the removed streams
        participantInfo - The ParticipantInfo associated with the removed streams.
        streams - A list of removed streams
      • onStreamsMutedChanged

        void onStreamsMutedChanged​(@NonNull
                                   Stage stage,
                                   @NonNull
                                   ParticipantInfo participantInfo,
                                   @NonNull
                                   java.util.List<StageStream> streams)
        Triggers whenever a stream is muted, the stream could either be LocalStageStream or StageStream
        Parameters:
        stage - The Stage associated with the updated streams
        participantInfo - The ParticipantInfo associated with the updated streams.
        streams - A list of streams that have had their mute state changed