使用AKStream对接gb28181

优点:功能比较多,C#开发的,容易修改,内嵌入了zlmk流媒体服务品,启动简单

缺点:sip对摄像头兼容还有问题,大华接入非常不稳定,注册等待时间久,对海康是正常,占用内存相对 m7s大很多

部署,代码git下载回来后,用visual stuio 进行编译打包为两个目录

AKStreamKeeper

AKStreamWeb

上传到ubuntu

7c9d1b689db14767bfee6fd66e037529.png

安装好zlmediaKit 安装方法见官方

安装ffmpeg

 

AKStreamKeeper.json配置

{
  "IpV4Address": "3.39.58.47本地外网IP",
  "IpV6Address": "fe80::5054:ff:feca:ac1e",
  "Candidate":"3.39.58.47本地外网IP",
  "WebApiPort": 6880,
  "MediaServerPath": "/root/ZLMediaKit/ZLMediaKit/release/linux/Debug/MediaServer",
  "AkStreamWebRegisterUrl": "http://(AKStreamWeb所在服务器IP)59.5.26.18:5800/MediaServer/WebHook/MediaServerKeepAlive",
  "CutMergeFilePath": "/usr/video/CutMergeFile",
  "CustomRecordPathList": [
    "/usr/video/Downloads"
  ],
  "UseSsl": false,
  "MinRtpPort": 10001,
  "MaxRtpPort": 20000,
  "MinSendRtpPort": 20002,
  "MaxSendRtpPort": 20200,
  "RandomPort": true,
  "FFmpegPath": "/usr/bin/ffmpeg",
  "AccessKey": "047I4WS1-U51UBO6W-1J4BT21P-MF17IT99-92J8WIHU-944Q4KIW",
  "RtpPortCdTime": 3600,
  "HttpClientTimeoutSec": 5,
  "DisableShell": false,
  "CheckLinuxDiskMount": false,
  "ZLMediakitSSLFilePath": "./sslfiles/",
  "ListenIp": "0.0.0.0",
  "EnableRtspAuth": false
}

 

AKStreamWeb 我部署在另外一台服务器了,配置

AKStreamWeb.json

{
  "MediaServerFirstToRestart": true,
  "DbType": "MySql",
  "OrmConnStr": "Data Source=59.5.26.18;Port=101;User ID=yju;Password=yu23Z; Initial Catalog=ASKDB;Charset=utf8; SslMode=none;Min pool size=1",
  "WebApiPort": 5800,
  "AccessKey": "047I4WS1-U51UBO6W-1J4BT21P-MF17IT99-92J8WIHU-944Q4KIW",
  "HttpClientTimeoutSec": 5,
  "WaitEventTimeOutMSec": 10000,
  "WaitSipRequestTimeOutMSec": 5000,
  "DeletedRecordsExpiredDays": 30,
  "EnableGB28181Server": true,
  "EnableGB28181Client": true,
  "ZlmFlvPrefix": "live",
  "ListenIp": "0.0.0.0",
  "ForwardUnmanagedRtmpRtspRtcStream": true,
  "LocalizationKingBaseDb": false,
  "ForwardUrlIn": "http://",
  "ForwardUrlOut": "http://",
  "ForwardUrlOnRecord": "http://",
  "PushStreamIpGetUrl": ""
}

SipClientConfig.json

{
  "LocalIpAddress": "59.5.26.18",
  "LocalPort": 5061,
  "SipServerIpAddress": "59.5.26.18",
  "SipServerPort": 5060,
  "SipServerDeviceId": "34020000002000000001",
  "Realm": "3402000000",
  "SipUsername": "admin",
  "SipPassword": "123#@!qwe",
  "KeepAliveInterval": 30,
  "KeepAliveLostNumber": 3,
  "SipDeviceId": "34020000001310000001",
  "Expiry": 3600,
  "EncodingType": "UTF8",
  "AkstreamWebHttpUrl": "http://59.5.26.18:5800/SipClient"
}

SipServerConfig.json

{
  "SipIpAddress": "3.39.58.47(AKStreamKeeper服务器IP)",
  "SipIpV6Address": "fe80::5054:ff:feca:ac1e",
  "ServerSipDeviceId": "34020000002000000001",
  "SipPort": 5060,
  "Realm": "3402000000",
  "GbVersion": "GB-2016",
  "Authentication": false,
  "SipUsername": "admin",
  "SipPassword": "123#@!qwe",
  "MsgProtocol": "TCP",
  "KeepAliveInterval": 30,
  "KeepAliveLostNumber": 3,
  "IpV6Enable": false,
  "EncodingType": "UTF8",
  "IsPassive": true,
  "ListenIp": "0.0.0.0",
  "NoAuthenticationRequireds": [
    {
      "IpV4Address": "3.39.58.47",
      "IpV6Address": "fe80::5054:ff:feca:ac1e",
      "DeviceId": "33020000021180000001"
    }
  ]
}

配置好了

 

三、安装前端界面 AKStreamNVR

https://gitee.com/sscboshi/AKStreamNVR#https://gitee.com/link?target=http%3A%2F%2Fakstream.govfun.com%3A10059%2F

注意看github上面的 wiki安装说明

173a75d963854846b579d03cde7780e3.png

 

运 行

8c7f867d58e64abaaaf5c22a2de5a0af.png

 

 

摄像头配置

973281d69cfc46a7bc4243ea49dc2bf1.png

 

 

1、支持国标GB28181平台、国标GB28181 IPC和国标GB28181 NVR设备同时接入 (支持GB28181-2011版本和GB28181-2016版本)     2、支持国标GB28181设备注册和注销,对所有设备进行管理,获取资源 对资源列表进行管理     3、支持国标GB28181的目录订阅,对接收的订阅通知进行处理     4、支持国标GB28181实时视频请求(支持UDP、TCP主动(tcpactive)、TCP被动(tcppassive))     5、支持国标GB28181 PTZ控制     6、支持国标GB28181 录像查询     7、支持国标GB28181 历史视频点播 (支持UDP、TCP主动(tcpactive)、TCP被动(tcppassive))     8、支持国标GB28181 历史视频下载 (支持UDP、TCP主动(tcpactive)、TCP被动(tcppassive))     9、支持对接收的国标实时视频码流和历史视频码流进行管理     10、支持将国标的PS码流转换成ES码流     11、支持丢包打印和断流打印     13、支持RTSP服务和RTSP会话管理     14、支持RTSP客户端 UDP传输和TCP传输     15、支持国标GB28181设备5000路左右的接入管理,支持国标请求视频在100路左右     16、支持国标28181设备和通道写入mysql数据库      17、支持设备的云台PTZ控制,控制类型:上"up",下"down",左"left",右"right",左上"leftup",左下"leftdown",右上"rightup",右下"rightdown",镜头近"zoomin",镜头远"zoomout", 焦距远"focusfar",焦距近"focusnear", 设置预置位"setpos",调预置位"callpos"     18、支持历史视频的查询和历史视频的点播控制     19、支持对国标设备的控制,"record":录像开启和停止-通道id "guard":布放和撤防-报警通道id "reboot":设备重启-设备id "keyfame":强制关键帧-通道id     20、支持对实时视频的图片截图,通过http直接访问图片    21、支持rtmp和hls会话一直保留    22、支持报警消息(设备上线、下线和设备端报警)通过httpclient方式主动通知    23、支持公网和局域网同时存在
### 大华设备内网环境对接GB28181标准解决方案 #### 1. 前提条件 为了使大华设备能够在内网环境中成功对接GB28181标准,需满足以下前提条件: - **网络连通性**:确保大华设备能够通过内部局域网连接到运行GB28181协议的服务器或平台。这通常意味着两者之间不存在防火墙或其他阻止通信的因素[^1]。 #### 2. 配置准备 在配置过程中,需要收集并设置如下参数: - 平台侧添加摄像机所需的各项参数,这些信息一般由负责部署GB28181系统的管理员提供; - 如果使用的是LiveGBS这样的流媒体平台,则可能还需要向其提交特定于该平台的信息如国标编号、地址以及端口号等数据[^2]。 #### 3. 接入流程说明 对于希望实现与GB28181兼容的大华摄像头而言,具体的接入步骤大致如下所示: - 登录至目标GB28181服务平台界面完成注册操作,并按照提示输入上述提到的相关配置项; - 将获得的一系列认证凭证妥善保存下来以便后续验证环节调用; - 修改本地摄像装置固件设定使之匹配所选服务提供商的要求规格——比如调整传输模式为TCP而非UDP来提高稳定性; - 测试整个链路是否正常工作,确认图像质量良好无明显延迟现象发生。 ```python import requests def register_camera(platform_url, device_info): response = requests.post(f"{platform_url}/register", json=device_info) if response.status_code == 200: return "Registration successful" else: raise Exception("Failed to register camera") device_info_example = { 'device_id': 'DH-IPC-HFW4239T-S', 'ip_address': '192.168.1.100', 'port': 5060, 'protocol': 'tcp' } print(register_camera('http://example.com/gb28181_platform', device_info_example)) ``` 此代码片段展示了如何利用Python脚本简化部分自动化任务,例如自动化的相机注册过程。当然,在实际应用中还需考虑更多细节处理逻辑以适应不同场景下的需求变化。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

.net亦洪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值