-
通过官网下载二进制文件
-
或者
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-hls」 的 「llhls.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的用于广播消息的流,此时可以在发布成功后,对流设置这个属性
还没有评论,来说两句吧...