Repolode
langhuihui

langhuihui/monibuca

A modular, extensible Go framework for building streaming media servers supporting RTMP, RTSP, HLS, WebRTC and more.

Stars
2,419
Forks
352
Open issues
22
Last commit
30 days ago

What is it?

Monibuca is a streaming server framework written in Go, designed so that functionality is loaded as plugins on demand. It handles ingest and distribution of live streams across protocols including RTMP, RTSP, HTTP-FLV, WS-FLV, HLS, WebRTC, SRT, GB28181 and ONVIF.

Beyond live forwarding, it provides recording to MP4, HLS and FLV, time-shift playback through a dynamic cache, screenshots, transcoding, stream aliases, and stream authentication. Cluster features include cascade relaying and room management, and a gRPC interface allows integration from other languages. WebHook callbacks report stream lifecycle events to business systems.

The project includes a Web UI served from an admin.zip file, Prometheus metrics at /api/metrics, and a build-tag system for choosing database backends such as SQLite, MySQL, PostgreSQL or DuckDB. Plugins can be developed to extend it, and the project is licensed under AGPL-3.0.

Key features

  • 01Plugin-based architecture where features are loaded on demand
  • 02Supports RTMP, RTSP, HTTP-FLV, HLS, WebRTC, SRT, GB28181 and ONVIF
  • 03Records streams to MP4, HLS and FLV with seeking and speed control
  • 04Live time-shift playback through a dynamic cache
  • 05Built-in gRPC interface, WebHook events and Prometheus metrics

Use cases

  • Building a custom live streaming platform or video surveillance backend
  • Relaying and distributing RTSP or RTMP camera streams to browsers over HLS or WebRTC
  • Recording live streams to MP4 or HLS for later playback
  • Integrating stream lifecycle events into an existing business system via WebHook

Topics

FAQ

What is monibuca?
A modular, extensible Go framework for building streaming media servers supporting RTMP, RTSP, HLS, WebRTC and more. Monibuca is a streaming server framework written in Go, designed so that functionality is loaded as plugins on demand. It handles ingest and distribution of live streams across protocols including RTMP, RTSP, HTTP-FLV, WS-FLV, HLS, WebRTC, SRT, GB28181 and ONVIF.
Is monibuca free to use? What license does it have?
monibuca is open source under the AGPL-3.0 license. Check the license terms before using it in commercial products.
Is monibuca still maintained?
Actively maintained. The last commit to monibuca was on Sep 22, 2026.
What can I use monibuca for?
Building a custom live streaming platform or video surveillance backend Relaying and distributing RTSP or RTMP camera streams to browsers over HLS or WebRTC Recording live streams to MP4 or HLS for later playback Integrating stream lifecycle events into an existing business system via WebHook
Where can I get monibuca?
The source code and installation instructions are on GitHub: https://github.com/langhuihui/monibuca

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects