海康威视Java SDK实战

海康威视Java SDK实战指南

一、获取海康威视SDK

首先,我们需要从海康威视的官方网站获取SDK。这是开始项目开发的第一步。

二、在IDEA中创建并配置项目

接下来,打开IDEA并创建一个新的项目。将下载的SDK导入到项目中。

  1. project Structure -> modules中添加Jna.jarexamples.jar

在这里插入图片描述

  1. project Structure -> sdks中同样添加Jna.jarexamples.jar

在这里插入图片描述

三、修改HCNetSDK.java

为了确保程序能够正确加载动态链接库,我们需要修改HCNetSDK.java文件中的DLL加载路径。

HCNetSDK INSTANCE = (HCNetSDK) Native.loadLibrary(System.getProperty("user.dir") + "/HCNetSDK.dll", HCNetSDK.class);

同样,对于PlayCtrl.dll也需要进行路径修改。

PlayCtrl INSTANCE = (PlayCtrl) Native.loadLibrary(System.getProperty("user.dir") + "/PlayCtrl.dll", PlayCtrl.class);

四、运行程序

在程序中输入设备的IP地址、用户名、密码和端口号,然后点击注册按钮。

在这里插入图片描述

如果预览成功,你将看到如下界面:

预览成功

此外,你还可以利用SDK实现回放功能,只需指定通道号即可。

回放功能

五、SDK程序函数调用顺序

了解SDK中函数的调用顺序对于开发至关重要。这有助于我们更好地理解程序的执行流程。

六、实战:手动录像功能

我们可以通过创建定时任务来实现手动录像功能。

@Scheduled(fixedRate = 60000) // 每小时执行一次
@Async
public void startVideoTask() {
    try {
        HKUtil.startVideo(v.username, v.password, v.ip);
    } catch (Exception e) {
        e.printStackTrace();
    }
}

HKUtil.java中,我们定义了startVideo方法来处理录像的启动和停止。

public static void startVideo(String username, String password, String ip) {
    new Thread() {
        @Override
        public void run() {
            boolean initSuc = hCNetSDK.NET_DVR_Init();
            HKUtil a = new HKUtil();
            a.init(username, password, ip);
        }
    }.start();
}

流程概述:

  1. 注销登录
  2. 构建登录参数
  3. 登录注册
  4. 开始录制
  5. 睡眠
  6. 停止录制

对应方法:

  • hCNetSDK.NET_DVR_Logout_V30(lUserID); // 注销登录
  • m_strDeviceInfo = new HCNetSDK.NET_DVR_DEVICEINFO_V30(); // 构建登录参数
  • hCNetSDK.NET_DVR_Login_V30(m_sDeviceIP, (short) iPort, username, password, m_strDeviceInfo); // 登录注册
  • hCNetSDK.NET_DVR_StartDVRRecord(lUserID, new NativeLong(0xffff), new NativeLong()); // 开始录制
  • Thread.sleep(30000); // 睡眠
  • hCNetSDK.NET_DVR_StopDVRRecord(lUserID, new NativeLong(0xffff)); // 停止录制

通过上述步骤,你可以成功实现海康威视Java SDK的手动录像功能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

真心喜欢你吖

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

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

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

打赏作者

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

抵扣说明:

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

余额充值