Automatically adjust the frame rate and the resolution of each user to the smallest bandwidth among all users

We tried Jitsi Meet with 7 persons. However, the bandwidth became the bottleneck for many of us. We are switching to Zoom.

Maybe Jisti Meet could start with parameters that could depend on the smallest bandwidth among the existing users. Then the frame rate and the resolution could be changed automatically. If needed, the stereo sound channels could be merged into a mono sound channel (even if the micro is stereo). When the smallest bandwidth among all users is enough, then all user instances would slowly increase their resolution and/or frame rate. When it is quiet full, then all user instances would quickly lower a few their resolution and/or frame rate.

1 Like

You can set up jitsi to use lower bandwith both on client side and server side

Jitsi does automatically basing on users network quality, on standard it make it every 10 seconds

You don’t imagine how much it would load up the server

Feasible, and it’s in server side’s settings

When nothing changes, nothing is streamed basing on the codec standard, si it’s yet like that :grin:

Hello Rubens

The problem is that my video output begins in HD even if the wifi connection isn’t good enough.
Each time, I have to manually downscale my resolution. It’s painfull.

It could be performed by the web application which has been downloaded on each client (not the server).

Is it enabled by default ?

I don’t understand. The problem is that the users which have a big bandwidth are overloading the users with a small bandwidth.

There’s a known bad implementation in Firefox, maybe you’re using it?

If you’re good enough you could create the implementation and then make a pull request

No, as far as I notice, but it’s possible on your own server in configurations

videostreams doesn’t work like that, it depends on the codec anyway

The issue is that if you encode a video with 1280×720 resolution, what ever the codec you use (with “Scalable Video Coding”, …). The user computer will encode 1280x720. If the network decreases the quality, we could say that the codec manages it globally by lowering the final video quality. The other user would see a video which looks like a 640x480 resolution.

I this case, why the user computer could not encode directly a 640x480 resolution. This would lower the energy consumption of its computer and it will lower the network load on the first network links.

It seems that the new VP9 requires more cpu power when encoding than VP8. Therefore, especially with the new codecs, lowering the resolution could lower the energy consumption of the users who show his/her webcam.

Because it’s born for quality, on your server you can choose that the optimal is lower

Obviously if you don’t have the HW encoder and decoder in your CPU. This depends only on user hardware.

The link below indicates that simulcast is bandwidth efficient only if there are more than 3 receivers per sender :

When the link isn’t full duplex (most wifi). The outputstreams which is made of all quality streams will waste the global bandwith of this link. Finally, the low quality simplex link will cause possible lost of input videos on this host.

@RubensRainelli, could you please tell where this is implemented in the code for Jitsi VideoBridge.

Sincerely I don’t remember, there’s something in the configurations about this anyway.