-
Notifications
You must be signed in to change notification settings - Fork 28
Multi Stream Video Pinning
With the pin stream feature, you can pin any participant in the meeting and that stream will not change when the stream user speaks and it will also not get replaced with the user in the queue when the queue user speaks.
NOTE: The below new APIs are available from SDK version 3.6.0 onwards.
- The pinning feature comes under Category-C APIs.
- The pin stream will not come to the active speaker stage.
In a meeting with more than two participants, if you want to see the active speaker along with other joined participants, you can use multi-stream to achieve it.
This is the continuation of New Multi Stream v3 wiki page.
If a pinned stream for the participant with participantId already exists, update the stream with the specified parameters. Otherwise, add a pinned stream for this participantId.
fun setMediaStreamCategoryC(participantId: String, quality: MediaStreamQuality)
enum MediaStreamQuality {
case Undefined
case LD // 180p
case SD // 360p
case HD // 720p
case FHD // 1080p
}
Remove the stream of pinned participant.
fun removeMediaStreamCategoryC(participantId: String)
Return True if the pinning is supported for the media streams.
var isMediaStreamsPinningSupported : Boolean
We support different event types - MediaStreamChangeEventType
. If any of the types changes concerning the stream, the event will get triggered.
enum MediaStreamChangeEventType {
case Size
case Membership
case Video
case Audio
case PinState
}
The client can register the info change listener to receive the event change.
/stream.setOnMediaStreamInfoChanged { type, info in
//type: MediaStreamChangeEventType
//info: MediaStreamChangeEventInfo
}