Skip to content

Monibuca

Pure Go open-source one-stop streaming media server development framework

v5

High Performance

Lock-free design, partial manual memory management, multi-core computing

Low Latency

Zero-wait forwarding, sub-second end-to-end latency

Observability

Comprehensive monitoring, logging, and diagnostic capabilities

Plugin-Based

Load on demand, unlimited extensibility

AI Capabilities

Integrated ONNX inference engine, support for custom processing

Media Processing

Support for screenshots, transcoding, SEI data processing

Architecture

Visualization

Admin

Functional Plugins

transcode
crypto
cascade
sei
onvif
ai
...

Protocol Plugins

rtmp
rtsp
webrtc
gb28181
hls
flv
...

Utility Plugins

logrotate
debug
monitor
hook
stress

Core

Ring Buffer
Task System
Plugin System
Memory Pool
Pub-Sub
Alias System

Database

SQLite
MySQL
PostgreSQL
DuckDB
...

Core Features

Media Processing

Support for screenshots, transcoding, SEI data processing

Preview Functionality

Support for video preview, split-screen preview, custom split-screen

Performance Monitoring

Support for stress testing and performance metrics collection

Log Management

Log rotation, automatic cleanup, custom extensions

Recording & Playback

Support for MP4, HLS, FLV format recording, speed playback, drag-and-fast-forward

Dynamic Timeshift

Dynamic cache design, support for live timeshift playback

Remote Call

Support for gRPC interface, convenient for cross-language integration

Stream Alias

Support for dynamically setting stream aliases, flexible management of multiple streams

AI Capabilities

Integrated inference engine, support for ONNX models and custom processing

WebHook

Support for subscribing to stream lifecycle events, enabling business system linkage

Private Protocol

Support for custom private protocols to meet special business needs

Multi-Protocol Support

RTMP, RTSP, HTTP-FLV, WS-FLV, HLS, WebRTC, GB28181, ONVIF, SRT

Quick Start

Installation
# Clone repository
git clone https://github.com/langhuihui/monibuca.git

# Enter example directory
cd monibuca/example/default

# Run with default configuration
go run -tags sqlite main.go

# Access admin interface
# Place admin.zip in the same directory as config file
# Visit http://localhost:8080

Version Information

Free Version

  • Complete core functionality
  • Basic plugin support
  • Community support
  • Non-commercial use only
  • Admin source code not included

Commercial Version

  • Complete core functionality
  • All plugin support
  • Commercial technical support
  • Commercial authorization
  • Admin source code (sold separately)

For commercial licensing details, please contact:support@monibuca.com

Official Plugins

📹 Protocol Plugins

  • RTMP - RTMP protocol for streaming
  • RTSP - RTSP protocol for streaming
  • HLS - HLS protocol for live and VOD
  • WebRTC - WebRTC protocol for low latency
  • GB28181 - GB28181 protocol support
  • ONVIF - ONVIF protocol device access
  • SRT - SRT protocol transmission
  • FLV - HTTP-FLV and WebSocket-FLV

📱 Feature Plugins

  • Preview - Video preview and split-screen
  • Room - Room management and cascade
  • SEI - SEI data processing
  • Snap - Video frame capture
  • Transcode - Video transcoding
  • MP4 - MP4 recording and playback

🛠️ System Plugins

  • Monitor - System monitoring
  • Debug - Debug tools
  • LogRotate - Log rotation
  • Stress - Stress testing
  • Crypto - Encrypted transmission
  • Cascade - Cascade functionality

Released under the AGPL License