monibuca

command module
v3.2.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 27, 2022 License: MIT Imports: 20 Imported by: 0

README

## 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. git clone https://github.com/langhuihui/monibuca
  2. go build && ./monibuca
  3. open your browser http://localhost:8080
  4. use ffmpeg or OBS to push video streaming to rtmp://localhost/live/user1

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

Build & Test with docker

development and testing only: IP and udp ports need to be exposed carefully in production.

docker build . -f dockerfile -t m7s:3.0
docker run --name m7s -p 1935:1935 -p 8081:8081 -p 8082:8082 -p 554:554 m7s:3.0

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.

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL