Skip to content

Commit ddf015f

Browse files
authored
Update video-constraints-javascript.md
1 parent d4e36b9 commit ddf015f

File tree

1 file changed

+16
-2
lines changed

1 file changed

+16
-2
lines changed

articles/communication-services/quickstarts/voice-video-calling/includes/video-constraints/video-constraints-javascript.md

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ titleSuffix: An Azure Communication Services document
55
description: In this quickstart, you learn how to set video constraints in your existing web calling app using Azure Communication Services.
66
author: sloanster
77
services: azure-communication-services
8-
ms.date: 03/29/2024
8+
ms.date: 02/10/2025
99
ms.topic: include
1010
ms.service: azure-communication-services
1111
ms.subservice: calling
@@ -148,8 +148,22 @@ await currentCall.setConstraints({
148148
<br/>
149149

150150
## Receive video constraints
151-
To control resolution on the receiver side using Azure Communication Services Web Calling SDK, you can adjust size of the renderer of that video. The calling SDK automatically adjusts received resolution based on the dimensions of the renderer. The SDK won't request an incoming video stream (width and height) that can fit into the renderer video window.
151+
Managing video quality effectively involves understanding the Azure Communication Services resolution ladder, which is a predefined list of video resolutions with estimated upper and lower bitrate boundaries. When a client requests a specific resolution, the server consults this resolution ladder to allocate the appropriate video bitrate, considering both network conditions and device capabilities.
152152

153+
Defining the video render size is a crucial step for developers aiming to control the bit rate and frame rate of an incoming video stream. The initial quality and resolution of a video stream are determined by the size of the renderer created and placed on a web page. For instance, if the renderer is small, the WebJS SDK will request a smaller resolution. Conversely, if the renderer is large, the ACS SDK will aim for the best possible resolution from the server. This process ensures that the video quality is optimized based on the client's requirements and capabilities. When a client requests a specific resolution, the server consults the resolution ladder to allocate the appropriate video bitrate, considering both network conditions and device capabilities.
154+
155+
This table provides what the WebJS calling SDK resolution ladder consist of with the estimated incoming video bitrates for various resolutions. These details help developers understand the relationship between resolution, bit rate, and frame rate and the approximate amount of bandwidth a specific incoming video stream will consume. For example, a resolution of 1920x1080 at 30 FPS the client will consume an approximate minimum bitrate of 1.75 MBPS and an approximate maximum bitrate of 10 MBPS. By defining the video render size, developers can control these parameters to ensure the video stream is delivered efficiently, considering both network conditions and device capabilities. This approach allows for a more tailored and optimized video streaming experience.
156+
157+
The table below provides some estimated bitrates for each resolution
158+
159+
| Height | Width | FPS | Min Bitrate MBPS | Max Bitrate MBPS |
160+
|--------|-------|-----|------------------|------------------|
161+
| 1080 | 1920 | 30 | 1.75 | 10 |
162+
| 720 | 1280 | 30 | 1 | 2.5 |
163+
| 540 | 960 | 30 | .5 | 1.125 |
164+
| 360 | 640 | 30 | .4 | .57 |
165+
| 240 | 426 | 15 | .125 | .5 |
166+
| 240 | 320 | 15 | .2 | .175 |
153167

154168

155169
## Using Media statics to understand video constraints impact

0 commit comments

Comments
 (0)