Skip to content

Latest commit

 

History

History
54 lines (37 loc) · 1.88 KB

README.md

File metadata and controls

54 lines (37 loc) · 1.88 KB

janus-plugin-rtmp

Janus plugin to stream publisher audio and video merged into a single RTMP stream to YouTube, Facebook, Instagram, Twitch and any other live streaming service accepting RTMP protocol.

See here for API documentation on how to communicate with the plugin.

PRs and GitHub issues are welcome.

How do I use the plugin?

This is a plugin for Janus, so you'll need to install and run Janus first. The installation instructions on GitHub are canonical. It's built for Janus version 0.10.7 and should support later versions.

This plugin should be compatible with any OS that can run Janus; that includes Linux, OS X, and Windows via WSL.

Dependencies

These are the native dependencies necessary for building. The plugin is based on the excellent and resource-efficient GStreamer and thus we need to install some of dependencies.

$ sudo apt-get install \
    libgstreamer1.0-dev \
    gstreamer1.0-plugins-base \
    gstreamer1.0-plugins-good \
    gstreamer1.0-plugins-bad

To build the plugin we also need headers from Janus. Assuming that the sources of Janus are at /janus-gateway and it is installed into /usr/local.

$ sudo cp /janus-gateway/{.,plugins}/*.h /usr/local/janus

Building and installing

$ ./autogen.sh
$ ./configure --prefix=/usr/local
$ make
$ make install

Configuration and usage

The plugin accepts a configuration file in the Janus configuration directory named janus.plugin.rtmp.cfg containing key/value pairs in INI format. An example configuration file is provided as conf/janus.plugin.rtmp.cfg.sample.

Future plans

  • Replace port-based solution with passing direct RTP packets to GStreamer
  • Support for multiple URLs