使用c# .net core开发国标gb28181 sip +流媒体服务完成视频监控实例教程 亲身完美体验过程...
目前使用C# .net core 来实现国标gb28181标准的摄像头播放、ptz云台控制、视频回放等视频监控功能,项目可运行于linux/docker/.net core环境,也是当前非常罕有的能做到毫秒级国标gb28181公网视频传送案例,也是少有的能同时具有播放、ptz云台控制、视频回放功能的完整开源sip的项目。
使用方案:sip(GB28181.Solution c# .net core) + 流媒体服务器(srs/ZLMediaKit)
使用场景:直播、社区视频监控、视频AI分析、等需要用到把摄像头从内外转到外网访问使用的场景
全网也很难找得到完整教程,我2017年就开始买摄像头回来研究过一段时间,后来无果,最近因公司需要使用,再经过半年多的资料收集和不断的学习试错,找到正确的道路,免得大家走弯路。为大家分享,然后对c#的开发者带来惊喜,也共同为c#的发展作出贡献!
一、我的实现准备:
1、在淘宝购买一个ces服务器 centos系统作为流媒体测试机,低配置2核2M的,1200多一年,按月的话差不多300一个月
2、购设备:需要看清楚支持gb28181的,一个海康云台摄像机700多块
3、调试其间在本机windows调试,以后可以部署到linux,下载目前我参与的c#开源项目
https://github.com/GB28181/GB28181.Solution
用于作为sip server服务,可以进行对摄像机进行通过信令进行相关操作 ,编译环境vs2019(开源项目里,文档中的微信,可以进入该项目开源群,一起为这个项目做贡献,建议加入)
4、在centos服务器下载srs4.0,github地址:
https://github.com/winlinvip/srs (develop分支)
5、下载sip抓包工具 wireshark
下载地址:https://www.wireshark.org/#download
附带wireshark使用过程中可能会发生的内存占用大,卡机的解决办法
https://blog.csdn.net/qq_16005627/article/details/105603395
二、实现步骤
通过GB28181.Solution配置好srs的服务器地址和端口,项目的wintool运行起来,点直播放视频,在srs服务器上可以看到rtp流已经推上来,可以实现rmtp、webrtc(低延时实测2秒内)、flv、hls(m3u8)输出
然后通过vlc进行播放
1、打开GB28181.WinTool项目,配置 Config/gb28181.xml 主要配置好以下几个
SIP服务器ID 34020000002000000001
本机IP 127.0.0.1 (或我本机IP192.168.197.108)
本机服务端口 5061
2、对应在摄像机的配置如下:
3、在srs的github中查看srs的运行办法,运行srs,以下为我整理的简单易懂的指令
------------------------------------------
Step1:拉git代码,切换到开发分支
git clone https://gitee.com/winlinvip/srs.oschina.git srs &&
cd srs/trunk &&
git remote set-url origin https://github.com/ossrs/srs.git &&
git pull
Step2:切换到开发分支
git checkout develop &&
./configure --with-gb28181 &&
make clean && make
------------------------------------------------
以上srs安装完毕,修改两个配置
打开trunk/conf/push.gb28181.conf
auto_create_channel on;//原来off改为on
host 47.XX.XXX.118;//原来$CANDIDATE改为你的服务器ip
----------------------------------------------
运行
./objs/srs -c conf/push.gb28181.conf
4、然后启动项目GB28181.WinTool
5、到这一步,推流成功了,我们打开srs的测试http://ossrs.net/players/srs_gb28181.html 接口界面 ,可以实现rmtp、webrtc(低延时实测1秒内)、flv、hls(m3u8)输出,输入srs服务器IP进行播放
6、非常罕有的能做到毫秒级延迟国标gb28181公网视频传送案例
上面有相关操作步骤,肚饿了,本文章在后续我还有很多内容需要再补充和细化更新的,更多了解可以通过https://github.com/GB28181/GB28181.Solution项目,介绍内容中的“微信”加入开源群
微信扫描二维码,添加好友,进入微信讨论群(注明:GB28181+公司+姓名):
觉得好的同学,记得点个赞!
使用c# .net core开发国标gb28181 sip +流媒体服务完成视频监控实例教程 亲身完美体验过程...相关推荐
- 海康网络摄像机通过国标GB28181协议注册到视频平台EasyGBS后,如何在摄像机中关闭声音?
随着智慧城市的建设,安防摄像头在线下场景中的运用越来越广,而GB28181国标协议作为公共安全视频监控联网系统的国家标准,在平安城市.交通.道路等监控中广泛采用.大家可以这样理解:若想做统一的大监控平 ...
- Web 开发中应用 HTML5 技术的10个实例教程
HTML5 作为下一代网站开发技术,无论你是一个 Web 开发人员或者想探索新的平台的游戏开发者,都值得去研究.借助尖端功能,技术和 API,HTML5 允许你创建响应性.创新性.互动性以及令人惊叹的 ...
- GB28181《安全防范视频监控联网系统 信息传输、交换、控制技术要求》 一次下载全了
GB28181<安全防范视频监控联网系统 信息传输.交换.控制技术要求> 2011年正式版 http://download.csdn.net/detail/aflyeaglenku/940 ...
- Asp.Net Core Web Api图片上传及MongoDB存储实例教程(一)
图片或者文件上传相信大家在开发中应该都会用到吧,有的时候还要对图片生成缩略图.那么如何在Asp.Net Core Web Api实现图片上传存储以及生成缩略图呢?今天我就使用MongoDB作为图片存储 ...
- 【半译】在ASP.NET Core中创建内部使用作用域服务的Quartz.NET宿主服务
在我的上一篇文章<在ASP.NET Core中创建基于Quartz.NET托管服务轻松实现作业调度>,我展示了如何使用ASP.NET Core创建Quartz.NET托管服务并使用它来按计 ...
- 国标GB28181协议视频平台EasyGBS大并发下SIP消息出现重复SN号的解决办法
随着国家倡导平安城市.智慧城市的建设,安防视频监控作为智慧城市安防建设的重要环节,也越来越受到重视.EasyGBS是基于公安部推出的安防主流协议(国标GB28181协议)的视频接入.处理及分发平台,具 ...
- 国标GB28181协议国标设备是否可以同时接入多个国标GB28181平台进行视频直播、录像检索、回看
国标GB28181视频云服务EasyGBS是基于开放式.大融合.全兼容.标准化的设计架构理念,依据<安全防范视频监控联网系统信息传输.交换.控制技术要求>(GB/T 28181-2011/ ...
- 国标GB28181协议视频监控平台EasyGBS设备播放断流现象的排查分析及解决
EasyGBS平台基于国标GB28181协议,支持多路设备接入,并对多平台.多终端分发出RTSP.RTMP.FLV.HLS.WebRTC等多种格式的视频流.平台可为大数据等综合性监管平台提供极强的视频 ...
- 国标GB28181漫谈
GB/T28181-2011 <安全防范视频监控联网系统信息传输.交换.控制技术要求>是由公安部科技信息化局提出,由全国安全防范报警系统标准化技术委员会(SAC/TC100)归口,公安部一 ...
最新文章
- hdu1024 最大m子序列和
- Java 生成有序 UUID
- Android中的进程
- SQLServer 游标简介与使用说明[转]
- linux vi脚本,linux下vi(vim)的新的用法总结
- moodle安装图解
- 形式化验证(Formal verification)如何确保完美的智能合同?
- JAVA Reflect反射详解
- HEX编码、Base64编码
- hydrus1d使用说明_Hydrus-1D中文说明.doc
- D3.js 绘制带圆角的矩形 + 带箭头的指示线
- 亚马逊婴儿围栏CPC认证,ASTMF1004、ASTMF406、CPSIA测试标准办理
- 拿到已开发好的Vue前端代码如何在本地运行?
- 【海康威视】WPF客户端二次开发:【3】制作WPF/Winform安装包
- SonicWALL如何配置BGP
- 电化学氧气传感器寿命、工作原理及应用介绍
- 电感检测_开路检测电路中的贴片电感器
- 扬声器的特性以及一个奇怪的振荡器
- FSMC外设接口来外扩SRAM芯片、flash芯片
- CAD图纸转Word文件,看看这个方法你会吗?