Jitsi Meet Videobridge

Posted on by admin

Jitsi meet wp plugin has built-in Gutenberg block that allows you to create as many conferences and video calls as you want with the easiest way. You can install the plugin on your WordPress site and start meeting right from your website without any email, pass, or verification hassles. Jitsi Meet is an open-source (Apache) WebRTC JavaScript application that uses Jitsi Videobridge to provide high quality, secure and scalable video conferences. It can be used as a replacement for proprietary services like Zoom, Whereby, Teams, Skype and many others.

Package Details: jitsi-videobridge 2.1+478+gc6da57bd-1

Package Actions

  • View PKGBUILD / View Changes
Git Clone URL: https://aur.archlinux.org/jitsi-videobridge.git (read-only, click to copy)
Package Base: jitsi-videobridge
Description: Jitsi Meet Videobridge
Upstream URL: https://jitsi.org/jitsi-meet/
Licenses: Apache
Submitter: C0rn3j
Maintainer: celogeek
Last Packager: celogeek
Votes: 3
Popularity: 0.054579
First Submitted: 2020-03-14 12:01
Last Updated: 2021-04-17 09:34

Dependencies (6)

  • bash(bash-devel-git, bash-devel-static-git)
  • java-runtime (jdk5, tuxjdk, jre7-openjdk-infinality, java-8-openjdk-shenandoah, jre8-openjdk-infinality, java-gcj-compat, jdk9, jre9, jdk-devel, jre10, jdk8-arm64, jdk6, jdk12-openj9-bin, zulu-12-bin, jre6, jre12, jdk8-openjdk-dcevm, jdk11-graalvm-ee-bin, server-jre, jdk8-arm, jdk13-openj9-bin, jdk9-openj9-bin, jdk10, jdk11-openjdk-dcevm, jre8-openjdk-jetbrains, jre8-openjdk-shenandoah, jdk10-openj9-bin, jdk14-openj9-bin, jdk7, jre7, jre14, jdk8-jetbrains, jdk7r1-j9-bin, jdk7-j9-bin, zulu-14-bin, zulu-13-bin, jdk-bcl, jre-bcl, amazon-corretto-15, jdk11-openj9-bin, jdk11-openjdk-dcevm-conflicts-fixed, jdk8-j9-bin, jdk8-openj9-bin, zulu-embedded-jdk8, sapmachine-jdk-bin, jre11-jetbrains-imfix, jdk15-adoptopenjdk, jre-openj9, zulu-embedded-jdk, jdk16-graalvm-bin, zulu-8-bin, zulu-11-bin, jre-jetbrains, jdk-jetbrains, jdk-arm, jdk8-graalvm-bin, jdk11-graalvm-bin, liberica-jdk-8-full-bin, liberica-jdk-11-bin, liberica-jdk-11-full-bin, liberica-jdk-11-lite-bin, liberica-jdk-full-bin, liberica-jre-11-bin, liberica-jre-11-full-bin, amazon-corretto-16, jdk-openj9-bin, jre, amazon-corretto-8, amazon-corretto-11, jdk11-msopenjdk-bin, liberica-jre-8-full-bin, zulu-embedded-jdk11, jre8-adoptopenjdk, jdk-adoptopenjdk, jdk11-adoptopenjdk, zulu-16-bin, java-openjdk-ea-bin, zulu-15-bin, jre8, jdk8, jre11, java-openjdk-loom-ea-bin, java-openjdk-bin, jre-openjdk, jre11-openjdk, jre7-openjdk, jre8-openjdk)
  • java-environment (jdk5, tuxjdk, jdk7-openjdk-infinality, java-8-openjdk-shenandoah, jdk8-openjdk-infinality, java-gcj-compat, jdk9, zulu-10-bin, jdk-devel, jdk8-arm64, jdk6, jdk12-openj9-bin, zulu-12-bin, jdk12, jdk8-openjdk-dcevm, jdk11-graalvm-ee-bin, jdk8-arm, jdk13-openj9-bin, jdk9-openj9-bin, jdk10, jdk11-openjdk-dcevm, jdk8-openjdk-jetbrains, jdk8-openjdk-shenandoah, jdk10-openj9-bin, jdk14-openj9-bin, jdk7, jdk8-jetbrains, jdk7r1-j9-bin, jdk7-j9-bin, zulu-14-bin, zulu-13-bin, jdk-bcl, amazon-corretto-15, jdk11-openj9-bin, jdk11-openjdk-dcevm-conflicts-fixed, jdk8-j9-bin, jdk8-openj9-bin, zulu-embedded-jdk8, sapmachine-jdk-bin, jdk11-jetbrains-imfix, jdk15-adoptopenjdk, jdk-openj9, zulu-embedded-jdk, jdk16-graalvm-bin, zulu-8-bin, zulu-11-bin, jre-jetbrains, jdk-jetbrains, jdk-arm, jdk8-graalvm-bin, jdk11-graalvm-bin, liberica-jdk-8-full-bin, liberica-jdk-11-bin, liberica-jdk-11-full-bin, liberica-jdk-11-lite-bin, liberica-jdk-full-bin, liberica-jre-11-bin, liberica-jre-11-full-bin, amazon-corretto-16, jdk-openj9-bin, jdk, amazon-corretto-8, amazon-corretto-11, jdk11-msopenjdk-bin, liberica-jre-8-full-bin, zulu-embedded-jdk11, jdk8-adoptopenjdk, jdk-adoptopenjdk, jdk11-adoptopenjdk, zulu-16-bin, java-openjdk-ea-bin, zulu-15-bin, jdk8, jdk11, java-openjdk-loom-ea-bin, java-openjdk-bin, jdk-openjdk, jdk11-openjdk, jdk7-openjdk, jdk8-openjdk)(make)
  • maven(mvnvm)(make)
  • unzip(unzip-natspec, unzip-iconv)(make)
  • prosody(prosody-hg-stable, prosody-hg)(optional)

Required by (2)

  • jigasi(optional)
  • jigasi-git(optional)

celogeek commented on 2021-04-10 08:31

Hi,

I have update the package to align to other jitsi-meet packages I maintain (stable, stable-bin, nightly, nightly-bin).

Now the package use Arch way for configs (/etc/jitsi-videobridge).

I made a blog post to configure jitsi-meet on arch. It use the -bin package, but now this one install files at the same places: https://blog.celogeek.com/posts/linux/archlinux/2020-06-jitsi-meet-on-arch-linux/

I'm working on alignment of all jitsi-meet packages. I will update the Arch Wiki as soon as I can.

Jitsi Meet Videobridge

celogeek commented on 2021-04-10 08:31

Hi,

I have update the package to align to other jitsi-meet packages I maintain (stable, stable-bin, nightly, nightly-bin).

Now the package use Arch way for configs (/etc/jitsi-videobridge).

I made a blog post to configure jitsi-meet on arch. It use the -bin package, but now this one install files at the same places: https://blog.celogeek.com/posts/linux/archlinux/2020-06-jitsi-meet-on-arch-linux/

I'm working on alignment of all jitsi-meet packages. I will update the Arch Wiki as soon as I can.

Perdu commented on 2021-03-11 19:10

Current config file has a typo: double-quote at the end of line 22 should be removed or the file won't get parsed correctly

Perdu commented on 2021-02-22 20:01

Current version of this package has the following bug (following Arch Linux wiki basic installation): https://github.com/jitsi/jitsi-videobridge/issues/1547

Provided solution in the issue works. Add to your config:

VIDEOBRIDGE_GC_TYPE=G1GC

C0rn3j commented on 2020-11-03 09:02

I am not sure if this issue blocks you from running the JVB itself (my Jitsi instance is broken atm), but you can use jitsi-videobridge-git til a new release is tagged if it does.

SaltFactory commented on 2020-11-03 09:00

Hi, the latest release contains the following bug: https://github.com/jitsi/jitsi-videobridge/issues/1503

Because of this, I am unable to get the videobridge working.It has since been fixed in the following merge request:https://github.com/jitsi/jitsi-videobridge/pull/1507

However, it might take a while for the next stable release.Is there anything we can do in the meantime to fix this?Could we enable the statsCollector perhaps?

Thanks.

anarki commented on 2020-07-11 18:31

If you're running into crashes on users joining a room, put JVB_OPTS='--apis=xmpp,' into jitsi-videobridge.conf

Referencehttps://community.jitsi.org/t/room-crashed-when-somebody-joined/21857

celogeek commented on 2020-05-27 00:19

Jitsi Meet Videobridge 2

Hi,can we follow more the debian upstream for this package?

  • The install directory should be there: /usr/share/jitsi-videobridge.
  • The service should be run as jvb:jitsi and not root!
  • The service should start with hardened permission.
  • You should have like the upstream those files in /etc/jitsi/videobridge: callstats-java-sdk.properties, config, log4j2.xml, sip-communicator.properties

I have made a standalone package here that does like the debian upstream:

Eothred commented on 2020-05-07 05:27

Hi,

Thanks for maintaining this package. Minor thing, but to follow same structure as the -bin equivalent, the path to the config file would be:

/etc/jitsi/videobridge/config

C0rn3j commented on 2020-05-02 10:48

I updated the package to JVB2 - the config paths and format has changed.

A single server Jitsi installation is good for a limited size of concurrent conferences.The first limiting factor is the videobridge component, that handles the actual video and audio traffic.It is easy to scale the video bridges horizontally by adding as many as needed.In a cloud based environment, additionally the bridges can be scaled up or down as needed.

NB: The Youtube Tutorial on Scaling is outdated and describes an old configuration method.

NB: Building a scalable infrastructure is not a task for beginning Jitsi Administrators.The instructions assume that you have installed a single node version successfully, and thatyou are comfortable installing, configuring and debugging Linux software.This is not a step-by-step guide, but will show you, which packages to install and whichconfigurations to change. Use the manual install fordetails on how to setup Jitsi on a single host.It is highly recommended to use configuration management tools like Ansible or Puppet to manage theinstallation and configuration.

Architecture (Single Jitsi-Meet, multiple videobridges)

A first step is to split the functions of the central jitsi-meet instance (with nginx, prosody and jicofo) andvideobridges.

A simplified diagram (with open network ports) of an installation with one Jitsi-Meet instance and threevideobridges that are load balanced looks as follows. Each box is a server/VM.

Machine Sizing

The Jitsi-Meet server will generally not have that much load (unless you have many) conferencesgoing at the same time. A 4 CPU, 8 GB machine will probably be fine.

The videobridges will have more load. 4 or 8 CPU with 8 GB RAM seems to be a good configuration.

Installation of Jitsi-Meet

Assuming that the installation will run under the following FQDN: meet.example.com and you haveSSL cert and key in /etc/ssl/meet.example.com.{crt,key}

Set the following DebConf variables prior to installing the packages.(We are not installing the jitsi-meet package which would handle that for us)

Jitsi Meet Videobridge

Install the debconf-utils package

On the jitsi-meet server, install the following packages:

  • nginx
  • prosody
  • jicofo
  • jitsi-meet-web
  • jitsi-meet-prosody
  • jitsi-meet-web-config

Installation of Videobridge(s)

For simplicities sake, set the same debconf variables as above and install

  • jitsi-videobridge2

Configuration of jitsi-meet

Firewall

Open the following ports:

Open to world:

  • 80 TCP
  • 443 TCP

Open to the videobridges only

  • 5222 TCP (for Prosody)
  • 5347 TCP (for Jicofo)

NGINX

Create the /etc/nginx/sites-available/meet.example.com.conf as usual

Prosody

Jitsi Meet Spanishwithcleary

Follow the steps in the manual install for setup tasks

You will need to adapt the following files (see the files in example-config-files/scalable)

  • /etc/prosody/prosody.cfg.lua
  • /etc/prosody/conf.avail/meet.example.com.cfg.lua

Jitsi-Meet

Jitsi Meet Add Videobridge

Adapt /usr/share/jitsi-meet/config.js and /usr/share/jitsi-meet/interface-config.js to your specific needs

Jicofo

You will need to adapt the following files (see the files in example-config-files/scalable)

  • /etc/jitsi/jicofo/config (hostname, jicofo_secret, jicofo_password)
  • /etc/jitsi/jicofo/sip-communicator.properties (hostname)

Configuration of the Videobridge

Firewall

Videobridge

Open the following ports:

Open to world:

  • 443 TCP
  • 10000 UDP

jitsi-videobridge2

You will need to adapt the following files (see the files in example-config-files/scalable)

Each videobridge will have to have it's own, unique nickname

Meet
  • /etc/jitsi/videobridge/config (hostname, password)
  • /etc/jitsi/jicofo/sip-communicator.properties (hostname of jitsi-meet, nickname of videobridge, vb_password)

With the latest stable (April 2020) videobridge, it is no longer necessary to set public and private IPadresses in the sip-communicator.properties as the bridge will figure out the correct configuration by itself.

Testing

Jitsi Meet Conference.video Bridge Not Available

After restarting all services (prosody, jicofo and all the jitsi-videobridge2) you can see in/var/log/prosody/prosody.log and/var/log/jitsi/jicofo.log that the videobridges connect to Prososy and that Jicofo picks them up.

When a new conference starts, Jicofo picks a videobridge and schedules the conference on it.