finds.dev← search

// the find

gwuhaolin/livego

★ 10,177 · Go · MIT · updated Dec 2025

live video streaming server in golang

livego is a self-hosted live video streaming server written in Go that handles RTMP ingest and re-serves streams over RTMP, HTTP-FLV, and HLS. It's a single binary you can drop in front of OBS or ffmpeg to build a YouTube-Live-style stack without depending on a commercial service. Aimed at developers who need a simple ingest point and don't want to run a full nginx-rtmp setup.

Single static binary with no runtime dependencies makes deployment trivial — Docker or bare metal, same story. The protocol stack is implemented from scratch in pure Go (RTMP, AMF, HLS, HTTP-FLV), so there's real educational value in the source and no C library hell. Channel key auth on push keeps random people from streaming to your server without additional infrastructure. CI includes CodeQL scanning, which is more than most hobby projects bother with.

No authentication on the playback side — anyone who knows the stream URL can watch, which rules it out for anything private without putting a reverse proxy in front. The channel key system is handed out via an unauthenticated HTTP endpoint (`/control/get?room=movie`), so the 'security' is just obscurity. Last meaningful feature work looks to have stalled years ago; the project handles RTMP/HLS but has no WebRTC path, so low-latency browser playback isn't on the table. Cluster/relay support exists via rtmprelay but there's no documentation for running it at any real scale and the config story is a single YAML file.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →