同步操作将从 rancedxk/monitor-rtsp-hls 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
视频监控RTSP转RTMP转HLS解决方案
由于公司业务,需要实现基于WEB访问监控摄像头实时流的预览,经过各种百度,补充了不少相关知识,了解到了很多大神的实现方法,也因为很多过时的帖子,而踩了不少的坑。
例如现在我要接入一台监控设备,那么接入步骤就是:
本程序其实逻辑很简单,就是将nginx和ffmpeg整合起来,一方面将rtsp通过ffmpeg转码生成切片,一方面通过nginx将切片代理出去(大神勿喷,我只是一个搬运工)。 既然是整合,我就在程序中会去控制启动或关闭nginx和ffmpeg,这方面处理的不够好,因为是通过命令窗口启动的服务,所以不可避免的用户可能随手就关掉窗口了,但是其实后台nginx.exe和ffmpeg.exe进程还在运行,所以想了个办法就是增加了一个stop.bat脚本,需要用户手动运行,该脚本的功能就是关闭这两个进程的。 有更好办法的大神,请不吝赐教!
其实也没啥大的调整,正好ffmpeg也支持rtmp,所以只是增加了一个判断处理而已
应一些使用者要求,本次增加了数据库存储监控设备的方式,建表语句db.sql文件在根目录,大家可参考,实现类是com.rancedxk.monitor.device.provider.impl.DbProvider,当然这个实现类仅供参考,大家可自行修改源码并按自己的业务来实现,config.properties中也增加了相应的配置信息供大家参考。 当然大家也可以实现自己的存储方式,比如基于redis或者其他
新增加了一个简单的接口,用来查询当前所有监控设备信息(其实就是从monitor.properties中获取或从数据库中获取的),接口地址:http://{IP}:{服务端口}/{服务context_path}/api/getAllDevices,返回格式:[{code:"dev1",title:"胡南卫视RTMP流",streamUrl:"rtmp://58.200.131.2:1935/livetv/hunantv"}]
新增加了一种拉流切片命令,详见config.properties中ffmpeg.cmd.rtsp配置项,参考这位博文的帖子:https://blog.csdn.net/y_f_raquelle/article/details/97549730 新命令和老命令都可以使用,大家在使用时可看情况,哪个好用用哪个就行
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。