Resource icon

How to set up your own private RTMFP server using MonaServer

This article is inspired of the great guide of How to set up your own private RTMP server using nginx.

MonaServer is a tiny and scalable open source server which provide protocols RTMFP, RTMP, RTMPE, WebSocket and HTTP. Server applications are written in lua and clients just need to support one of these protocols.

The interest of MonaServer here is the RTFMP broadcast feature that avoid congestion (because it is a UDP protocol) unlike RTMP.

This guide will presents you an easy way to broadcast a video with OBS over RTMFP. Don't worry, you will not need to configure or write any code here :)

Step 1 : Install MonaServer and run it

Just follow the instructions on http://monaserver.ovh/installation.html for your platform (MonaServer supports Linux, Windows and the MacOS X version is in beta).

Note : You can download the Windows package if you want to go faster (to get it work you will need the Visual Studio 2013 redistributable packages)

Run MonaServer, for example on Linux :
./MonaServer

MonaServer.png


Step 2 : Configure OBS and start streaming

A. Configure OBS with the properties below :

Streaming Service: Custom
Server: rtmp://<your server ip>
Play Path/Stream Key: test

(Obviously you can change the stream key to any other name)

B. And now you can play your stream with an RTMFP video player. As they aren't many players supporting RTMFP you can try this one :
http://raspi.monaserver.ovh/MonaClients/VideoPlayer/?fit

And type the following url in the RTMP/RTMFP input :
rtmfp://<your server ip>/test

Or directly with the url in argument :
http://raspi.monaserver.ovh/MonaClients/VideoPlayer/?fit&url=rtmfp://<your server ip>/test

/!\ Do not set a NetGroup in the NetGroup input.

broadcasting.png


Notes :
  • I've developed this client for testing, if you are looking for an easy embeddable player please ask me, I think it could be done easily.
  • you can also play the stream using RTMP (just change rtmfp:// to rtmp://) and your favourite player!

That's all! If you're facing a problem don't hesitate to comment or contact me directly.

[NEW VIDEO]
You can now watch the video tutorial on how to broadcast with MonaServer and OBS.

Going further

With MonaServer it's already possible to develop some cool applications like :
- online remote control,
- low cost p2p broadcasting with the use of the Netgroup feature of Flash.
Contact me if you are interested.

Enjoy!
Author
thomasJ
Views
72,965
First release
Last update
Rating
5.00 star(s) 6 ratings

Latest updates

  1. Updated tutorial of broadcasting with MonaServer (low-cost and congestion-free)

    What's new in the tutorial : - Added a sourceforge link to a Windows package, - Added...

Latest reviews

RTMFP is still very important protocol for long time as it's very efficient for live streaming even with low bandwidth
Hi Team, Superb Project!

One Question.. I Strated streming a video from my system and i am able to access it in another system in same network, but i am not able to view the video on a remote system.. please help and suggest.
thomasJ
thomasJ
Hi Ravij,
Which protocol are you using? RTMFP? With Netgroup? RTMP?
This is a common issue reported by our users and in general it is a problem of firewall or router, try to debug this and it should work properly.

Sorry for the long delay to answer, I didn't saw these comments

Regards
Fantastic. All of this with just Lua. I'm thoroughly impressed. And p2p, running even on a Raspberry Pi. Have to dream up some applications :D
Great :) Work good
Top