Reducing resource usage to improve performance (both client-side and server-side)

Continuing the discussion from Maximum number of participants on a meeting on meet.jit.si server:

On the discussion above @xranby investigates how to reduce CPU usage.
(Also: Maximum number of participants on a meeting on meet.jit.si server)

Setting these values in /usr/share/jitsi-meet/interface_config.js should reduce resource usage and improve UX (courtesy of @xranby):

SET_FILMSTRIP_ENABLED: false
DISABLE_FOCUS_INDICATOR: true
DISABLE_DOMINANT_SPEAKER_INDICATOR: true
DISABLE_VIDEO_BACKGROUND: true

DISABLE_JOIN_LEAVE_NOTIFICATIONS: false also may be enabled to improve UX on meetings where many people participate.

What kind of other setting can be changed to reduce CPU usage on clients?

8 Likes

For a reference: how to improve performance on server-side

1 Like

/etc/jitsi/meet/*-config.js
disableAudioLevels: true,

3 Likes

I added the link to this post to the first post, thanks!

See this too: Maximum client limitted to 12

I understand it’s possible to set some values as URL parameters. Does this work for interface_config.js settings too?

You could easily create a “light GUI” link for users with slower machines and keep the full UI for power users.

Another idea might be to alias the URLs for the configs depending on the virtual host someone calls. So have “meet.example.com” and meet-light.example.com" deliver different configs, but still allow to join the same meetings.

4 Likes

BTW - what exactly does DISABLE_VIDEO_BACKGROUND disable? I am not sure if I am testing it wrong, but I don’t really see a difference. :slight_smile:

How should I say… it disables the blurred area surrounding the video.

2 Likes

I still don’t see a difference anywhere :slight_smile: Or there is a different blurred area in a specific view I am missing.

It’s not the “Blur my background” feature, is it?

“Blur my background” is a function to blur everything but you on the screen, so it’s different too.

If you don’t see difference, maybe you don’t need to configure that for now. When someone else complain the performance, please try that :slight_smile:

In one of the community calls (https://www.youtube.com/watch?v=feksoqPCAhI) they’re also discussing e2eping and pcStatsInterval settings for better scaling. Don’t ask me exactly what it does :).

You can see below setting in https://meet.jit.si/config.js

e2eping: {
    pingInterval: -1
},

But I don’t see the pcStatsInterval in https://meet.jit.si/config.js
The idea from the call was to increase this. It defaults to 10000.

3 Likes

By analysing server CPU use we can offer the following videobridge tweaks:

5 Likes

This is my current setup on /etc/jitsi/meet/*-config.js

var config = {
disableAudioLevels: true,
resolution: 480,
constraints: {video: {height: {ideal:480, max:480, min:240} } },
desktopSharingFrameRate: {min:5, max:30},
e2eping: {pingInterval: -1},
disableH264: true,

    // Connection
    //

I disabled H264 with disableH264: true on Loss of participants, video and sounds crashs when 12+ attendees

1 Like

This looks a nice guide for tuning.

it also have recommend to set constraints like above.

@Toberl did you happen to check if enableLayerSuspension would cause problems on Firefox?

Today I had a meeting with a dozen people with this configuration, applying those on the first post to interface_config.js as well:

DISABLE_FOCUS_INDICATOR: true
DISABLE_DOMINANT_SPEAKER_INDICATOR: true
DISABLE_VIDEO_BACKGROUND: true

I saw there was a clear improvement of performance, and also noticed that the main bottleneck for me has been my MacBook Air.

Also nobody reported to me an issue which seemed to be related with disableH264: true setting.

3 Likes

Take care to remove ‘videobackgroundblur’ of this list in /usr/share/jitsi-meet/interface_config.js

TOOLBAR_BUTTONS: [
    'microphone', 'camera', 'closedcaptions', 'desktop', 'embedmeeting', 'fullscreen',
    'fodeviceselection', 'hangup', 'profile', 'chat', 'recording',
    'livestreaming', 'etherpad', 'sharedvideo', 'settings', 'raisehand',
    'videoquality', 'filmstrip', 'invite', 'feedback', 'stats', 'shortcuts',
    'tileview', 'videobackgroundblur', 'download', 'help', 'mute-everyone', 'security'
],

In Jitsi-meet 1.0.1072-1 is not enough with DISABLE_VIDEO_BACKGROUND: true, to disable blur background.