使用c# .net core开发sip国标gb28181+流媒体服务配合完成视频监控开发,亲身完美体验过程

       目前使用C# .net core 来开发sip协议实现国标gb28181摄像头播放、ptz云台控制、视频回放等视频监控功能,可运行于linux/docker/.net core环境。

使用场景:直播、社区视频监控、视频AI分析、等需要用到把摄像头从内外转到外网访问使用的场景

     全网也很难找得到完整教程,我2017年就开始买摄像头回来研究过一段时间,后来无果,最近因公司需要使用,再经过半年多的资料收集和不断的学习试错,找到正确的道理-捷径,为大家分享,然后对c#的开发者带来惊喜,也共同为c#的发展作出贡献,也希望得到大家打赏!

一、我的实现准备:

1、在淘宝购买一个linux  ces服务器作为流媒体测试机,低配置2核2M的,1200多一年,按月的话差不多300一个月

2、购设备:需要看清楚支持gb28181的,一个海康云台摄像机700多块,一个海康的NVR -700多块

3、调试其间在本机windows调试,以后可以部署到linux,下载目前我参与的c#开源项目

https://gitee.com/yihong777/GB28181.Solution

用于作为sip server服务,可以进行对摄像机进行通过信令进行相关操作 ,编译环境vs2019,加我微信进入该项目开源群,一起为这个项目做贡献。

4、在linux服务器下载srs4.0,github地址: 

https://github.com/winlinvip/srs  (develop分支)

5、下载sip抓包工具 wireshark  

下载地址:https://www.wireshark.org/#download

附带wireshark使用过程中可能会发生的内存占用大,卡机的解决办法

https://blog.****.net/qq_16005627/article/details/105603395

 

二、实现步骤

通过GB28181.Solution配置好srs的服务器地址和端口,项目的wintool运行起来,点直播放视频,在srs服务器上可以看到rtp流已经推上来,可以实现rmtp、webrtc(低延时实测2秒内)输出

然后通过vlc进行播放

 

 

上面有相关操作步骤,肚饿了,本文章在后续我还有很多内容需要再补充和细化更新的,或加我微信(输入c# gb28181),进入项目的开源群

 

使用c# .net core开发sip国标gb28181+流媒体服务配合完成视频监控开发,亲身完美体验过程