Skip to content

Life4gal/janus-gateway-cmake

Repository files navigation

janus-gateway-cmake

Introduction

janus, but use cmake to manage the project.

This repository doesn’t pretend to be more modern than makefile, but there are many great IDE(s) that have far stronger support for cmake than for makefile.

This repository tries to make it possible for people who are not so familiar with makefile to get started with janus more quickly. (Of course, they need some familiarity with cmake) :)

Janus is an open source, general purpose, WebRTC server designed and developed by [Meetecho](https://www.meetecho.com). This version of the server is tailored for Linux systems, although it can be compiled for, and installed on, MacOS machines as well. Windows is not supported, but if that’s a requirement, Janus is known to work in the "Windows Subsystem for Linux" on Windows 10: do NOT trust repos that provide .exe builds of Janus, they are not official and will not be supported.

For some online demos and documentations, make sure you pay the [project website](https://janus.conf.meetecho.com/) a visit!

Note well: this is the main branch for the multistream version of Janus, which is the new version. If you want to check the legacy version of Janus instead (i.e., 0.x, a.k.a. "legacy") click [here](https://github.com/meetecho/janus-gateway/tree/0.x) instead.

If you have questions on Janus, or wish to discuss Janus with us and other users, please join our [meetecho-janus](https://groups.google.com/forum/#!forum/meetecho-janus) Google Group. If you encounter bugs, please submit an issue on [GitHub](https://github.com/meetecho/janus-gateway/issues): make sure you read the [guidelines](.github/CONTRIBUTING.md) before opening an issue or a pull request, though.

Features

todo

Requirements

Same requirements as janus, just follow the instructions in the official janus repository to install it.

To install it, you’ll need to satisfy the following dependencies:

  • Jansson

  • libconfig

  • libnice (at least v0.1.16 suggested, v0.1.18 recommended)

  • OpenSSL (at least v1.0.1e)

  • libsrtp (at least v2.x suggested)

  • usrsctp (only needed if you are interested in Data Channels)

  • libmicrohttpd (at least v0.9.59; only needed if you are interested in REST support for the Janus API)

  • libwebsockets (only needed if you are interested in WebSockets support for the Janus API)

  • rabbitmq-c (only needed if you are interested in RabbitMQ support for the Janus API or events)

  • paho.mqtt.c (only needed if you are interested in MQTT support for the Janus API or events)

  • nanomsg (only needed if you are interested in Nanomsg support for the Janus API)

  • libcurl (only needed if you are interested in the TURN REST API support)

A couple of plugins depend on a few more libraries:

  • Sofia-SIP (only needed for the SIP plugin)

  • libopus (only needed for the AudioBridge plugin)

  • libogg (needed for the VoiceMail plugin and/or post-processor, and optionally AudioBridge and Streaming plugins)

  • libcurl (only needed if you are interested in RTSP support in the Streaming plugin or in the sample Event Handler plugin)

  • Lua (only needed for the Lua plugin)

  • Duktape (only needed for the Duktape plugin)

Additionally, you’ll need the following libraries and tools:

Install

todo

License

see License.

Note well: This license is for this project only, for the original project (in this case janus-gateway), please follow its corresponding license. This project does not have any warranty.

Off Topic

Any contributions are welcome, and if you have any questions, please submit an issue.