1

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 Answers1

0

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.
Henry Ecker
  • 34,399
  • 18
  • 41
  • 57
Winlin
  • 1,136
  • 6
  • 25
  • If I use HLS, will all of the data be stored in the files or will only a few minutes be stored? – AJ Keresztes Jan 19 '22 at 14:06
  • @AJKeresztes Please follow the [wiki](https://github.com/ossrs/srs/wiki/v4_EN_DeliveryHLS), which has already described the hls window managment. – Winlin Jan 20 '22 at 01:12