# Monibuca **Repository Path**: dockingwork/Monibuca ## Basic Information - **Project Name**: Monibuca - **Description**: Monibuca 是一个开源的流媒体服务器开发框架,适用于快速定制化开发流媒体服务器,可以对接CDN厂商,作为回源服务器,也可以自己搭建集群部署环境 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: 3.0 - **Homepage**: https://www.oschina.net/p/Monibuca - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 52 - **Created**: 2021-08-02 - **Last Updated**: 2021-08-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## 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](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. [plugin-rtmp]: https://github.com/Monibuca/plugin-rtmp [plugin-rtsp]: https://github.com/Monibuca/plugin-rtsp [plugin-hls]:https://github.com/Monibuca/hlspplugin [plugin-ts]:https://github.com/Monibuca/tspplugin [plugin-hdl]:https://github.com/Monibuca/plugin-hdl [plugin-gateway]:https://github.com/Monibuca/plugin-gateway [plugin-record]:https://github.com/Monibuca/plugin-record [plugin-cluster]:https://github.com/Monibuca/plugin-cluster [plugin-jesscia]:https://github.com/Monibuca/plugin-jesscia [plugin-logrotate]:https://github.com/Monibuca/plugin-logrotate [plugin-rtp]:https://github.com/Monibuca/plugin-rtp [plugin-webrtc]:https://github.com/Monibuca/plugin-webrtc [plugin-gb28181]:https://github.com/Monibuca/plugin-gb28181 # 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](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.