都得试一下,https://github.com/moeiscool/Shinobi
这个是一个完整的产品了,问题是它默认安装在Linux系统上,而我们项目是windows上的。虽然也能转,时间来不及。
Linux程序安装在windows上,我能考虑到的方法: 1.docker,2.虚拟机,3.源码重新编译
虚拟机应该是最简单的了,不过到时的网络问题就不知道怎样弄了。
在官网上有windows安装部分,先按官网的来 https://shinobi.video/docs/start
这里又有两种方式WSL(Windows Subsystem)安装和直接安装。
参考:Windows 10启用Linux子系统(WSL) 图文教程
----------------------------------------------------------------------------------------------------
找了一台Ubuntu电脑,安装,添加账户,添加摄像头没问题。
----------------------------------------------------------------------------------------------------
安装WSL的Ubuntu,然后安装Shinobi,发现好像需要下很多东西。
试了几次,Shinobi确实安装上了,网页也能打开,但是却无法添加账户。
看了一下日志,好像数据库没有装好。MariaDB。再试了几次,后来又装上了。
然后现在的问题感觉是数据库进不去。
现在安装的WSL的Ubuntu版本是:
把mariadb数据库删除了,
ps -aux里面还是那些,感觉数据库就没有启动起来。
-------------------------------------------------------------------------------------------------------
安装mariadb,参考:https://computingforgeeks.com/install-mariadb-10-on-ubuntu-18-04-and-centos-7/
本来参考https://www.cnblogs.com/vingi/articles/4300365.html,的,结果发现那个repository不安全。
而且,可能是前面安装过Shinobi的关系,其实不用设置前面的,直接按照mariadb-server也能装上的,但是,安装后怎么做就不知道了,也没有设置密码的地方。
前面安装Shinobi时倒是有问mariadb的密码的,其实我怀疑,会不会是这个密码不一致导致的无法进入数据库。
安装上面操作下来,结果还是
Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
发现/var/rum/mysqld文件夹里面是空的,而好的ubuntu电脑上的这个文件夹里面有mysqld.pid和mysqld.sock两个文件。
没解决,wsl不是很靠谱啊。
------------------------------------------------------------------------------------------------------------------------------------------------------
在虚拟机的ubuntu里面安装了Shinobi,通过虚拟机的端口映射来访问虚拟机里面的Shinobi,可以访问。
添加摄像头功能,Input部分设置 rtsp就可以了,
视频流的类型那里不知道该选哪个 FLV HLS肯定是不要的,也测试了一下 延迟严重。
Poseidon、H265视频不出来
JPEG能出来,延迟1-2s,丢帧严重
MJPEG,出不来,而且网页会卡住,过一段时间,出来一下。
Base64可以,但延迟1-2s。同时在相同电脑上,vlc测试时延迟差不多,但是网页里面有丢帧的情况。质量选项越好,丢帧越少。
总的来说,对比前面的go的那个,还是go的效果好。
不过那个go服务器一次只能登陆一个,另一个登录进去后,原来的就停住了。
-------------------------------------------------------------------------------------------------------
没有webrtc接口吗?
要用这个,客户端开发工作挺多的, 虽然技术上应该没问题,websocket传输Base64就行了。