前端显示rtsp流的几种方案

1. rtsp2html5

优点: cpu占用低
缺点: 延迟高
参考链接: https://github.com/ralphhughes/Rtsp2Html5
依赖: nodejs ffmpeg

原代码里填的是固定值,我稍微改造了一下,改成传递一个rtsp流地址然后去获取流

2. rtsp->nginx->rtmp

优点: cpu占用低
缺点: 延迟高,不能动态传流
依赖: nginx ffmpeg
参考链接: https://blog.csdn.net/zx763/article/details/83002528

配置文件就不贴了,我不太喜欢这种方式,因为每次都要开个ffmpeg命令很麻烦,而且我尝试过 延迟还是高的

3. opencv

优点: cpu占用高
缺点: 延迟低
依赖: opencv flask(或其他服务框架)
参考链接: https://www.cnblogs.com/arkenstone/p/7159615.html

cpu占用高,开多了是个问题

4. 海康http接口

优点: cpu占用低,延迟低
缺点: 帧数低,有http接口才可
依赖: hikvisionapi flask(或其他服务框架)
参考链接: https://pypi.org/project/hikvisionapi/

帧数不高,一次http访问大概在0.15s左右,然后我碰到的问题是linux下,开两个窗口,然后关闭其中一个,另一个就会timeout,windows下不会有这个问题,不知道为何

5. gstreamer

优点: 延迟低
缺点: cpu占用一般
依赖: gstreamer flask(或其他服务框架)
参考链接: https://github.com/sahilparekh/GStreamer-Python

延迟低(针对rtsp流,非实际),cpu占用还行,比较推荐,但实际部署中发现部分rtsp流读不了,会报错,不知为何

6. 海康sdk

参考链接: https://blog.csdn.net/ustczhang/article/details/79030715
原文用codeblocks编译的,因为我没有gui,所以写成了setup.py文件,编译通过了,信息显示登录和取流也成功了,但是出现error happend,c++较弱,没有继续调试。

git地址

https://github.com/cooko107/Rtsp2Web
里面有rstp2html5的改造版 gstreamer,http版示例代码和SDK版编译需要的文件 欢迎star 还有其他方案的话欢迎交流 谢谢

你可能感兴趣的:(前端显示rtsp流的几种方案)