Awesome Open Source
Awesome Open Source

## Stargazers over time

Introduction

🧩 Monibuca is a Modularized, Extensible framework for building Streaming Server.

  • Customize the server by combining function plug-ins.
  • It's easy to develop plug-ins to implement business logic.
  • Reduce enterprise development cost and improve development efficiency

Quick start

Go has not been installed

bash <(curl -s -S -L https://monibuca.com/go.sh)

Go is already installed

  1. go get github.com/langhuihui/monibuca
  2. $GOPATH/bin/monibuca
  3. open your browser http://localhost:8081
  4. use ffmpeg or OBS to push video streaming to rtmp://localhost/live/user1

Advanced

Nodejs has not been installed

bash <(curl -s -S -L https://monibuca.com/monica.sh)

Nodejs is already installed

  1. npm i -g @langhuihui/monica
  2. monica
  3. open your browser http://localhost:3000
  4. follow the guide to create your project

Ecosystem

go to https://plugins.monibuca.com. to submit your own plugin

Project Description
plugin-rtmp rtmp protocol support.push rtmp stream to monibuca.play stream from monibuca.
plugin-rtsp rtsp protocol support.pull/push rtsp stream to monibuca
plugin-hls pull hls stream to monibuca
plugin-ts used by plugin-hls. read ts file to publish
plugin-hdl http-flv protocol support. pull http-flv stream from monibuca
plugin-gateway a console and dashboard to display information and status of monibuca ,also can display UI of other plugins
plugin-record record multimedia stream to flv files
plugin-cluster cascade transmission of multimedia by cluster network
plugin-jesscia play multimedia stream through websocket protocol
plugin-logrotate split log files by date or size
plugin-rtp used by plugin-webrtc and plugin-rtsp
plugin-webrtc webrtc protocol support. push webrtc stream to monibuca or pull webrtc stream from monibuca
plugin-gb28181 gb28181 protocol support.

Protocol Functions

Protocol Pusher(push)-->Monibuca Source-->Monibuca(pull) Monibuca-->Player(pull) Monibuca(push)-->Other Server
rtmp ✔ ✔
rtsp ✔ ✔
http-flv ✔
hls ✔ ✔
ws-flv ✔
webrtc ✔ ✔

Documentation

中文文档: http://docs.monibuca.com.

Q&A

Q: There are so many streaming server projects in the world,why need to create Monibuca?

A: Monibuca is different from other streaming servers,that it was created for facilitate secondary development.

Q: Why use golang?

A: Golang is a greate programming language. It is very suited to build streaming server since streaming server is a kind of IO intensive system. Goroutine is good at doing these jobs. Another important reason of using Golang is that people read the source code or doing secondary development easier.

Q: What does "Monibuca" mean?

A: No special meaning. Just from monica —— a girl name.


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
go (14,468) 
websocket (441) 
webrtc (328) 
hls (117) 
rtmp (89) 
rtsp (64) 
livestream (44) 
ts (44) 
rtp (33) 
flv (25) 
hdl (18) 

Find Open Source By Browsing 7,000 Topics Across 59 Categories

Advertising 📦 10
All Projects
Application Programming Interfaces 📦 124
Applications 📦 192
Artificial Intelligence 📦 78
Blockchain 📦 73
Build Tools 📦 113
Cloud Computing 📦 80
Code Quality 📦 28
Collaboration 📦 32
Command Line Interface 📦 49
Community 📦 83
Companies 📦 60
Compilers 📦 63
Computer Science 📦 80
Configuration Management 📦 42
Content Management 📦 175
Control Flow 📦 213
Data Formats 📦 78
Data Processing 📦 276
Data Storage 📦 135
Economics 📦 64
Frameworks 📦 215
Games 📦 129
Graphics 📦 110
Hardware 📦 152
Integrated Development Environments 📦 49
Learning Resources 📦 166
Legal 📦 29
Libraries 📦 129
Lists Of Projects 📦 22
Machine Learning 📦 347
Mapping 📦 64
Marketing 📦 15
Mathematics 📦 55
Media 📦 239
Messaging 📦 98
Networking 📦 315
Operating Systems 📦 89
Operations 📦 121
Package Managers 📦 55
Programming Languages 📦 245
Runtime Environments 📦 100
Science 📦 42
Security 📦 396
Social Media 📦 27
Software Architecture 📦 72
Software Development 📦 72
Software Performance 📦 58
Software Quality 📦 133
Text Editors 📦 49
Text Processing 📦 136
User Interface 📦 330
User Interface Components 📦 514
Version Control 📦 30
Virtualization 📦 71
Web Browsers 📦 42
Web Servers 📦 26
Web User Interface 📦 210