先抱怨一下,打死都想不到,海康的摄像头SDK居然是一个Java类,还有必须的两个jar包(jna.jar,examples.jar)。鬼能想得到会这么命名。

下面开始吧。

把从官网下载的SDK(和当前系统对应)解压,把库文件整个拷贝到某个目录(我是D:\hik\lib),然后把D:\hik\lib和D:\hik\lib\HCNetSDKCom加入到系统环境变量path中。可以尝试从代码中把这两个文件夹加入path,我没有试成功。

项目引入jna.jar和examples.jar这两个jar包。注意:一定要用官网SDK里面的,千万不要用其他版本的jna。

从ClientDemo中把HCNetSDK.java拷贝到自己的项目中(这就是神奇的SDK)。

开始主体,Java代码:

public class CameraManager {

private static Logger logger = LoggerFactory.getLogger(CameraManager.class);

private static HCNetSDK sdk = HCNetSDK.INSTANCE;

private static NativeLong userId = new NativeLong(-1);//用户登录ID,值为0,1,2...

private static NativeLong startChan = new NativeLong(-1); // start channel number

private void login(String ip, short port, String username, String pwd){

//sdk初始化

if (!sdk.NET_DVR_Init()){

logger.error("海康SDK初始化失败!" + sdk.NET_DVR_GetLastError());

}

//注册设备

NET_DVR_DEVICEINFO_V30 deviceInfo = new NET_DVR_DEVICEINFO_V30();

//登录

userId = sdk.NET_DVR_Login_V30(ip, port, username, pwd, deviceInfo);

if (userId.intValue() < 0){

logger.error("摄像头用户登录失败!Err:" + sdk.NET_DVR_GetLastError());

}

startChan.setValue(deviceInfo.byStartChan);

}

public boolean takePic(String ip, short port, String username, String pwd) {

if (userId.intValue() < 0 || startChan.intValue() < 0) {

logger.info("执行海康摄像机登录,ip[{}],port[{}],username[{}].",ip,port,username);

login(ip,port,username,pwd);

}

logger.info("准备拍照,userId:[{}],startChan:[{}]",userId.intValue(),startChan.intValue());

//拍照

NET_DVR_JPEGPARA strJpeg = new NET_DVR_JPEGPARA();

strJpeg.wPicQuality = 1; //图像参数

strJpeg.wPicSize = 2;

String filePath = "E:\\123q.jpg";

boolean b = sdk.NET_DVR_CaptureJPEGPicture(userId, startChan, strJpeg, filePath);//尝试用NET_DVR_CaptureJPEGPicture_NEW方法,但是不是报43就是JDK崩溃....

if(!b){//单帧数据捕获图片

System.out.println("抓拍失败!" + " err: " + sdk.NET_DVR_GetLastError());

}

else{

System.out.println("抓拍成功,buffer:"+jpegStringBuffer);

}

return b;

}

public void logout(){

sdk.NET_DVR_Logout(userId);

sdk.NET_DVR_Cleanup();

}

}

完成。以上代码中我删除了异常处理。记得加上。

java连接海康摄像头_Java实现 海康摄像头抓拍图像相关推荐

  1. java 连接mysql工具类_java连接Mysql数据库的工具类

    一个封装好的链接Mysql数据库的工具类,可以方便的获取Connection对象关闭Statement.ResultSet.Statment对象等等 复制代码 代码如下: package myUtil ...

  2. java连接sql数据库代码_Java如何连接Sql的数据库

    Java如何连接Sql的数据库 Java连接数据库,除了用Jdbc-Odbc桥接外,还有更实用的方法么?我是指不用配置DSN,直接和Sql连接的那种,需要安装什么驱动么?--------------- ...

  3. java连接mysql数据库方法_java连接mysql数据库的方法详解

    连接mysql数据库在java中有几种常用的方式有官方提供的JDBC连接MySQL数据库也有后面我们讲到的其它的方式连接数据库,具体如下. JDBC连接MySQL数据库 首先要下载Connector/ ...

  4. java 连接mongodb 集群_Java 连接MongoDB集群的几种方式

    先决条件 先运行mongodb肯定是必须的,然后导入以下包: import com.mongodb.MongoClient; import com.mongodb.MongoClientURI; im ...

  5. java连接摄像头_Java实现 海康摄像头抓拍图像(示例代码)

    先抱怨一下,打死都想不到,海康的摄像头SDK居然是一个Java类,还有必须的两个jar包(jna.jar,examples.jar).鬼能想得到会这么命名. 下面开始吧. 把从官网下载的SDK(和当前 ...

  6. java 摄像头_Java 实现 海康摄像头抓拍图像 Windows、Linux

    先抱怨一下,打死都想不到,海康的摄像头SDK居然是一个Java类,还有必须的两个jar包(jna.jar,examples.jar).鬼能想得到会这么命名. 下面开始吧. Windows 把从官网下载 ...

  7. java制作h5视频聊天_JAVA实现大华摄像头WEB方式实时显示视频,H5界面展示方式思路。...

    JAVA实现大华摄像头WEB方式实时显示视频,H5界面展示方式思路. 2018-09-17 问题:大华IPC枪型摄像头需要在WEB中显示实时监控视频,官方提供的SDK只有C#的桌面程序访问方式. 解决 ...

  8. java连接本地oracle数据库_JAVA连接oracle数据库的三种方式

    1 传统方式连接数据库(效率较低) 此方法连接数据库,其性能.可靠性与稳定性随着用户访问量的增加逐渐下降,跟踪测试表明,其根本问题与Connection对象的创建有关.不过在这里还是讲一下此方法的实现 ...

  9. java连接mysql 不推荐_java连接mysql

    看了一阵 spring 框架,不怎么好懂,最近脑子也有点不够用,于是乎来点简单的,用java连接数据库玩玩,顺便回顾一下数据库的增删改查~ 使用的是 eclipse .创建了个项目,然后网上找了篇教程 ...

最新文章

  1. HMM——维特比算法(Viterbi algorithm)
  2. GitHub托管项目
  3. ORACLE EBS中OAF屏蔽的错误
  4. SourceInsight 4.0 之二 项目文件关联
  5. 哪里可以培训计算机运维,临武县运维工程师培训班_郴州科泰计算机学校
  6. BZOJ3570 : DZY Loves Physics I
  7. python二级简书_12月4日,总结发现杯,备战python二级
  8. 基于 frida 实现的逆向工具包 hooker
  9. Python判断一个字符串是否可以转换为数字(字符串转数字、字符串转整形、字符串转int、字符串转浮点型)
  10. java lambda map循环停止_Map 使用 Lambda 的 forEach 实现跳出循环操作
  11. 帆软超级链接对象、插入子报表、网页框传参的个人使用心得
  12. 如何在CentOS 7上安装和安全配置MariaDB 10
  13. 打开Word时会出现错误的解决办法
  14. Ubuntu下将TinyOS移植到CC2430芯片
  15. 北邮iptv用WindowsMediaplayer打不开的解决办法
  16. Android Permission is only granted to system apps问题
  17. 创业反鸡汤--3.谈待遇
  18. DP转HDMI方案设计/DP转HDMI/VGA方案CS5216/CS5218/CS5262方案应用参数详细对比
  19. 信息学奥赛一本通 1386:打击犯罪(black)
  20. keilC51编译常见错误和警告说明

热门文章

  1. H5页面-两步搞定文字首行缩进
  2. Python 学习笔记 列表 range() xxx XXX
  3. ASP.NET MVC大文件上传GB级
  4. 跨年烟花代码加文案,确定不来看看吗
  5. Adobe acrobat Pro翻页显示正在启动识别、正在加载图像解决方法
  6. 显卡机器linux 6卡挖矿,显卡挖矿是什么意思?购买显卡矿机应该注意什么?
  7. 为什么BAT干不掉海康威视
  8. 【c++ debug】rospkg.common.ResourceNotFound: rosbag
  9. 数据产品经理修炼手册_数据产品经理需要了解的大数据平台架构
  10. rtthread工业使用_基于RTThread 的LwIP使用讲解