Posted On: Apr 30, 2021

The Amazon Chime SDK for JavaScript now provides a way for builders to prioritize video streams according to their online meeting user case. If there is insufficient bandwidth to download all available video streams, the Amazon Chime SDK uses the video prioritization policy to maximize the fidelity and quality of high-priority video streams.

Using video prioritization policies with the Amazon Chime SDK, builders can deliver high quality instructor-led experiences by setting the instructor’s video as the highest priority for participants to view. Rather than downlink bandwidth being shared equally between the instructor’s and other participants' video, the instructor’s video takes precedence and is streamed with the highest available quality.

When joining a meeting, video streams are connected in priority order, until all streams are connected or downlink bandwidth is exhausted. If the client’s network becomes constrained or congested, video streams are paused in reverse priority order, releasing bandwidth for higher priority streams to continue in high quality. If a video stream is simulcast in high and low bitrate streams, the video will switch to the low bitrate stream first, only pausing the stream as a last resort.

For example, for participants, the first priority stream is the instructor’s video in 720p at 30fps using 1.4Mbps of bandwidth. So long as a participant can download at least 1.4Mbps, they will receive the instructor’s video at 720p at 30fps. Participant video is streamed in 360p at 30fps using 600kbps. Depending on each participants’ remaining available bandwidth, the participant may see all, some, or no other participant videos. Because the priority is per client, the instructor’s experience may prioritize participants video differently.

For more information about Amazon Chime video prioritization policies or the Amazon Chime SDK for Javascript, visit Amazon Chime SDK product page or our documentation.