在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:monitor-rtsp-hls开源软件地址:https://gitee.com/rancedxk/monitor-rtsp-hls开源软件介绍:monitor-rtsp-hls介绍视频监控RTSP转RTMP转HLS解决方案 由于公司业务,需要实现基于WEB访问监控摄像头实时流的预览,经过各种百度,补充了不少相关知识,了解到了很多大神的实现方法,也因为很多过时的帖子,而踩了不少的坑。 使用说明
使用举例例如现在我要接入一台监控设备,那么接入步骤就是:
原理说明本程序其实逻辑很简单,就是将nginx和ffmpeg整合起来,一方面将rtsp通过ffmpeg转码生成切片,一方面通过nginx将切片代理出去(大神勿喷,我只是一个搬运工)。既然是整合,我就在程序中会去控制启动或关闭nginx和ffmpeg,这方面处理的不够好,因为是通过命令窗口启动的服务,所以不可避免的用户可能随手就关掉窗口了,但是其实后台nginx.exe和ffmpeg.exe进程还在运行,所以想了个办法就是增加了一个stop.bat脚本,需要用户手动运行,该脚本的功能就是关闭这两个进程的。有更好办法的大神,请不吝赐教! 奉上整理的几个厂家(主要是海康、大华和宇视)RTSP地址格式更新记录20210101 增加RTMP流支持其实也没啥大的调整,正好ffmpeg也支持rtmp,所以只是增加了一个判断处理而已 20210618 增加数据库存储监控设备信息的方式应一些使用者要求,本次增加了数据库存储监控设备的方式,建表语句db.sql文件在根目录,大家可参考,实现类是com.rancedxk.monitor.device.provider.impl.DbProvider,当然这个实现类仅供参考,大家可自行修改源码并按自己的业务来实现,config.properties中也增加了相应的配置信息供大家参考。当然大家也可以实现自己的存储方式,比如基于redis或者其他 20210618 增加设备信息查询接口新增加了一个简单的接口,用来查询当前所有监控设备信息(其实就是从monitor.properties中获取或从数据库中获取的),接口地址:http://{IP}:{服务端口}/{服务context_path}/api/getAllDevices,返回格式:[{code:"dev1",title:"胡南卫视RTMP流",streamUrl:"rtmp://58.200.131.2:1935/livetv/hunantv"}] 感谢
联系方式请我吃碗螺丝粉吧 |
请发表评论