ResolveContentInput

data class ResolveContentInput(val local: ContentLocalParticipant?, val remotes: List<ContentRemoteParticipant>, val independentContentEnabled: Boolean, val localVideoMediaEnabled: Boolean, val remoteContentHasMedia: (String) -> Boolean = { true }, val localContentHasMedia: () -> Boolean = { true }, val remoteContentOrder: List<String> = emptyList())

Inputs to the content resolver for one render.

Parameters

local

local participant state, or null when not in a call.

remotes

remote participants in stable order.

independentContentEnabled

whether the local build negotiates an independent content track (SerenadaConfig.enableIndependentContentVideo). When false, no content track can exist, so every owner resolves LEGACY and the single camera video is presented as content (byte-identical to today).

localVideoMediaEnabled

whether the local user can receive any video media at all (videoMediaEnabled). When false the local user is an audio-only receiver that never negotiated content receive and MUST suppress ALL content UI even if room state says someone is sharing.

remoteContentHasMedia

predicate: has the SDK got a content track for this remote owner yet? Used only in INDEPENDENT mode for the loading hold. Defaults to "assume present once active" (matching legacy, where the single video track is the content) when a host cannot supply media liveness.

localContentHasMedia

whether the local independent content track is live. Used only in INDEPENDENT mode.

remoteContentOrder

order in which remote content became active, most recent LAST, as observed locally. Picks the default primary among multiple simultaneous remote sharers (design "Multiple Sharers", local receive order).

Constructors

Link copied to clipboard
constructor(local: ContentLocalParticipant?, remotes: List<ContentRemoteParticipant>, independentContentEnabled: Boolean, localVideoMediaEnabled: Boolean, remoteContentHasMedia: (String) -> Boolean = { true }, localContentHasMedia: () -> Boolean = { true }, remoteContentOrder: List<String> = emptyList())

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard