Video Stream
The videoStreams array will only be populated with streams of video from participants with video on. For the best meeting experience, it is important to consider both participants with video only and those with audio.
You may use the observable array of participants in the ParticipantsService to observe and calculate variables such as join time, mute states, and time spent as dominant speaker. Using these variables to inform the ordering of participants in the meeting.
A sample scenario - a remote learning use case
While the pre-built layout takes away all the resize complexity from the developer. Sometimes the scenarios require specific layout configurations. For example, you may have a virtual classroom where you would like the teachers’ video to take a bigger share of the view space compared to other student video tiles.
In such cases, the pre-built layout options may not be suitable for your application. In this case, you can choose to individual video tiles. The BlueJeans SDK will still take care of rendering the video, you can still choose which remote participant video to render, at what size, and where it will lie in your application UI (See. Remote Learning).
Ordering use case specific
Using a custom layout, you can make ordering the participants. For example, you may prefer to sort alphabetically in an education-focused setting. In a presentation, you may wish to highlight a specific speaker. This can be achieved by building on top of the information from both the VideoStreamService and theParticipantsService.
Primary Speaker
For some scenarios, such as team collaboration use cases, you might want to equally distribute the space for all video tiles. While in other scenarios, such as a primary speaker use case, you may want to optimize the space for one source. The framework allows you to create the right layout for your scenario (Ref. Video Stream Priority).
Note
BlueJeans SDK Framework allows you to build the right layout for your scenario.