My name is Shell, and I’d like to announce the first pre-release of my free software project, Keyframe - a self-hosted live video streaming server with integrated community features.
Keyframe is built on top of NixOS, as it is the perfect tool to integrate a number of different applications, scripts and servers under one configuration that can be shared with the world.
If you’re interested in learning more, I’ve written a blog post about how I came to build Keyframe and my plans for future development.
Hey @Shell, welcome to Discourse!
I wanted to learn a bit more about your project, how to use it and what your motivations are. The blog post currently gives me a 504 Gateway error unfortunately.
Massively sorry about that, my blog software is apparently not the most stable thing - I’ll try and work on that. Should be working now!
What type of latency are you able to get out of the setup?
You might want to work with hosting providers that provide un-metered bandwidth. It might also help you get some funding through referral.
I’ve managed to get to about 6 seconds of roundtrip latency with some tweaking on my previous setup on a VPS in London when I was in Edinburgh, but haven’t yet added those tweaks to Keyframe. Twitch provides about 2 seconds of latency (on supported platforms). The plan is to write a custom ingest server (Rust+GStreamer) anyway as nginx-rtmp-module is not well-maintained, so I’m not putting huge amounts of effort into nginx-rtmp-module.
FWIW Twitch’s low-latency mode relies on a custom private extension to HLS, which is why it only works on supported platforms using Twitch’s player.
I know Apple has a beta public extension for low-latency HLS but I haven’t read the details.