Jitsi Videobridge is a WebRTC compatible video router or SFU that lets build highly scalable video conferencing infrastructure (i.e., up to hundreds of conferences per server).
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Vishal Malyan 38ea5ea440
doc: Remove outdated conference size bucket metrics from statistics documentation (#2374)
21 hours ago
.github Pass codecov token to codecov action. (#2313) 9 months ago
config Remove callstats. (#1956) 3 years ago
debian fix(debian): Fixes default config when password contains special chars. 10 months ago
doc doc: Remove outdated conference size bucket metrics from statistics documentation (#2374) 21 hours ago
jitsi-media-transform Limit keyframe requests based on the source requesting them. (#2367) 3 months ago
jvb ref: Use mediajson TranscriptionResultEvent (#2379) 1 week ago
resources Fix block comment syntax in analyze-timeline2.pl. (#2256) 1 year ago
rtp Update many dependencies and plugins. (#2364) 4 months ago
.editorconfig Update for ktlint 1.0.0 (ktlint-maven-plugin 3.0.0). (#2059) 2 years ago
.gitattributes Add .gitattributes to prevent future EOL problems 10 years ago
.gitignore chore: Ignore .DS_Store. (#1542) 5 years ago
CONFIG.md fix: update broken links in `CONFIG.md` (#2249) 1 year ago
LICENSE Update LICENSE 11 years ago
README.md use correct JVB_CONFIG_FILE var 3 years ago
SECURITY.md Add hackerone link to SECURITY.md. (#2218) 1 year ago
pom.xml ref: Use mediajson TranscriptionResultEvent (#2379) 1 week ago

README.md

Intro

Jitsi Videobridge is a WebRTC-compatible Selective Forwarding Unit (SFU), i.e. a multimedia router. It is one of the backend components in the Jitsi Meet stack.

You can find more documentation in the doc/ directory in the source tree and in the Jitsi Meet Handbook.

If you have questions about the project, please post on the Jitsi Community Forum. GitHub issues are only used to track actionable items.

Packages

Debian/Ubuntu

You can download binary packages for Debian/Ubuntu:

Building your own package

You can build a custom package with just mvn install in the root directory of the repo. Look for the package in jvb/target/jitsi-videobridge-2.1-SNAPSHOT-archive.zip.

Running locally

You can run jitsi-videobridge locally with maven (or in your IDE). First create a ~/.jvb/jvb.conf to configure the environment to connect to and other options (see reference.conf for the available options).

JVB_HOME="/path/to/the/cloned/repo"
JVB_CONFIG_DIR_LOCATION="~/"
JVB_CONFIG_DIR_NAME=".jvb"
JVB_CONFIG_FILE="$JVB_CONFIG_DIR_LOCATION/$JVB_JVB_CONFIG_DIR_NAME/jvb.conf"

mvn compile exec:exec -Dexec.executable=java -Dexec.args="-cp %classpath org.jitsi.videobridge.MainKt -Djava.library.path=$JVB_HOME/lib/native/linux-64 -Djava.util.logging.config.file=$JVB_HOME/lib/logging.properties -Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION=$JVB_CONFIG_DIR_LOCATION -Dnet.java.sip.communicator.SC_HOME_DIR_NAME=$JVB_CONFIG_DIR_NAME -Dconfig.file=$JVB_CONFIG_FILE"

Configuration

Application level configuration comes from a config file, usually installed in /etc/jitsi/videobridge/jvb.conf. The values in that file override the defaults defined in reference.conf.

Debian

On debian systems the /etc/jitsi/videobridge/config file can be used to set configuration for the Java virtual machine. Notable examples:

# Increase the java heap to 8GB
VIDEOBRIDGE_MAX_MEMORY=8192m
# Change the garbage collector (defaults to G1GC)
VIDEOBRIDGE_GC_TYPE=G1GC