Git Product home page Git Product logo

monibuca's Introduction

## 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

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.

monibuca's People

Contributors

langhuihui avatar mask-pp avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.