syadnom 24 Posted November 25, 2019 Share Posted November 25, 2019 I'm working on ways to distribute videos efficiently and timely. One big issue is that BIG video files are a real hassle to distribute in a timely manner and require a whole lot of waiting around even using resiliosync or rsync etc. By allowing videos to be put into a folder with the Movie/Episode name and an m3u8 index file and HLS or MPEG-DASH encoding a few advantages and some bonus features become available. 1) The small files are much easier to sync 2) The beginning starts arriving and is playable right away 3) If multiple encoding are in the m3u8 file, then the client could select it's own stream sans any Emby transcoding efforts. bonus m3u8 indexes can have full URLs to video files, which means video chunks could be hosted on a webservers and effectively distributed, or roll-our-own CDNs can be made and simple DNS round robin for video files can be implemented in the HLS files. Link to comment Share on other sites More sharing options...
Solution Luke 37008 Posted November 25, 2019 Solution Share Posted November 25, 2019 Hi, there isn't native support for this, but maybe it will work via strm files and having the .strm point to the main manifest. 1 Link to comment Share on other sites More sharing options...
syadnom 24 Posted November 25, 2019 Author Share Posted November 25, 2019 wow @@Luke, that absolutely worked with no effort whatsoever. Pasted my HLS URL into a file /Movies/MovieName/MovieName.strm, scanned the Movies folder and boom, it was there. So to test my theory here, I've just starting encoding the HLS chunks with ffmpeg and scanned the movie folder. It was quite happy picking up the movie just by the filename being there. I open up and hit play and I'm watching the chunks just barely behind my encode, like butter.So, I changed the URL up to point through my squid proxy and boom, squid caches the .ts parts. Then I start an rsync off to a remote web server sitting in AWS and I update the URL to point there. Works like a champ. Best hidden feature ever. Now, I'm not sure how Emby works here, I'm assuming that Emby is consuming the media and wont/cant direct stream it to the client device right? ie, this trick really doesn't mean I can encode multiple resolutions and be able to skip Emby in the data path right? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now