JAVA开发(JAVA视频监控接口相关)

 一、背景

最近在做视频监控接口相关的开发,需要调用视频的接口获取直播地址,回放地址,然后集成到web里查看。

二、涉及的接口

1、获取卡口的id

2、通过卡口id获取通道(设备的id)

3、通过设备的id获取到直播地址

4、通过设备的id和时间范围获取回放视频文件

5、通过设备id和回放视频文件获取回放视频地址。

三、接口设计

1、获取卡口的id

 响应报文

{
  "code": "00000000",
  "success": true,
  "message": "success",
  "data": [
    {
      "id": "352864153016221636",
      "type": 1,
      "name": "测试5",
      "parentId": null
    },
    {
      "id": "eeaa1649b325402ab968eed40934d437",
      "type": 2,
      "name": "卡口1",
      "parentId": "352864153016221696"
    },
    {
      "id": "2d3fb39f1e52424a4c2885f13b558dc9fb5c",
      "type": 2,
      "name": "卡口2",
      "parentId": "352864153016221696"
    },
    {
      "id": "2605311145094ffcad9717fa3c1d7bfd",
      "type": 2,
      "name": "卡口3",
      "parentId": "352864153016221696"
    },
    {
      "id": "1882a593fd104f55a40b35dc7083abfb",
      "type": 2,
      "name": "卡口4",
      "parentId": "352864153016221696"
    },
    {
      "id": "353113531698122752",
      "type": 3,
      "name": "卡口5",
      "parentId": "352864153016221696"
    },
    {
      "id": "353112424330567680",
      "type": 3,
      "name": "卡口6",
      "parentId": "1882a593fd104f55a40b35dc7083abfb"
    },
    {
      "id": "353112063356174336",
      "type": 3,
      "name": "卡口7",
      "parentId": "2605311145094ffcad9717fa3c1d7bfd"
    },
    {
      "id": "353111937258627072",
      "type": 3,
      "name": "卡口8",
      "parentId": "2605311145094ffcad9717fa3c1d7bfd"
    },
    {
      "id": "353111801455448064",
      "type": 3,
      "name": "卡口9",
      "parentId": "2d3fb39f1e52424a4c2885f13b558dc9fb5c"
    },
    {
      "id": "353111504343531520",
      "type": 3,
      "name": "卡口10",
      "parentId": "2d3fb39f1e52424a4c2885f13b558dc9fb5c"
    },
    {
      "id": "353111361863032832",
      "type": 3,
      "name": "卡口11",
      "parentId": "2d3fb39f1e52424a4c2885f13b558dc9fb5c"
    },
    {
      "id": "352889700026949632",
      "type": 3,
      "name": "卡口12",
      "parentId": "1882a593fd104f55a40b35dc7083abfb"
    }
  ]
}

2、获取设备id

请求报文
{
	"devIds":["352889700026949632"]
}

响应报文
{
  "code": "00000000",
  "success": true,
  "message": "success",
  "data": [
    {
      "kakouId": "352889700026949632",
      "kakouName": "卡口1",
      "deviceChannels": [
        {
          "name": "测试设备1通道ad",
          "deviceChannelCode": "12221S2B69H4_0",
          "onlineStatus": 1
        },
        {
          "name": "HD IPC test",
          "deviceChannelCode": "12221S2B69H4_1",
          "onlineStatus": 1
        }
      ]
    }
  ]
}

3、获取直播地址

{
	"deviceChannelCode":"12221S2B69H4_0"
}
响应报文
{
  "code": "00000000",
  "success": true,
  "message": "success",
  "data": "https://ip/live/10100075_1015007501000_12221S2B69H4_0_1.flv"
}

四、视频监控接入云服务

1、视频监控如何接入云服务器

视频监控在现代社会中起着非常重要的作用,然而,如何接入云服务器也是一个重要的问题。云服务器可以提供更好的数据存储和处理服务,同时还可以帮助监控系统实现远程管理和动态诊断。下面是一个流程,介绍如何将视频监控接入云服务器:

需要选择一款高质量的云服务器服务商,并创建一个云服务器。然后,为视频监控系统配置一个公网 IP,使其能够与云服务器进行通信。接下来,需要将监控系统的转码、传输和储存服务配置为与云服务器的端口一致,以实现视频数据的上传和下载。通过安装和配置远程监控软件,可以让用户在任何时间、任何地点轻松地查看视频监控数据。

2、云服务器调用本地摄像头

云服务器调用本地摄像头是一种越来越常见的应用场景,特别是在视频会议、远程监控、视频直播等领域。所谓云服务器,简单来说就是将服务器的各种资源整合在云上,方便用户进行操作和管理。而本地摄像头则是“离线设备”,不依赖于网络,需要通过云服务器才能够远程调用和管理。

如今,随着云计算和物联网技术的不断发展,云服务器调用本地摄像头已经成为了一种热门的技术应用。比如,在视频会议中,参与者无需在同一地点,只需通过云服务器进行连接,即可进行高效的视频交流。在远程监控方面,司机可以通过云服务器远程监控车内情况,而家长也可通过云服务器远程监控孩子的安全状况。另外,在视频直播中,云服务器也扮演着重要的角色,它可以将本地摄像头的视频流上传至云端,随时在线观看、分享。

3、视频监控服务器搭建

视频监控服务器是一种重要的安全设备,它可以记录和存储监控摄像头拍摄的视频,帮助公共场所、企业和个人保护财产安全和人员安全。搭建视频监控服务器需要以下步骤:

1.选择合适的硬件和操作系统。服务器硬件配置可以根据需求来确定,但是操作系统最好选择稳定、安全可靠的版本,如Windows Server或Linux。

2.安装视频监控软件。常用的视频监控软件有Blue Iris、iSpy、ZoneMinder等。根据软件的安装指南下载安装文件并进行安装。

3.配置监控摄像头。将监控摄像头连接到服务器,并根据软件的操作指南完成配置。

4.设置录像存储路径和时间间隔。可以设置录像保存路径和存储周期,以便后期检查和使用。

5.设置远程访问和告警功能。在需要时可以通过网络远程访问监控画面,同时可以设置告警功能,对异常情况进行警报提示。

视频监控服务器是一种非常实用和高效的安全设备,搭建过程要仔细操作,以确保其正常稳定运行。

6。视频接入云平台:

一般的视频监控设备都是在局域网或者专网里运行,但是有些时候我们需要把监控设备接入互联网,然后可以远程访问,存储,录像回放,甚至是做一些视频图像的智能分析。

通常的做法,监控设备厂家会提供专门的云平台,对应的手机app,电脑客户端。我们只需要把监控设备接入互联网,即可实现远程监控,录像回放和设备操作等功能。设备访问功能,一般使用P2P穿透的方式,视频流一般不会经过中间的云平台,云平台的花费不大。如果需要云存储,涉及的流量费和存储空间费用比较大,所以厂家一般提供免费的P2P访问,收费的云存储功能。

一些云计算,CDN存储公司提供第三方的视频监控接入云平台功能服务,觉得可以研究下。主要功能实现如下图:

首先是接入方式,不外乎两种,一种是推流,一种是拉流。所谓推流即监控端把视频流主动推送到云平台。常见的推流方式是RTMP,有些摄像机内置有RTMP服务(注意是RTMP服务,不是RTMP协议,支持RTMP服务的监控摄像机比较少见),在RTMP服务里配置对应的平台的推流信息,比如服务器地址(广域网的地址,静态IP或者域名),端口号,流ID等,即可把摄像机视频流推送到云平台。如果摄像机不支持RTMP服务,可以使用推流软件,比如OBS(Open Broadcaster Software)。OBS和摄像机运行在同一个局域网里,摄像机通过rtsp协议接入到OBS里,然后OBS推流到云平台。

还有一种推流接入方式是GB28181协议, GB28181是国内安防行业的行业标准协议,目前国内的安防设备大都能支持。GB28181的推流方法和原理和RTMP差不多,这里就不详细展开了。

而另一种接入方式拉流,顾名思义,即平台服务端主动去查找,发现前端监控设备,前提条件是前端监控设备需要在互联网里有唯一的地址(公网静态IP或者域名)。毫无疑问,在监控设备数量中众多时,这一条件很难满足,所以拉流的接入方式一般用于局域网监控接入,广域网中很少采用。安防行业里的ONVIF协议属于拉流的接入方式,即后端客户端,平台去查找发现前端设备,常用于局域网的网络环境里,广域网中很难采用ONVIF的接入方式,这也是ONVIF协议与 GB28181协议 在实际应用中的最大区别。

接入平台以后,可以进行视频分析处理,录像存储,回放调用等。也可以通过webRTC,FLV,HLS,rtsp,RTMP等方式对实时视频流进行分发和访问。

 

 

  • 19
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论
Java对接大华海康视频监控是指通过Java编程语言实现与大华和海康视频监控设备的交互和通讯。Java是一种跨平台的高级编程语言,其强大的网络编程能力和丰富的第三方库使得与视频监控设备的对接变得更加简单和灵活。 对接大华海康视频监控可以利用Java提供的网络编程功能,使用Socket或HTTP协议与视频监控设备进行通信。首先,需要通过设备的IP地址和端口号建立与设备的连接。然后,通过发送指令和接收设备的响应来实现视频监控设备的控制和操作。 在Java中,可以使用第三方库来简化与大华海康视频监控设备的对接过程。例如,对于大华视频监控设备,可以使用Java SDK提供的相关接口,通过调用SDK中的方法实现设备的登录、预览、录像回放和控制等功能。 对于海康视频监控设备,可以使用Java SDK提供的海康芯片平台开发包(SDK)来实现对接。通过该SDK,可以获取设备的基本信息、实时视频流、录像文件等,并进行远程控制和操作。 在对接大华海康视频监控时,还可以利用Java提供的图形用户界面(GUI)开发工具包,如JavaFX或Swing,将视频监控画面显示在程序界面上,以便用户实时查看监控画面,同时结合图像处理和分析算法,实现实时监控、报警和数据分析等功能。 总之,Java对接大华海康视频监控是一种灵活、高效的方式,能够通过Java编程语言实现视频监控设备的交互和通讯,满足不同应用场景下的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

奋力向前123

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

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

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

打赏作者

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

抵扣说明:

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

余额充值