Jitsi Meet Videobridge

Blog
Published on: September 18, 2018 by Emil IvovCategories: Jitsi Community Jitsi Meet Jitsi Videobridge meet.jit.si WebRTC
Jitsi

Real-time communication is a tricky business, and large scale video conferencing is especially so. There are many things that can be done to improve user experience but they get harder and harder as you go through the list. Bridge cascading, which we’ll explain shortly, is on the hardest end of this list!

What is Jitsi Meet and why would I need it? Jitsi meet is a secure, fully featured, and completely free video conferencing system. What is this plugin for? It’s a plugin to quickly and very easily add a video conference room on your post or page. Does it support gutenberg? Yes, it’s having a gutenberg block ‘Jitsi Meet’ listed on Embeds.

Traditionally in a video calling all the callers on a particular video conference are anchored to the same bridge in one physical location. It’s hard to know where everyone will be calling from in advance, so most systems out there simply schedule the conference on a bridge that’s close to the conference creator. This sounds simple but can cause a lot of quality issues – imagine a call with 20 people where the sole Sydney participant happens to join first … that’s pretty much a recipe for a massively disappointing experience, since audio and video for 19 people would literally be going all through the planet with long delays for no good reason.

  • Jitsi meet has an in-built load balancing functionality, and can be configured to manage multiple Videobridge nodes for hosting meeting conferences. Each videobridge component is responsible for streaming media data to all the participants of a given set of meeting.
  • If you are looking for Jitsi Meet, the WebRTC compatible video conferencing product click here.

This is what bridge cascading solves. It ensures that every participant in a conference call will be connected to a bridge near them. A cascade of bridges is used to fan out streams to the right locations. To pull this off, the bridges must communicate among themselves to relay the appropriate streams around the world.

After much engineering, we are happy to announce we have added this feature to Jitsi Meet:


Try it on meet.jit.si right now!

UPDATE:

See a video overview of how this works here. Boris also did a write-up on this for webrtcHacks here. If you want even more, you can also see the academic paper he published on this topic here.

Love,
You personal Jitsi team!

MeetrixIO is a well experienced company with WebRTC related technologies.We provide commercial support for Jitsi Meet, Kurento, OpenVidu, BigBlue Button, Coturn Server and other webRTC related opensource projects.

One of the amazing features in Jitsi Meet is the inbuilt horizontal scalability.When you want to cater large number of concurrent users, you can spin up multiple video bridges to handle the load.If we setup mulple video bridges and connect them to the same shard, Jicofo, the conference manager selects the least loaded Videobridge for the next new conference.

Run Prosody on all interfaces

By default prosody runs only on local interface (127.0.0.0), to allow the xmpp connections from external servers, we have to run prosody on all interfaces. To do that, add the following line at the beginning of /etc/prosody/prosody.cfg.lua

Allow inbound traffic for port 5222

Open inbound traffic from JVB server on port 5222 (TCP) of Prosody server. But DO NOT open this publicly.

Install JVB on a seperate server

Install a Jitsi Video Bridge on a different server.

Copy JVB configurations from Jitsi Meet server

How do i join a jitsi meeting

Replace /etc/jitsi/videbridge/config and /etc/jitsi/video-bridge/sip-communicator.properties of JVB server with the same files from the original Jitsi Meet server

Update JVB config file

In /etc/jitsi/videbridge/config set the XMPP_HOST to the ip address/domain of the prosody server

In /etc/jitsi/video-bridge/sip-communicator.properties file update the following properties

Jitsi meet spanishwithcleary

Jitsi Meet Video Bridge Setup

  1. <XMPP_HOST>: The ip address of the prosody server. Better if you can use the private IP address if that can be accessed from JVB server.
  2. <JVB_NICKNAME>: This should be a unique string used by Jicofo to identify each JVB

You can add the following line at the beginning of /usr/share/jitsi/jvb/jvb.sh to generate a unique nickname for the JVB at each startup. This might be useful if you are using an auto-scaling mechanism.

Jitsi Meet Videobridge

Jitsi Meet Video Bridge Lessons

Looking for commercial support for Jitsi Meet ? Please contact us via [email protected]