程序开发实例 / 网络与系统 · 2020年9月15日 0

完整直播解决方案,推流,拉流开发

最近接到一个需求,制作独立,自主可控的直播平台

直播分为三个部分,推流端,平台处理,客户端或网页拉流播放,

  • 推流,电脑端我选择的是OBS,电脑直播神器,配置简单,该有的功能都有,不该有的功能也有
OBS推流
OBS推流1
OBS推流设置
OBS推流设置
OBS推流地址
OBS推流地址
OBS推流码率
OBS推流码率
OBS推流音频
OBS推流音频

https://github.com/illuspas/Node-Media-Server

非常强大,功能很多,基于node,docker也能用,但是中文文档和英文文档不一样,英文文档更全一些…莫名其妙?

中文文档:https://github.com/illuspas/Node-Media-Server/blob/master/README_CN.md

英文文档:https://github.com/illuspas/Node-Media-Server/blob/master/README.md

除此之外,还接入了一些api,一起贴出来(贴出的api在开源项目中并没有,笔者使用的是付费版,付费版链接为:https://www.nodemedia.cn/,api文档:https://www.nodemedia.cn/doc/web/#/5?page_id=24

api示例代码放在文章最后

控制面板代码
控制面板代码
控制面板代码-获取流
控制面板代码-获取流
控制面板代码-强制断开流
控制面板代码-强制断开流
  • 播放端,最终选择了b站的flv.js,延时也还行,浏览器开销也低
实时播放
实时播放

项目地址:https://github.com/bilibili/flv.js

  • 最后,应要求,还加入了实时评论功能,用的是奥点云TIS实时消息队列

开发文档:https://www.aodianyun.com/aodianyun_doc/244