-
public interface VideoComponentFactoryA factory for creating the components used by the Video Compose SDK.
Each method has a default implementation that renders the built-in component, so you only need to override the components you want to customize. The factory is provided through VideoTheme, and the built-in components read it via VideoTheme.componentFactory.
VideoTheme( componentFactory = object : VideoComponentFactory { @Composable override fun RowScope.CallAppBarTrailingContent( params: CallAppBarTrailingContentParams, ) { // Custom trailing content } }, ) { CallContent(call = call) }Use CompoundComponentFactory to layer overrides on top of the current factory for a subtree.
-
-
Method Summary
Modifier and Type Method Description UnitCallAppBar(CallAppBarParams params)The app bar shown in calls. UnitCallAppBarLeadingContent(RowScope $self, CallAppBarLeadingContentParams params)The leading content of the call app bar. UnitCallAppBarCenterContent(RowScope $self, CallAppBarCenterContentParams params)The center content of the call app bar. UnitCallAppBarTrailingContent(RowScope $self, CallAppBarTrailingContentParams params)The trailing content of the call app bar. UnitCallContentVideoContent(RowScope $self, CallContentVideoContentParams params)The video content of the active call. UnitCallContentVideoOverlayContent(CallContentVideoOverlayContentParams params)Content drawn over the video content of the active call, excluding the controls. UnitCallContentPictureInPictureContent(CallContentPictureInPictureContentParams params)Content shown when the user enters Picture in Picture mode. UnitCallContentClosedCaptions(CallContentClosedCaptionsParams params)Content that renders closed captions in the active call. UnitCallContentVideoModerationBlur(CallContentVideoModerationBlurParams params)Content rendered on top of the video when it is blurred by moderation. UnitCallContentVideoModerationWarning(CallContentVideoModerationWarningParams params)Content that renders the video moderation warning. UnitControlActions(ControlActionsParams params)The set of controls the user can use to change their audio and video device state, browse other types of settings, or leave the call. UnitParticipantVideo(ParticipantVideoParams params)A single participant video with a label, connection indicator, reactions and actions. UnitParticipantVideoLabelContent(BoxScope $self, ParticipantVideoLabelContentParams params)The label of a participant video, showing the participant's name and device states. UnitParticipantLabelSoundIndicatorContent(RowScope $self, ParticipantLabelSoundIndicatorContentParams params)The sound indicator shown inside a participant label, showing the microphone state and audio level. UnitParticipantVideoConnectionIndicatorContent(BoxScope $self, ParticipantVideoConnectionIndicatorContentParams params)The indicator that shows the connection quality of a participant. UnitParticipantVideoFallbackContent(ParticipantVideoFallbackContentParams params)Content shown when the participant video track fails to load or is not available. UnitParticipantVideoReactionContent(BoxScope $self, ParticipantVideoReactionContentParams params)Content shown for a participant's reaction. UnitParticipantVideoActionsContent(BoxScope $self, ParticipantVideoActionsContentParams params)The action picker with call actions related to the selected participant. UnitScreenSharingFallbackContent(ScreenSharingFallbackContentParams params)Content shown in place of the shared screen while the screen sharing session is loading or not available. UnitCallLobbyOnRenderedContent(CallLobbyOnRenderedContentParams params)The video preview of the call lobby, rendering the local video track before joining a call. UnitCallLobbyOnDisabledContent(CallLobbyOnDisabledContentParams params)Content shown in the call lobby when the local camera is disabled. UnitCallLobbyParticipantLabelContent(BoxScope $self, CallLobbyParticipantLabelContentParams params)The participant label overlaid on the call lobby preview, showing the user's name and microphone state. UnitCallLobbyControlsContent(CallLobbyControlsContentParams params)The set of controls the user can use in the call lobby to change their audio and video device state before joining a call. UnitIncomingCallContent(IncomingCallContentParams params)The incoming call screen, shown when the user receives a call from other people. UnitIncomingCallHeaderContent(ColumnScope $self, IncomingCallHeaderContentParams params)The header of the incoming call screen. UnitIncomingCallDetailsContent(ColumnScope $self, IncomingCallDetailsContentParams params)The details of the incoming call screen, such as call participant information. UnitIncomingCallControlsContent(BoxScope $self, IncomingCallControlsContentParams params)The controls of the incoming call screen, such as accepting or declining the call. UnitOutgoingCallContent(OutgoingCallContentParams params)The outgoing call screen, shown when the user is calling other people. UnitOutgoingCallHeaderContent(ColumnScope $self, OutgoingCallHeaderContentParams params)The header of the outgoing call screen. UnitOutgoingCallDetailsContent(ColumnScope $self, OutgoingCallDetailsContentParams params)The details of the outgoing call screen, such as call participant information. UnitOutgoingCallControlsContent(BoxScope $self, OutgoingCallControlsContentParams params)The controls of the outgoing call screen, such as cancelling the call. UnitAudioOnlyCallHeaderContent(ColumnScope $self, AudioOnlyCallHeaderContentParams params)The header of the audio-only call screen. UnitAudioOnlyCallDetailsContent(ColumnScope $self, AudioOnlyCallDetailsContentParams params)The details of the audio-only call screen, such as the participant avatars and the call duration. UnitAudioOnlyCallControlsContent(BoxScope $self, AudioOnlyCallControlsContentParams params)The controls of the audio-only call screen, such as toggling the microphone or leaving the call. -
-
Method Detail
-
CallAppBar
@Composable() Unit CallAppBar(CallAppBarParams params)
The app bar shown in calls. The default implementation renders io.getstream.video.android.compose.ui.components.call.CallAppBar.
- Parameters:
params- Parameters for this component.
-
CallAppBarLeadingContent
@Composable() Unit CallAppBarLeadingContent(RowScope $self, CallAppBarLeadingContentParams params)
The leading content of the call app bar. Usually the back button.
- Parameters:
params- Parameters for this component.
-
CallAppBarCenterContent
@Composable() Unit CallAppBarCenterContent(RowScope $self, CallAppBarCenterContentParams params)
The center content of the call app bar. Usually the call duration or title, with the recording and reconnecting states.
- Parameters:
params- Parameters for this component.
-
CallAppBarTrailingContent
@Composable() Unit CallAppBarTrailingContent(RowScope $self, CallAppBarTrailingContentParams params)
The trailing content of the call app bar. Usually the leave call button.
- Parameters:
params- Parameters for this component.
-
CallContentVideoContent
@Composable() Unit CallContentVideoContent(RowScope $self, CallContentVideoContentParams params)
The video content of the active call. The default implementation renders ParticipantsLayout with all the participants' videos.
- Parameters:
params- Parameters for this component.
-
CallContentVideoOverlayContent
@Composable() Unit CallContentVideoOverlayContent(CallContentVideoOverlayContentParams params)
Content drawn over the video content of the active call, excluding the controls. Empty by default.
- Parameters:
params- Parameters for this component.
-
CallContentPictureInPictureContent
@Composable() Unit CallContentPictureInPictureContent(CallContentPictureInPictureContentParams params)
Content shown when the user enters Picture in Picture mode.
- Parameters:
params- Parameters for this component.
-
CallContentClosedCaptions
@Composable() Unit CallContentClosedCaptions(CallContentClosedCaptionsParams params)
Content that renders closed captions in the active call. Empty by default.
- Parameters:
params- Parameters for this component.
-
CallContentVideoModerationBlur
@Composable() Unit CallContentVideoModerationBlur(CallContentVideoModerationBlurParams params)
Content rendered on top of the video when it is blurred by moderation. Empty by default.
- Parameters:
params- Parameters for this component.
-
CallContentVideoModerationWarning
@Composable() Unit CallContentVideoModerationWarning(CallContentVideoModerationWarningParams params)
Content that renders the video moderation warning.
- Parameters:
params- Parameters for this component.
-
ControlActions
@Composable() Unit ControlActions(ControlActionsParams params)
The set of controls the user can use to change their audio and video device state, browse other types of settings, or leave the call. The default implementation renders io.getstream.video.android.compose.ui.components.call.controls.ControlActions.
- Parameters:
params- Parameters for this component.
-
ParticipantVideo
@Composable() Unit ParticipantVideo(ParticipantVideoParams params)
A single participant video with a label, connection indicator, reactions and actions. The default implementation renders io.getstream.video.android.compose.ui.components.call.renderer.ParticipantVideo.
- Parameters:
params- Parameters for this component.
-
ParticipantVideoLabelContent
@Composable() Unit ParticipantVideoLabelContent(BoxScope $self, ParticipantVideoLabelContentParams params)
The label of a participant video, showing the participant's name and device states.
- Parameters:
params- Parameters for this component.
-
ParticipantLabelSoundIndicatorContent
@Composable() Unit ParticipantLabelSoundIndicatorContent(RowScope $self, ParticipantLabelSoundIndicatorContentParams params)
The sound indicator shown inside a participant label, showing the microphone state and audio level. The container applies the position and padding through ParticipantLabelSoundIndicatorContentParams.modifier.
- Parameters:
params- Parameters for this component.
-
ParticipantVideoConnectionIndicatorContent
@Composable() Unit ParticipantVideoConnectionIndicatorContent(BoxScope $self, ParticipantVideoConnectionIndicatorContentParams params)
The indicator that shows the connection quality of a participant.
- Parameters:
params- Parameters for this component.
-
ParticipantVideoFallbackContent
@Composable() Unit ParticipantVideoFallbackContent(ParticipantVideoFallbackContentParams params)
Content shown when the participant video track fails to load or is not available. The default implementation renders the participant's avatar.
- Parameters:
params- Parameters for this component.
-
ParticipantVideoReactionContent
@Composable() Unit ParticipantVideoReactionContent(BoxScope $self, ParticipantVideoReactionContentParams params)
Content shown for a participant's reaction.
- Parameters:
params- Parameters for this component.
-
ParticipantVideoActionsContent
@Composable() Unit ParticipantVideoActionsContent(BoxScope $self, ParticipantVideoActionsContentParams params)
The action picker with call actions related to the selected participant.
- Parameters:
params- Parameters for this component.
-
ScreenSharingFallbackContent
@Composable() Unit ScreenSharingFallbackContent(ScreenSharingFallbackContentParams params)
Content shown in place of the shared screen while the screen sharing session is loading or not available. The default implementation renders the sharing participant's avatar.
- Parameters:
params- Parameters for this component.
-
CallLobbyOnRenderedContent
@Composable() Unit CallLobbyOnRenderedContent(CallLobbyOnRenderedContentParams params)
The video preview of the call lobby, rendering the local video track before joining a call.
- Parameters:
params- Parameters for this component.
-
CallLobbyOnDisabledContent
@Composable() Unit CallLobbyOnDisabledContent(CallLobbyOnDisabledContentParams params)
Content shown in the call lobby when the local camera is disabled. It displays the user avatar by default.
- Parameters:
params- Parameters for this component.
-
CallLobbyParticipantLabelContent
@Composable() Unit CallLobbyParticipantLabelContent(BoxScope $self, CallLobbyParticipantLabelContentParams params)
The participant label overlaid on the call lobby preview, showing the user's name and microphone state.
- Parameters:
params- Parameters for this component.
-
CallLobbyControlsContent
@Composable() Unit CallLobbyControlsContent(CallLobbyControlsContentParams params)
The set of controls the user can use in the call lobby to change their audio and video device state before joining a call. Intentionally independent from ControlActions, so overriding the in-call controls does not affect the lobby.
- Parameters:
params- Parameters for this component.
-
IncomingCallContent
@Composable() Unit IncomingCallContent(IncomingCallContentParams params)
The incoming call screen, shown when the user receives a call from other people. The default implementation renders io.getstream.video.android.compose.ui.components.call.ringing.incomingcall.IncomingCallContent.
- Parameters:
params- Parameters for this component.
-
IncomingCallHeaderContent
@Composable() Unit IncomingCallHeaderContent(ColumnScope $self, IncomingCallHeaderContentParams params)
The header of the incoming call screen. Empty by default.
- Parameters:
params- Parameters for this component.
-
IncomingCallDetailsContent
@Composable() Unit IncomingCallDetailsContent(ColumnScope $self, IncomingCallDetailsContentParams params)
The details of the incoming call screen, such as call participant information.
- Parameters:
params- Parameters for this component.
-
IncomingCallControlsContent
@Composable() Unit IncomingCallControlsContent(BoxScope $self, IncomingCallControlsContentParams params)
The controls of the incoming call screen, such as accepting or declining the call.
- Parameters:
params- Parameters for this component.
-
OutgoingCallContent
@Composable() Unit OutgoingCallContent(OutgoingCallContentParams params)
The outgoing call screen, shown when the user is calling other people. The default implementation renders io.getstream.video.android.compose.ui.components.call.ringing.outgoingcall.OutgoingCallContent.
- Parameters:
params- Parameters for this component.
-
OutgoingCallHeaderContent
@Composable() Unit OutgoingCallHeaderContent(ColumnScope $self, OutgoingCallHeaderContentParams params)
The header of the outgoing call screen. Empty by default.
- Parameters:
params- Parameters for this component.
-
OutgoingCallDetailsContent
@Composable() Unit OutgoingCallDetailsContent(ColumnScope $self, OutgoingCallDetailsContentParams params)
The details of the outgoing call screen, such as call participant information.
- Parameters:
params- Parameters for this component.
-
OutgoingCallControlsContent
@Composable() Unit OutgoingCallControlsContent(BoxScope $self, OutgoingCallControlsContentParams params)
The controls of the outgoing call screen, such as cancelling the call.
- Parameters:
params- Parameters for this component.
-
AudioOnlyCallHeaderContent
@Composable() Unit AudioOnlyCallHeaderContent(ColumnScope $self, AudioOnlyCallHeaderContentParams params)
The header of the audio-only call screen. Empty by default.
- Parameters:
params- Parameters for this component.
-
AudioOnlyCallDetailsContent
@Composable() Unit AudioOnlyCallDetailsContent(ColumnScope $self, AudioOnlyCallDetailsContentParams params)
The details of the audio-only call screen, such as the participant avatars and the call duration.
- Parameters:
params- Parameters for this component.
-
AudioOnlyCallControlsContent
@Composable() Unit AudioOnlyCallControlsContent(BoxScope $self, AudioOnlyCallControlsContentParams params)
The controls of the audio-only call screen, such as toggling the microphone or leaving the call.
- Parameters:
params- Parameters for this component.
-
-
-
-