Un SFU compatible con WebRTC que enruta flujos de video para videoconferencias a gran escala y se usa como backend de Jitsi Meet.
meetecho/janus-gateway
Servidor multimedia WebRTC de código abierto y propósito general, escrito en C, con arquitectura de plugins para videoconferencias, streaming y pasarelas SIP.
- Estrellas
- 9,199
- Forks
- 2,636
- Issues abiertos
- 30
- Último commit
- hace 22 horas
¿Qué es?
Janus es un servidor WebRTC de propósito general desarrollado por Meetecho. Funciona como una pasarela multimedia que retransmite audio, video y datos entre clientes WebRTC y otros sistemas, y se encarga de los procesos ICE, DTLS y SRTP que requiere WebRTC. Su núcleo es reducido y la mayor parte de la lógica de las aplicaciones reside en plugins que se cargan en tiempo de ejecución.
El servidor incluye plugins para salas de videoconferencia, streaming multimedia, pasarelas de telefonía SIP, puentes de audio, grabación y otros casos de uso. También se puede ampliar con plugins personalizados escritos en C, Lua o Duktape. Los clientes controlan el servidor mediante una API basada en JSON, accesible a través de HTTP REST, WebSockets, MQTT, RabbitMQ o Nanomsg, según las bibliotecas opcionales que se hayan incluido en la compilación.
Janus está pensado para Linux y también se puede compilar en macOS; Windows solo es compatible mediante WSL. Se pueden habilitar o deshabilitar durante la configuración funciones opcionales como Data Channels, WebSockets, MQTT y RabbitMQ. El proyecto incluye páginas de demostración en la carpeta html para hacer pruebas.
Funciones clave
- 01Arquitectura de plugins con plugins para salas de video, streaming, pasarelas SIP y puentes de audio
- 02API de control accesible mediante HTTP REST, WebSockets, MQTT, RabbitMQ o Nanomsg
- 03Compatibilidad opcional con WebRTC Data Channels mediante usrsctp
- 04Posibilidad de escribir plugins personalizados en C, Lua o Duktape
- 05Gestión configurable de ICE, con opciones para ICE Lite, TURN/STUN y NAT 1:1
- 06Compatibilidad opcional con BoringSSL y ajustes de retransmisión DTLS
Casos de uso
- Crear un backend de videoconferencias multiparte basado en WebRTC
- Retransmitir streams WebRTC en directo a espectadores o desde fuentes RTSP
- Conectar clientes WebRTC en navegadores con sistemas de telefonía SIP
- Ejecutar un servicio multimedia WebRTC personalizado con plugins del lado del servidor
Inicio rápido
- 1
Instala las dependencias necesarias para tu distribución (por ejemplo, los paquetes de 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
Clona el repositorio de Janus.
git clone https://github.com/meetecho/janus-gateway.git - 3
Genera el script configure y, después, configura, compila e instala.
sh autogen.sh && ./configure --prefix=/opt/janus && make && make install - 4
Instala los archivos de configuración predeterminados.
make configs
Antes de usarlo
- Está orientado a Linux: Windows no es compatible; solo se admite WSL.
- Es necesario compilar desde el código fuente y hay muchas dependencias opcionales de C.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es janus-gateway?
- Servidor multimedia WebRTC de código abierto y propósito general, escrito en C, con arquitectura de plugins para videoconferencias, streaming y pasarelas SIP. Janus es un servidor WebRTC de propósito general desarrollado por Meetecho. Funciona como una pasarela multimedia que retransmite audio, video y datos entre clientes WebRTC y otros sistemas, y se encarga de los procesos ICE, DTLS y SRTP que requiere WebRTC. Su núcleo es reducido y la mayor parte de la lógica de las aplicaciones reside en plugins que se cargan en tiempo de ejecución.
- ¿janus-gateway es gratuito? ¿Qué licencia tiene?
- janus-gateway es open source bajo la licencia GPL-3.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿janus-gateway sigue mantenido?
- Mantenimiento activo. El último commit de janus-gateway fue el 5 nov 2026.
- ¿Para qué puedo usar janus-gateway?
- Crear un backend de videoconferencias multiparte basado en WebRTC Retransmitir streams WebRTC en directo a espectadores o desde fuentes RTSP Conectar clientes WebRTC en navegadores con sistemas de telefonía SIP Ejecutar un servicio multimedia WebRTC personalizado con plugins del lado del servidor
- ¿Cómo se instala janus-gateway?
- Instala las dependencias necesarias para tu distribución (por ejemplo, los paquetes de 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 Clona el repositorio de Janus.: git clone https://github.com/meetecho/janus-gateway.git Genera el script configure y, después, configura, compila e instala.: sh autogen.sh && ./configure --prefix=/opt/janus && make && make install Instala los archivos de configuración predeterminados.: make configs
- ¿Dónde consigo janus-gateway?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/meetecho/janus-gateway
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Una plataforma de telecomunicaciones definida por software que convierte hardware estándar en una central SIP/VoIP, desde Raspberry Pi hasta servidores multinúcleo.
Kamailio es un servidor de señalización SIP de código abierto para plataformas grandes de VoIP, telefonía y comunicación en tiempo real.
Servidor de videoconferencias autohospedado, escrito en Go, que usa WebRTC y un cliente basado en navegador.
Servidor de videoconferencias web de código abierto y autohospedado, basado en LiveKit, con un agente de IA opcional para traducir, transcribir y resumir reuniones.
Cliente de código abierto para clases en línea en Web, Windows y macOS, basado en el audio, video y mensajería en tiempo real de Agora.