Короткое определение

C-based general-purpose WebRTC gateway от Meetecho. Плагинная архитектура: SFU, streaming, recording и bridging – это всё плагины поверх общего ядра. Лицензия GPL 3.0.

Janus (запущен в 2014) был одним из самых ранних open-source WebRTC-серверов и до сих пор широко эксплуатируется. В отличие от mediasoup или LiveKit, которые позиционируются как SFU, Janus – general-purpose WebRTC-гейтвей с плагинной архитектурой: SFU – один из плагинов (`videoroom`), но есть и one-way streaming (`streaming`), recording (`recordplay`), SIP-gateway (`sip`), TextRoom и другие. Это делает Janus швейцарским ножом для проектов, нужных WebRTC-интеграцию с разными не-WebRTC-системами.

Janus написан на C ради производительности, с HTTP-, WebSocket- и Unix-socket-API для контроля. Работает single-process с worker-threads – традиционнее, чем per-CPU-process модель mediasoup. Сообщество большое и активное; коммерческую поддержку предоставляют Meetecho и партнёры. Крупные деплои – Slack Huddles, Linphone и многие телеком-смежные конференц-системы.

Сильные стороны Janus – гибкость (плагины на всё) и интеграция broadcast/streaming. Слабые – более крутая learning curve, чем у LiveKit, и менее JavaScript-дружелюбный API, чем у mediasoup. Для чистого WebRTC SFU mediasoup или LiveKit обычно проще. Для сложных гибридных деплоев – WebRTC + SIP + broadcast-стриминг + запись – плагинная экосистема Janus трудно превзойти.

Считаете параметры для своего продукта?

Поможем собрать энкодер-леддер и посчитать стоимость доставки – до старта разработки.