视频监控安防平台-国标28181(GB28181)平台通过http请求获取rtsp地址再通过rtsp请求视频(HTTP服务转GB28181)
最近在整理一些小型平台的功能,由原来的GB28181_RTSP小型平台改造成http服务+rtsp服务+httpclient等服务集合,支持国标GB28181的基本功能,目前输出码流是通过rtsp输出,下面是功能列表:
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语音对讲(GB28181语音广播)
16、支持httpserver并对会话进行管理,通过http+json协议对设备和视频进行控制
17、支持httpclient报警通知
18、支持国标GB28181设备1000路左右的接入管理,支持国标请求视频在100路左右
19、可以扩展将国标28181设备和通道写入mysql数据库(已经有相应的表结构来存设备和通道信息)
每个http请求对应一路视频,下面举例说明一下实时视频流程,参考下面协议
1. 请求视频
字段说明:
"channelid": (字符串) 通道20位编号
"type": (数字) 国标请求视频类型:1:udp 2:tcp主动 3:tcp被动
"errcode": (数字) 返回值,0表示成功,其他见错误码
"sessionid": (字符串) 会话返回的sessionid
"rtspurl": (字符串) rtsp地址
请求:
URL: http://122.114.130.9:8088/vss/open_stream/{channelid}/{type}
HTTP Method: GET
返回:
其中errcode为必填项,errcode小于0表示错误,无数据
{
"errcode":0,
"errdesc":"OK",
"strsessionid":"7221-1534476490-0",
"rtspurl":"rtsp://122.114.130.9:7554/Type=1/DevAor=41010000001325000001/sessionid=7221-1534476490-0"
}
示列:
1. 开启实时视频:GET
http://122.114.130.9:8088/vss/open_stream/41010000001325000001/1
返回结果:
{
"errcode":0,
"errdesc":"OK",
"strsessionid":"7221-1534476490-0",
"rtspurl":"rtsp://122.114.130.9:7554/Type=1/DevAor=41010000001325000001/sessionid=7221-1534476490-0"
}
目前只完善了部分功能,后续等待代码完善之后会提供完整的demo示列.