flv直播流播放视频,websocket响应造成内存泄漏 浏览器崩溃
Posted 楠啊#
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flv直播流播放视频,websocket响应造成内存泄漏 浏览器崩溃相关的知识,希望对你有一定的参考价值。
项目现状:
问题:公司做了个监控设备的直播流大屏,技术使用了flv 和websocket,项目写好了,拿到他们那边使用运行了40分钟 浏览器崩溃了,报内存不足
## 解决思路一:第一个我想到的是flv视频拉流造成的内存泄漏,缓存的数据太多,看了flv介绍加了两个属性值定时清理缓存 拉流过程中浏览器内存占用太大
https://www.sohu.com/a/467054007_495695
autoCleanupMaxBackwardDuration :180,
autoCleanupMinBackwardDuration:60
在flv.js的较早版本中曾经发生或内存泄露,但在后续版本中作者已经修复了。如果还是觉得内存占用太大,可以试着降低 autoCleanupMaxBackwardDuration 和 autoCleanupMinBackwardDuration 这两个值,减少MSE缓存大小。它们的默认值分别是180秒和120秒,对于直播流而言,我觉得没有必要给这么大的值。
结果:反馈还是奔溃,坚持了差不多1小时的时间
解决思路二:第二个我想的是websocket 监控设备websocket 响应的太快了,更新数据造成的浏览器缓存大,在网上看了类似的,
结果 : 没有解决 ,网上说flv可能造成内存过载,websocket也会 但我都整了还是没用
甚至试过定时清除浏览器缓存 答案无效
都快人都整麻了,有没有大哥开导开导我,感激不尽
JavaCV音视频开发宝典:使用JavaCV和springBoot实现websocket-flv直播服务,无需流媒体服务,浏览器网页flv.js播放器直接播放rtsp,rtmp等实时视频
《JavaCV音视频开发宝典》专栏目录导航
《JavaCV音视频开发宝典》专栏介绍和目录
硬核注意:本文默认读者已经熟练掌握springboot和websocket的前置知识,并已基本掌握JavaCV音视频原理。
前言
前面我们已经讲了webm直播,http-flv直播,本章就直接开始动手实现websocket-flv直播。
关于flv格式的起源与发展等等基本知识在上一章:
《JavaCV音视频开发宝典:使用JavaCV和springBoot实现http-flv直播服务,无需流媒体服务,浏览器网页flv.js转封装方式播放rtsp,rtmp和桌面投屏实时画面》中基本上都讲过了,不再赘述,有兴趣的可以去看看。
websocket-flv是为了解决http-flv的一些弊端而出现的流媒体传输技术。
websocket-flv是要解决什么问题呢?
这就不得不提到浏览器的ht
以上是关于flv直播流播放视频,websocket响应造成内存泄漏 浏览器崩溃的主要内容,如果未能解决你的问题,请参考以下文章
JavaCV音视频开发宝典:使用JavaCV和springBoot实现websocket-flv直播服务,无需流媒体服务,浏览器网页flv.js播放器直接播放rtsp,rtmp等实时视频
JavaCV音视频开发宝典:使用JavaCV和springBoot实现websocket-flv直播服务,无需流媒体服务,浏览器网页flv.js播放器直接播放rtsp,rtmp等实时视频
基于vue的flv直播视频流播放插件(cstor-live-player)