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

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

        default 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

        default 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

        default 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

        default 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

        default 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

        default 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

        default 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

        default 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