Skip to content
cumulusdev edited this page Jan 17, 2012 · 46 revisions

We remind you that Cumulus is licensed under the GNU General Public License, so CumulusLib can't be linked with any closed source project.

Binaries

A Windows 32bits binary version is made available mainy to test CumulusServer. But a Linux built from sources is certainly more appropriated for a production usage. If you download this versio, you can go to Configurations part of this document and skipping the both following part.

Download

You can download entiere sources in a zipball way or use a client GIT to download sources with the following address: git://github.com/OpenRTMFP/Cumulus.git.

Build

Cumulus source code is cross-platform. In any case, you have to build CumulusLib project in first, and then CumulusServer.

Dependencies

Cumulus has the following dependencies:

  • LUA is required.
  • OpenSSL is required.
  • POCO in its basic edition is required.

Windows Build

Visual Studio 2008/2010 solution and project files are included. It searchs external librairies in External/lib folder and external includes in External/include folder at the root project. So you must put POCO and OpenSSL headers and libraries in these folders. You can find OpenSSL binaries for windows on Win32OpenSSL. Poco builds with Visual Studio interpreter command line (see its readme file about buildwin.cmd), here an example for Visual Studio 2010 which builds quickly (just in static mode and without Poco samples) :

buildwin 100 build static_mt both Win32 nosamples devenv

Unix build (Linux/OSX)

If your Unix system includes a package manager you can install quickly OpenSSL and POCO dependencies, package is usually named libssl-dev and libpoco-dev.

Then, Cumulus built steps are easy:

cd CumulusLib
make
cd ../CumulusServer
make

To clean all, steps are naturally:

cd CumulusLib
make clean
cd ../CumulusServer
make clean

Configurations

CumulusServer is statically configured by an optional configuration CumulusServer.ini file to put in the installation folder. Possible configurations are:

  • port, equals 1935 by default (RTMFP server default port), it's the port used by CumulusServer to listen incoming RTMFP requests.

  • udpBufferSize, allows to change the size in bytes of UDP reception and sending buffer. Increases this value if your operating system has a default value too lower for important loads.

  • keepAliveServer, time in seconds for periodically sending packets keep-alive with server, 15s by default (valid value is from 5s to 255s).

  • keepAlivePeer, time in seconds for periodically sending packets keep-alive between peers, 10s by default (valid value is from 5s to 255s).

	;CumulusServer.ini
	port = 1985 
	udpBufferSize = 114688
	keepAlivePeer = 10
	keepAliveServer = 15

If this configuration file doesn't exist, default values are used.

Launch

Start

CumulusServer includes some argument launch options, but by default CumulusServer is optimized for a production running. Command-line options are useful during development and test usage. To get full description about launch arguments start CumulusServer with /help argument on Windows or --help on Unix system.

Otherwise, starts simply CumulusServer application with administrative rights.

You can also start it as a Windows service:

CumulusServer.exe /registerService [/displayName=CumulusServer /description="Open Source RTMFP Server" /startup=automatic]

Or an Unix daemon:

sudo ./CumulusServer --daemon [--pidfile=/var/run/CumulusServer.pid]

Usage

Flash client connects to CumulusServer by the classical NetConnection way:

_netConnection.connect("rtmfp://localhost/");

Here the port has its default value 1935. If you configure a different port on CumulusServer you have to indicate this port in the URL (after localhost, of course).

The path used allows you to connect for your desired [server application](Server Application).

_netConnection.connect("rtmfp://localhost/myApplication");
Clone this wiki locally