Can Simple Realtime Server output a VOD of the user's video?

506 Views Asked by At

I'm currently learning how to use SRS and I believe it will mostly fit my needs. However, I need to be able to create a VOD (video on demand) of the user's live video. How would I accomplish this?

Thanks! AJ

1

There are 1 best solutions below

2
On BEST ANSWER

SRS is a realtime server, design for life streaming and WebRTC. While VoD(Video on Demand) is delivered by file-based web server, like Nginx or ATS, because Vod is actually files, whatever HLS, MP4 or DASH.

Very glad SRS fits your need, and you really need a set of tools to build your video platform, which normally should support live streaming, video conference and VoD.

Apart from Vod, the HLS for live streaming, should also be delivered by file based servers, because HLS is also file based protocol, see NGINX HLS Cluster, although it's generated by SRS or FFmpeg.

Let's see the stream flow:

Encoder -RTMP-> SRS -+-> RTMP/HTTP-FLV --------> Live Player(flv.js/fijkplayer)
FFmpeg/OBS           |
                     |
                     |
                     +--RTMP-> FFmpeg -> HLS/MP4 --+
                     |                             |  (file-based)  (Live/Vod)
                     +-->HLS/FLV/MP4---->----------+-> web servers --> Player

Please keep in mind that:

  • SRS is designed for streaming, like RTMP/HTTP-FLV/WebRTC/SRT etc.
  • Although SRS could covert RTMP to HLS/FLV/MP4, but FFmpeg also could do this, and please use file-based web server like Nginx or ATS to deliver the files of HLS/DASH, see NGINX HLS Cluster.
  • VoD should directly use file-based web server to deliver, it's simple, see NGINX HLS Cluster. Please never use SRS to do this.