livekit
livekit copied to clipboard
Screen-share goes blank randomly and more often
Describe the bug When screen is shared, it goes blank very often. This started to happen in the latest build, earlier it was working just fine.
Server
- Version: [1.5.1]
- Environment: [EC2]
Client
- SDK: [js] "@livekit/components-core": "^0.7.0", "@livekit/components-react": "^1.0.8", "@livekit/components-styles": "^1.0.4",
To Reproduce Steps to reproduce the behavior:
- Upgrade the Livekit to the latest version ie. 1.5.1
- Let at least ~50 users join
- Share the screen
Expected behavior Screen share should be stable without fluctuation
Screenshots
here is the video:
https://github.com/livekit/livekit/assets/21043614/132ddbe5-f8b8-41fa-978e-814da72de8b3
Here are the server metrics:
Do you mean it started happening with 1.5.1? what codec are you publishing the screen share with?
how do you reproduce this issue?
we started to see it more often when updated to 1.5.1.
We noticed it happens for some users who are sharing screens.
To reproduce this issue, just share the screen. The system config of a participant who was sharing the screen and it was going blank was chrome on mac.
how is the track published? what codec is it using?
We have not made any changes in the process of track publishing. It is the default behavior of the livekit. Just like clicking on the share screen option.
Moreover, this is the settings we have been using from the last 6 months and they seem to work fine until the latest release
options={{
adaptiveStream: true,
dynacast: true,
audioCaptureDefaults: {
autoGainControl: true,
deviceId: "",
echoCancellation: true,
noiseSuppression: true,
},
videoCaptureDefaults: {
deviceId: "",
facingMode: "user",
resolution: {
width: isAdmin ? 1280 : 854,
height: isAdmin ? 720 : 480,
frameRate: isAdmin ? 30 : 20,
},
},
publishDefaults: {
simulcast: false,
videoEncoding: {
maxBitrate: isAdmin ? 1_500_000 : 100_000,
maxFramerate: isAdmin ? 30 : 20,
},
screenShareEncoding: {
maxBitrate: 800_000,
maxFramerate: 45,
},
audioBitrate: 20_000,
dtx: true,
},
}}
>