Package-level declarations
Types
Link copied to clipboard
Represents audio room render styles.
Link copied to clipboard
data class RegularAudioRendererStyle(val isShowingSpeakingBorder: Boolean = true, val speakingBorder: BorderStroke = BorderStroke(
2.dp,
Color(0xFF005FFF),
), val isShowingMicrophoneAvailability: Boolean = true, val microphoneLabelPosition: Alignment = Alignment.BottomEnd, val isShowingRoleBadge: Boolean = true) : AudioRendererStyle
Represents a regular audio room render styles.
Functions
Link copied to clipboard
Represents the default AppBar that's shown in the audio room.
Link copied to clipboard
Represents the set of controls the user can use to change their audio and video device state, or browse other types of settings, leave the call, or implement something custom.
Link copied to clipboard
fun AudioParticipantsGrid(modifier: Modifier = Modifier, participants: List<ParticipantState>, style: AudioRendererStyle = RegularAudioRendererStyle(), audioRenderer: @Composable (participant: ParticipantState, style: AudioRendererStyle) -> Unit = { audioParticipant, audioStyle ->
ParticipantAudio(
participant = audioParticipant,
style = audioStyle,
)
})
Renders all the participants to construct a audio room, based on the number of people in a call and the call state.
Link copied to clipboard
fun AudioRoomContent(modifier: Modifier = Modifier, call: Call, isShowingAppBar: Boolean = true, permissions: VideoPermissionsState = rememberMicrophonePermissionState(call = call), title: String = stringResource(
id = io.getstream.video.android.ui.common.R.string.stream_video_audio_room_title,
), appBarContent: @Composable (call: Call) -> Unit = {
AudioAppBar(
modifier = Modifier.fillMaxWidth(),
title = title,
)
}, style: AudioRendererStyle = RegularAudioRendererStyle(), audioRenderer: @Composable (participant: ParticipantState, style: AudioRendererStyle) -> Unit = { audioParticipant, audioStyle ->
ParticipantAudio(
participant = audioParticipant,
style = audioStyle,
)
}, audioContent: @Composable BoxScope.(call: Call) -> Unit = {
val participants by call.state.participants.collectAsStateWithLifecycle()
AudioParticipantsGrid(
modifier = Modifier
.testTag("audio_content")
.fillMaxSize(),
participants = participants,
style = style,
audioRenderer = audioRenderer,
)
}, onLeaveRoom: () -> Unit? = null, onBackPressed: () -> Unit = {}, enableInPictureInPicture: Boolean = true, pictureInPictureContent: @Composable (call: Call, orientation: Int) -> Unit = { call, _ -> DefaultPictureInPictureContent(call, audioContent) }, controlsContent: @Composable (call: Call) -> Unit = {
AudioControlActions(
modifier = Modifier
.testTag("audio_controls_content")
.fillMaxWidth(),
call = call,
onLeaveRoom = onLeaveRoom,
)
})
Represents audio room content based on the call state provided from the call.
Link copied to clipboard
fun ParticipantAudio(participant: ParticipantState, modifier: Modifier = Modifier, style: AudioRendererStyle = RegularAudioRendererStyle(), microphoneIndicatorContent: @Composable BoxScope.(ParticipantState) -> Unit = {
DefaultMicrophoneIndicator(style.microphoneLabelPosition)
}, roleBadgeContent: @Composable RowScope.(ParticipantState) -> Unit = {})
Renders a single participant with a given call, which displays an avatar of the participant. Also displays participant information with a label and connection quality indicator.
Inherited functions
Link copied to clipboard
fun AudioRendererStyle.copy(isShowingSpeakingBorder: Boolean = this.isShowingSpeakingBorder, speakingBorder: BorderStroke = this.speakingBorder, isShowingMicrophoneAvailability: Boolean = this.isShowingMicrophoneAvailability, microphoneLabelPosition: Alignment = this.microphoneLabelPosition, isShowingRoleBadge: Boolean = this.isShowingRoleBadge): AudioRendererStyle
Represents audio room render styles.