Feature Request: store files on disk instead of in memory #1785
Unanswered
naanlizard
asked this question in
Ideas
Replies: 1 comment
-
Thanks for the good idea. As you said, like most streaming servers of OvenMediaEngine, HTTP is implemented as an origin-level module and is not suitable for use as an edge. (It lacks features such as cache.) So we also integrate CDN when distributing HLS and LLHLS. But, For some modules like thumbnails, it's a good idea but LLHLS does not work properly just by storing files on disk. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
OME generates several types of files. For our purposes, we mostly just use thumbs and llhls files (m3u8, etc). It would be very convenient if OME were able to save stream files to a filesystem location (which could be a disk, ramdisk, you have a lot of options once this feature exists)
OME is an excellent streaming server, but not great as a web server - it's outclassed by nginx. This isn't an insult, it's just nginx has been around forever and extremely optimized very well. For example, when serving LLHLS from nginx + cache, CPU usage is fairly steady and low, but serve LLHLS from OME directly and you'll make your CPU cry.
But serving ~static files with nginx is about the easiest thing you can do. It also might make the DVR implementation easier/more scalable - instead of a special DVR related function, all streams by default would have a "DVR" of sorts - just keep putting the next segments into a folder, and update the playlist
For thumbnails and screenshot generation as well this could be useful, especially if you can timestamp the files saved.
At the moment we're dumping thumbs to disk with a simple bash script (e.g. wget ome/live/streamid/thumb.ext). When we tried serving thumbs from OME via nginx, something broke and it isn't immediately obvious what - I'll talk about it more eventually, gotta find time to run a stress test with ome/nginx on a non-prod server :)
Beta Was this translation helpful? Give feedback.
All reactions