您现在的位置是:首页 > 文章详情

Monibuca v4.6.1 发布—— 开源 Go 语言流媒体开发框架

日期:2023-06-05点击:830
  • 通过官网下载二进制文件

  • 或者 git clone https://github.com/langhuihui/monibuca

获得最新版

1 新增LL-HLS支持

该协议为苹果公司推出的低延迟HLS协议,本次更新新增了对该协议播放支持。 同rtsp库一样,采用了第三方库来实现:github.com/bluenviron/gohlslib

1.1 使用方法

通过访问形如http://localhost:8080/llhls/live/test/index.m3u8来播放。 其中live/test为streamPath,可以替换成实际的值

1.2 插件配置

在llhls下可以配置http配置,用于修改端口号。插件配置方式可以参考文档

1.3 源码说明

llhls相关代码位于github.com/Monibuca/plugin-hlsllhls.go 中。hls和llhls两个插件共用一个代码仓库,因此引入hls时也同时引入了llhls插件。

2 新增HLS.js测试页面

HLS.js测试页面是将hls.js的编译后的代码嵌入到了hls插件仓库中,以方便调试hls流使用。

2.1 访问地址

http://localhost:8080/hls/index.html

该页面也可以用于测试llhls

3 新增对RTMPS协议支持

该协议为RTMP协议的衍生协议,是在TCP基础上增加了TLS安全加固,原理类似HTTPS。 该协议支持是rtmp插件的增强。需要通过配置TLS端口来开启该功能。

3.1 配置

 rtmp:   tcp:     listenaddrtls: :4443 

3.2 推流测试

 ffmpeg -i source -f flv rtmps://localhost:4443/live/test 

如果配置成443端口,则可以省略端口号

3.3 对外推拉流

已经支持,既可以在配置pull或者push中使用rtmps的远程地址

4 其他更新内容

4.1 优化了HLS纯转发模式的资源消耗

当只需要将HLS拉流转发时,可以使用纯转发模式 纯转发模式由于不需要解析HLS协议中的TS格式,因此对资源消耗比较小。 通过配置HLS插件的 relaymode: 1开启

4.2 修复了当开启时光回溯功能时的内存泄漏

具体原因是,在进行时间戳判断时忽略了当时间戳超过最大值时的情况,导致ringbuffer无限扩大

所谓时光回溯功能,是指可以缓存较多的数据,以订阅当前画面更早一些的画面 通过配置publish配置中的buffertime来开启时光回溯 订阅流时需要指定订阅模式,即需要在订阅时加参数?mode=2 如果需要修改参数名称(有时可能会有冲突,可以通过配置submodeargname 来改变

4.3 WebRTC插件测试页面运行URL中带有参数

为了更方便测试WebRTC功能,允许在访问测试页面时,带上参数

4.3.1 推流测试页面

http://localhost:8080/webrtc/test/publish?streamPath=live/test 可以推送到live/test。不传该参数则推送到live/webrtc

测试房间功能是也可以带上token参数

4.3.2 播放测试页面

http://localhost:8080/webrtc/test/subscribe?streamPath=live/test 可以订阅live/test的流。不传该参数则订阅live/webrtc

4.4 Stream中增加NeverTimeout属性

该属性设置成true可以是的流不再判断超时,保持流永远存活,其目的是有些流并不会产生AudioTrack和VideoTrack,比如纯转发流,或者Room的用于广播消息的流,此时可以在发布成功后,对流设置这个属性

原文链接:https://www.oschina.net/news/243818/monibuca-4-6-1-released
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章