Skip to content

Commit 2f79ce7

Browse files
committed
fix(screenshare): remove adaptive streaming
It never helped reducing resolution for tile changes or for bandwidth issues. FPS reduction will be handled by the browser.
1 parent 878e61c commit 2f79ce7

3 files changed

Lines changed: 10 additions & 8 deletions

File tree

frontend/src/composables/useMeetingLogic.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -897,7 +897,7 @@ export function useMeetingLogic(meetingState, meetingId, options = {}) {
897897
video: {
898898
width: { ideal: 1920, max: 1920 },
899899
height: { ideal: 1080, max: 1080 },
900-
frameRate: { ideal: 10, max: 30 },
900+
frameRate: { ideal: 10, max: 20 },
901901
},
902902
},
903903
);

frontend/src/utils/media/TransportManager.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,11 @@ export class TransportManager {
172172
getVideoEncodingConfig(source: "camera" | "screen" = "camera") {
173173
const decision = this.getVideoEncodingDecision();
174174
const isScreen = source === "screen";
175-
const strategy = isScreen ? "simulcast" : decision.strategy;
175+
176+
// no adaptive streaming for screensharing
177+
// as we don't reduce resolution for screenshare
178+
// and fps is handled by the hint in the browser in case of congestion control
179+
const strategy = isScreen ? "single" : decision.strategy;
176180
const scalabilityMode =
177181
strategy === "svc" ? decision.scalabilityMode : null;
178182

frontend/src/utils/media/encodings.js

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,10 @@ export const svcEncodingTemplate = (scalabilityMode = "L3T1") => [
1919
},
2020
];
2121

22-
// layer 0: medium quality (800 kbps)
23-
// layer 1: high quality (1.5 Mbps
24-
export const screenEncodings = [
25-
{ maxBitrate: 800000 },
26-
{ maxBitrate: 1500000 },
27-
];
22+
// no adaptive streaming for screensharing
23+
// as we don't reduce resolution for screenshare
24+
// and fps is handled by the hint in the browser in case of congestion control
25+
export const screenEncodings = [{ maxBitrate: 2000000 }];
2826

2927
export const videoCodecOptions = {
3028
videoGoogleStartBitrate: 2000,

0 commit comments

Comments
 (0)