Package com.amazonaws.ivs.broadcast
Interface StageRenderer
-
@RequiresApi(api=28) public interface StageRenderer
An interface to implement that can be used to build user interfaces. Implementing aStageRenderer
provides all the necessary information about a Stage to create a complete UI.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
onConnectionStateChanged(Stage stage, Stage.ConnectionState state, BroadcastException exception)
The connection state of the associatedStage
has changed.void
onError(BroadcastException exception)
Triggers whenever an error occursvoid
onParticipantJoined(Stage stage, ParticipantInfo participantInfo)
A new participant has joined the Stage and started publishing.void
onParticipantLeft(Stage stage, ParticipantInfo participantInfo)
A new participant has left the Stage or stopped publishing.void
onParticipantPublishStateChanged(Stage stage, ParticipantInfo participantInfo, Stage.PublishState publishState)
The publish state of a participant has changed.void
onParticipantSubscribeStateChanged(Stage stage, ParticipantInfo participantInfo, Stage.SubscribeState subscribeState)
The subscribe state of a participant has changed.void
onStreamsAdded(Stage stage, ParticipantInfo participantInfo, java.util.List<StageStream> streams)
Triggers whenever a remote audio/video stream is added.void
onStreamsMutedChanged(Stage stage, ParticipantInfo participantInfo, java.util.List<StageStream> streams)
Triggers whenever a stream is muted, the stream could either beLocalStageStream
orStageStream
void
onStreamsRemoved(Stage stage, ParticipantInfo participantInfo, java.util.List<StageStream> streams)
Triggers whenever a remote audio/video stream is removed.
-
-
-
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 associatedStage
has changed.- Parameters:
stage
- TheStage
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
- TheStage
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
- TheStage
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
- TheStage
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
- TheStage
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
- TheStage
associated with the added streamsparticipantInfo
- TheParticipantInfo
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
- TheStage
associated with the removed streamsparticipantInfo
- TheParticipantInfo
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 beLocalStageStream
orStageStream
- Parameters:
stage
- TheStage
associated with the updated streamsparticipantInfo
- TheParticipantInfo
associated with the updated streams.streams
- A list of streams that have had their mute state changed
-
-