# Q&A

# Q:流媒体服务器项目有很多,为什么要重复发明轮子?

A: Monibuca 不同于其他流媒体服务器的地方是,针对二次开发为目的。多数流媒体服务器,对于二次开发并不友好。 Monibuca 开创了插件机制,可以自由组合不同的协议或者功能,定制化特定需求的流媒体服务器。

# Q:Monibuca为何采用Golang为开发语言?

A:因为 Golang 语言相比其他语言可读性更强,代码简单易懂,更利于二次开发;另外 Golanggoroutine 特别适合开发高速系统。

# Q:Monibuca是否使用Cgo或者其他语言依赖库?

A:没有。 Monibuca 是纯 Go 语言开发,不依赖任何其他第三方库比如 FFmpeg ,方便二次开发。对部署更友好,仅仅需要 Golang 运行环境即可。

# Q:如果我要使用Monibuca,正确的流程是什么?

A: 首先安装 Monibuca ,具体可以查看文档。然后打开实例管理器界面,选择插件,创建实例。这个本质上就是建立了一个 Go 工程目录,这个工程引用了 Monibuca 核心库,以及插件库,插件库可以来自任何地方,如果没有满足当前需求的插件,那么可以自行开发一个插件作为业务逻辑插件。如何开发请查询文档。

# Q:Monibuca对环境有什么要求?直播流可以在微信里播放吗?

A:Monibuca 是基于 Golang 开发,支持跨平台部署。 Monibuca 可以用 Jessibuca 播放器在微信、手机浏览器里面播放视频。也可以通过其他 SDK 播放 RTMP 流、其他协议的流。只需要相应的插件支持即可。

# Q: Jessibuca是什么?

A: Jessibuca 是一款使用 Emscripten 编译的纯 H5 播放器,支持 H264H265 格式的直播流,[已开源](http://jessibuca.monibuca.com)

# Q: Monibuca的名称有什么特殊含义吗?

A: 这个单词来源于 Monica (莫妮卡)是个人名,在项目里面也存在这个文件夹。没有特别含义,为了解决起名的难题,使用了三个名称分别是 MonicaJessicaRebecca 用来代表服务器、播放器、推流器。由于莫妮卡、杰西卡、瑞贝卡,都带卡字,对直播来说寓意不好,所以改为莫妮不卡(Monibuca)、杰西不卡Jessibuca、瑞贝不卡(Rebebuca)。其中推流器 Rebebuca 目前尚为公布,是改造了的 OBS ,可用于推流 H265

# 使用过程中遇到的问题解答汇总

# 旧版本创建的实例,删除后,新版本报错了

实例没有删除干净,进入 ~/.monibuca 删除对应的配置文件

# 使用 @langhuihui/monica 时,对node版本要求是什么?

10.x 以上,推荐使用长期稳定版本

# npm i -g @langhuihui/monica 出现 fetchMetadata: sill fetchPackageMetaData error for ..

解决方法:换安装源,执行 npm config set registry https://registry.npm.taobao.org 更换成淘宝的源 然后再执行安装命令 npm i -g @langhuihui/monica

# cnpm i -g @langhuihui/monica,安装成功之后 启动 monica 出现 env: node\r: No such file or directory 报错

windows 使用 clrf(\n\r),导致 mac 等 linux 识别错了。

解决方案:

你进入 /usr/local/lib/node_modules/@langhuihui/monica/server 这个目录

然后 su root 开启管理员权限。

然后 vim index.js

然后

:set ff=unix
:wq!

然后再执行 monica

# 设置了正确可访问的 GOPROXY 创建实例,出现 dial tcp 172.217.27.145:443: i/o timeout

删除实例,多操作几次创建实例,应该是网络的问题

# root权限执行 npm i @langhuihui/monica -g 提示 安装esbuild无权限

解决方案在这个 issue 里:https://github.com/evanw/esbuild/issues/369

npm i @langhuihui/monica -g 后加 --unsafe-perm=true 即可

# 开启 root 后执行
npm i @langhuihui/monica -g --unsafe-perm=true

# mac 上 用 flv.js 打不开推流播放

已知问题,后续修复

Last Updated: 12/16/2020, 11:14:45 PM