SS resolution is deteriorating when presenter enable local video

I do not make p2p or jvb connection, just join to a room and enable screen sharing. When I enable a local video resolution is deteriorating. I’ve tested the same steps on meet.jit.si and there are it works without deteriorating video quality. Could you hint me which config/interface/etc options can affect it?

Small video about this behavior https://youtu.be/NRsktJykf90
Config: https://pastebin.com/T5rNGBnW

Are you running latest versions from unstable. Not sure that we had a change around this, but anyway feels strange. @jallamsetty do you have an idea?

Yes, I’m using jitsi-meet-web_1.0.4101-1_all.deb from unstable.

I see that you have set desktop sharing frame rate min/max to 20/60. Also, looks like you are using simulcast for screenshare (capScreenshareBitrate = 0). It is possible that chrome’s quality scaler is cutting down the resolution in order to maintain framerate that you are requesting.
meet.jit.si has SS framerates set to 5/5 and capScreenshareBitrate is enabled.

@jallamsetty thanks for the answer.
I’ve changed properties:

  testing: {    
    capScreenshareBitrate: 1 // 1 - do not use simulcast for screenshare. 500 Kbis max.
  },
  desktopSharingFrameRate: {
    min: 5,
    max: 5
  },

but behavior the same.
Maybe can I provide some logs or what else for investigations this behavior?

Oh, I see that meet.jit.si has the same effect:

When you start the SS, the capture resolution is usually much higher, that of the screen that is captured at 5 fps. When the presenter is turned on, we resize it to 720p since capturing 30 fps from a high resolution video can be very cpu intensive. You would see the change in video quality since the video has been resized.

Forgot to add that it isn’t a bug, this is a cpu vs resolution trade-off that was deliberately made when presenter feature was developed.

Thanks for the explanation.
It’s really not expected behavior. As I understand, in this case SS and local video go in one video layer, if so, it would be nice to have possibility to adjust resolution and fps via config.js. If it’s not possible for now, hint me please where it’s hard-coded.
Thank you!

1 Like

Hi @jallamsetty,
I found the point where the issue started https://github.com/jitsi/jitsi-meet/commit/7b25b847ba1e0b198a0f63138c408342d00e6de7
It would be grate to have adjustable const DESKTOP_STREAM_CAP = 720; for cases when SS resolution need to be bigger then 720

1 Like

Yes, that was the exact change, it was a product design decision, I can check if we can make this adjustable. However, we may not be able to get to it immediately. Please feel free to adjust this in your deployment until then.

1 Like

Hi @jallamsetty does this require jitsi to be recompiled? I also can’t seem to be able to change the 720p limit when in presenter mode with no option in the config.js file. I’ve added in the capScreenShareBitrate: 0 but this does not change the result.

Is it possible to set/reduce presener video resolution while screen sharing is on

If you can adjust this value, how do you determine what is the value?
Users might have different resolutions on their computer.

I am having similar problems with screen sharing. I played with frame rate but it does not help a lot. Most likely, it is related to WiFi stability because SS using wired connection looks much better.

Do you have any other suggestions?