Build a self-hosted multi-party video conferencing system using the bundled VideoRoom plugin.
Create a live audio mixing room that combines multiple speakers into one stream using the AudioBridge plugin.
Set up a WebRTC-to-SIP gateway to connect browser-based calls to traditional phone systems.
Write custom media routing logic in Lua and load it as a Janus plugin without touching C code.
Must compile from source on Linux and install many system libraries, specific library versions can break the build, so check README compatibility notes first.
Janus is an open-source server that handles real-time audio and video communication over the web, using a technology called WebRTC. WebRTC is what lets browsers have video calls without installing plugins, and Janus is the server-side piece that manages those connections, routes media between participants, and makes features like video conferencing, live streaming, and audio bridges possible for developers who want to build such systems themselves. The server is written in C and runs on Linux, with macOS also supported. It exposes an API that your application talks to in order to create sessions, join rooms, and exchange media. You can reach that API over several different transports depending on what your application needs: a plain REST interface, WebSockets, RabbitMQ, MQTT, or a messaging system called Nanomsg. Each of these is optional and only compiled in if you install the corresponding library. Janus is built around a plugin architecture. The core server handles signaling and media routing, and the specific use-cases live in plugins that you load at startup. Plugins cover common scenarios like multi-party video conferencing, audio mixing (AudioBridge), SIP gateways for connecting to phone systems, recording, screen sharing, and data channels. There is also a plugin for running custom logic written in Lua or Duktape if none of the built-in plugins fit your needs. Installation requires compiling from source and installing a number of system libraries. The README documents the required and optional dependencies in detail, with package installation commands for Fedora and Ubuntu, and notes about specific library versions that are known to cause problems. The project has an active community forum and a documentation and demo site linked from the README.
← meetecho on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.