兼容 WebRTC 的 SFU(选择性转发单元)视频路由服务,用于构建可扩展的视频会议基础设施,是 Jitsi Meet 的后端组件。
meetecho/janus-gateway
用 C 语言编写的通用开源 WebRTC 媒体服务器,通过插件支持会议、流媒体和 SIP 网关等场景。
- Star
- 9,201
- Fork
- 2,636
- 未关闭 Issue
- 30
- 最近提交
- 前天
这是什么?
Janus 是 Meetecho 开发的通用 WebRTC 服务器,作为媒体网关在 WebRTC 客户端与其他系统之间转发音频、视频和数据,并处理 WebRTC 所需的 ICE、DTLS 和 SRTP 等环节。核心部分保持精简,大部分业务逻辑通过运行时加载的插件实现。
服务器自带视频会议房间、媒体流、SIP 电话网关、音频桥接和录制等插件,也可以用 C、Lua 或 Duktape 编写自定义插件。客户端通过基于 JSON 的 API 控制服务器,可根据编译时启用的可选库使用 HTTP REST、WebSockets、MQTT、RabbitMQ 或 Nanomsg 接入。
Janus 主要面向 Linux,也可在 macOS 上编译安装,Windows 仅可通过 WSL 运行。Data Channels、WebSockets、MQTT 和 RabbitMQ 等可选功能可在配置阶段开关,项目的 html 目录中还提供了用于测试的演示页面。
核心功能
- 01插件化架构,提供视频房间、流媒体、SIP 网关和音频桥接等插件
- 02控制 API 可通过 HTTP REST、WebSockets、MQTT、RabbitMQ 或 Nanomsg 访问
- 03通过 usrsctp 支持 WebRTC Data Channels(可选)
- 04支持使用 C、Lua 或 Duktape 编写自定义插件
- 05可配置 ICE 行为,包括 ICE Lite、STUN/TURN 和 NAT 1:1
- 06可选 BoringSSL 支持及 DTLS 重传调优
适用场景
- 基于 WebRTC 搭建多人视频会议后端
- 将实时 WebRTC 流分发给观众,或接入 RTSP 源
- 将浏览器 WebRTC 客户端与 SIP 电话系统对接
- 通过服务端插件运行自定义的 WebRTC 媒体服务
快速上手
- 1
为你的发行版安装所需依赖(例如 Ubuntu/Debian 软件包)
apt install libmicrohttpd-dev libjansson-dev libssl-dev libsofia-sip-ua-dev libglib2.0-dev libopus-dev libogg-dev libcurl4-openssl-dev liblua5.3-dev libconfig-dev pkg-config libtool automake - 2
克隆 Janus 代码仓库
git clone https://github.com/meetecho/janus-gateway.git - 3
生成 configure 脚本,然后配置、编译并安装
sh autogen.sh && ./configure --prefix=/opt/janus && make && make install - 4
安装默认配置文件
make configs
使用前须知
- 主要面向 Linux:不支持 Windows,仅可在 WSL 中运行。
- 需要从源码编译,并安装较多可选的 C 语言依赖库。
收录于专题
标签
常见问题
- janus-gateway 是什么?
- 用 C 语言编写的通用开源 WebRTC 媒体服务器,通过插件支持会议、流媒体和 SIP 网关等场景。 Janus 是 Meetecho 开发的通用 WebRTC 服务器,作为媒体网关在 WebRTC 客户端与其他系统之间转发音频、视频和数据,并处理 WebRTC 所需的 ICE、DTLS 和 SRTP 等环节。核心部分保持精简,大部分业务逻辑通过运行时加载的插件实现。
- janus-gateway 可以免费使用吗?用的什么许可证?
- janus-gateway 以 GPL-3.0 许可证开源。用于商业产品前,请先确认许可证条款。
- janus-gateway 还在维护吗?
- 活跃维护中。janus-gateway 最近一次提交是在 2026年11月5日。
- janus-gateway 适合用来做什么?
- 基于 WebRTC 搭建多人视频会议后端 将实时 WebRTC 流分发给观众,或接入 RTSP 源 将浏览器 WebRTC 客户端与 SIP 电话系统对接 通过服务端插件运行自定义的 WebRTC 媒体服务
- janus-gateway 怎么安装和运行?
- 为你的发行版安装所需依赖(例如 Ubuntu/Debian 软件包): apt install libmicrohttpd-dev libjansson-dev libssl-dev libsofia-sip-ua-dev libglib2.0-dev libopus-dev libogg-dev libcurl4-openssl-dev liblua5.3-dev libconfig-dev pkg-config libtool automake 克隆 Janus 代码仓库: git clone https://github.com/meetecho/janus-gateway.git 生成 configure 脚本,然后配置、编译并安装: sh autogen.sh && ./configure --prefix=/opt/janus && make && make install 安装默认配置文件: make configs
- 在哪里获取 janus-gateway?
- 源代码和安装说明在 GitHub 上:https://github.com/meetecho/janus-gateway
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一套软件定义的电信交换平台,可在普通硬件上运行,实现 SIP/VoIP 交换功能。
Kamailio 是面向大规模 VoIP 与实时通信平台的开源 SIP 信令服务器。
用 Go 编写的自托管视频会议服务器,基于 WebRTC 并提供浏览器端客户端。
基于 LiveKit 的开源自托管网络会议服务端,可选 AI 会议助手提供翻译、转写和摘要。
基于 Agora 实时音视频与消息能力的开源在线课堂客户端,支持 Web、Windows 和 macOS。