Quick-wiki: Jitsi Meet

Last update: 09/2021, Jitsi Meet v2.0.6293 from upstream repos.

This is a quick-wiki for quick reference for my occasional Jitsi Meet installations.

Table of Content

Limit RAM usage

Both jicofo and jvb are configured to take by default up to 3 GB of RAM each. On a machine with running both by default almost ~8 GB RAM is required. Memory hog keeps on building due to not so aggressive garbage collection, but it can be instructed to use less 1.

For jvb, add the following line in /etc/jitsi/videobridge/config

VIDEOBRIDGE_MAX_MEMORY=320m

For jicofo, add the following line in /etc/jitsi/jicofo/config

if [ -z "$JICOFO_MAX_MEMORY" ]; then JICOFO_MAX_MEMORY=320m; fi

Change the memory size as you want and do a restart for applying new changed configs.

I host a personal instance for friends and family on 1 GB EC2, 320 MB each for jvb and jicofo is fine for 5-6 folks with videos on.

Restart setup

sudo /etc/init.d/prosody restart 
sudo /etc/init.d/jicofo restart
sudo /etc/init.d/jitsi-videobridge2 restart

or a copy-paste one liner for above:

sudo /etc/init.d/prosody restart && sudo /etc/init.d/jicofo restart && sudo /etc/init.d/jitsi-videobridge2 restart

Check installation version

dpkg -l | grep jitsi

Returns versions of all the components installed with description.

Log files

Interface changes

The UI can be customized by making changes in /usr/share/jitsi-meet/interface_config.js file.

Following are some handy variables to change:

Steps to change header (main) text on homepage:

<link rel="stylesheet" href="css/custom.css">

(optional) if wanting to add custom JS, also add following line in body.html:

<script src="scripts/custom.js"></script>
.welcome .header .header-text-title { 
    display: none;  

}

.welcome .header .header-container:before { 
    content:'FSCI Jitsi Meet'; 
    color: #fff; 
    font-size: 2.5rem; 
    font-weight: 500; 
    line-height: 1.18; 
    text-align: center
}

(optional) for custom script, create a file custom.js in /usr/share/jitsi-meet/scripts directory and add JS into it.

Interface changes don’t require a server or jitsi-* reload to take effect. Every reload fetches the latest version.

Configuration

Configuration file ie config.js is being used as central place for making all changes. Interface file is being deprecated by upstream in coming releases.

config.js can be found as /etc/jitsi/meet/<DOMAIN>-config.js. It is publicly viewable by default in vanilla installation at https://<DOMAIN>/config.js

Quite a bit of configurations can be changed through it. Following are some handy changes:

Note: Most of the options are commented, so need to be uncommented to enable.

RTMP stream and record setup

Note - For self-hosted Jitsi Meet instances, additional Jibri setup is required. meet.jit.si has a Jibri instance running, so that can be used.

This setup allows you to record stream on server (without default Dropbox) as well as stream meeting (without default YouTube). Steps:

Glossary