I regularly follow livestreams on the website picarto.tv. The website uses RTMP for streaming, and therefore requires flash to show the video source. Many (mobile/embedded) devices don't have flash though so I want to have the video in a format like MP4.
I have a dualcore VPS running Ubuntu 14.04 with 2GB of RAM that I want to use to transcode the video in real time. The VPS has an 1Gbps network link so bandwidth isn't a real issue, though it's limited to 500GB per month.
What I want is to be able to do is:
- Watch the stream on my phone/tablet/smart tv/non-flash device
- Allow up to at least 10-15 devices to watch the video at the same time
- Therefore, I want to prevent spawning a transcoding thread for each client device
- Using an MP4 streaming output seems like the best idea, because most devices support it
ffmpeg to convert the RTMP to MP4, but that only allows for one client. All
cvlc commands I have found either are too intensive for my server or don't produce any video output at all.
ffserver kind of worked, but it was too unstable and it is no longer maintained. It gave me vague errors that couldn't be traced to any real cause and sometimes it gave me no output at all without anything in the logs.
Is there any tool (like
ffserver but maintained) or some other method for me to provide an MP4 version of an RTMP stream, in a decode-once, stream-to-many kind of way?