I'm looking for simple free/open source server software that would allow me to do this: Publish video stream over RTMP from local computer behind NAT, to server (Linux). Server should serve that stream over http and/or rtmp. There is no need to server to more than one client for now.
I have tried crtmpserver
or rtmpd
, but there is no documentation for it, and I don't know how to setup this specific configuration. I did try however, but no success. I have managed to publish stream with OBS (or at least it seemed so), but could not find way to play it. If you can help me configure it that would be OK solution.
I have tried rtmplite
but it does not work. I failed to publish stream.
I have tried ant media server
(based on red5) and succeeded, but it seems pretty slow, glitches all the time with 50mbps upload and download and low quality video. And I don't like that http stream version first serves m3u8 list. If you have advice on how to solve these problems that would be OK solution.
I have looked at nginx with rtmp module
, but could not find the way to configure HTTP download of stream published over RTMP. If you can direct me how to do it, that would be OK solution.
Any other server maybe?
Thanks!
EDIT:
I've managed to accomplish this using nginx and BLSS (rtmp) module to accept published stream and stream it further to VLC. VLC accept RTMP stream and serves it further to clients using HTTP. This is what I wanted however, VLC introduces here 6 seconds delay, and it is more complex than having single piece of software doing it. nginx does not introduce delay at all, and I would be happy if I could reduce delay of VLC at least to 3 seconds. VLC command I use:
cvlc "rtmp://address:port/stream" --sout "#standard{access=http,mux=ts,dst=address:port}"
Delay is bigger problem than complexity. I've tried nginx with HLS but it introduced over 15 seconds delay, and served .m3u8 which I try to avoid for certain reasons.
Thanks.