OBS alternative for server: Creating a continuous video streaming to RTMP server and beign able to manipulate it using NodeJS
<p>What I want is to be able to create a livestream from a Ubuntu v14.04 server to a RTMP Server (like Twitch) and to be able to use NodeJS to control visual aspects (adding layers, text, images) and add different sources (video files, others livestreams, etc). Like having <a href="https://obsproject.com/" rel="nofollow">OBS</a> running on a server.</p>

<p>What I've done/researched so far:</p>

<p><strong>FFmpeg</strong></p>

<p>With ffmpeg I can can create video files streams like that:</p>

<p><code>ffmpeg -re -i video.mp4 -c:v libx264 -preset fast -c:a aac -ab 128k -ar 44100 -f flv rtmp://example.com</code></p>

<p>Also using the <code>filter_complex</code> I can create something near to a layer like this tutorial explains:
<a href="https://trac.ffmpeg.org/wiki/Create%20a%20mosaic%20out%20of%20several%20input%20videos" rel="nofollow">https://trac.ffmpeg.org/wiki/Create%20a%20mosaic%20out%20of%20several%20input%20videos</a></p>

<p>But I found the following problems:</p>

<ul>
<li>The streams that I create with ffmpeg only last until the video file is over, if I wanted to stream multiple video files (dynamic playlist) it would interrupt the stream between each file;</li>
<li>The manipulation is very limited as far as I am concerned, I can't edit <code>filter_complex</code> once ffmpeg is executing;</li>
<li>Can't display text and create animated overlays, like sliding text.</li>
</ul>

<p>I tried to search for any cli/nodejs package that is able to create a continuos video stream and manipulate it to use as input source for ffmpeg which streams to the RTMP server.</p>

<p>Can someone give me more information about what I am trying to do?</p>

<p>I'm playing with <code>github.com/fluent-ffmpeg/node-fluent-ffmpeg</code> to see if I have a different outcome.</p>