Skip to content

Instantly share code, notes, and snippets.

@unitycoder
Last active May 25, 2024 14:24
Show Gist options
  • Save unitycoder/f4ad3be420e73ec05b27d5474b9e3aba to your computer and use it in GitHub Desktop.
Save unitycoder/f4ad3be420e73ec05b27d5474b9e3aba to your computer and use it in GitHub Desktop.
Local RTMP Stream Server for Windows

https://obsproject.com/forum/resources/how-to-set-up-your-own-private-rtmfp-server-using-monaserver.153/ (copied here as a backup)

This article is inspired of the great guide of How to set up your own private RTMP server using nginx. https://obsproject.com/forum/resources/how-to-set-up-your-own-private-rtmp-server-using-nginx.50/

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 https://sourceforge.net/projects/monaserver/files/MonaServer_1.1_Win32.zip/download if you want to go faster (to get it work you will need the Visual Studio 2013 redistributable packages) http://www.microsoft.com/en-us/download/details.aspx?id=40784

Run MonaServer, for example on Linux : ./MonaServer

Step 2 : Configure OBS and start streaming

A. Configure OBS with the properties below :

Streaming Service: Custom Server: rtmp:// 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:///test​

Or directly with the url in argument : http://raspi.monaserver.ovh/MonaClients/VideoPlayer/?fit&url=rtmfp:///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. https://www.youtube.com/watch?v=8JeOv4Mv7rg

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!

@canyoubarrett
Copy link

wow this looks great! I will be trying to get OBS to stream to this server, then syndicate it to a personal website in a player.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment