海康 linux java demo_Linux下调用海康SDK(java版)
一:配置java项目所需的库文件,库文件的配置分为两种方案
方案1 :将需要的库文件放到系统的 /usr/lib下,HCNetSDKCom文件夹下的文件也copy到 /usr/lib下
方案2:
2.1: 进入/etc/profile下,将自己java工程需要的so文件的路径:如下
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/aa/java/LinuxJavaDemo/libs:/home/aa/java/LinuxJavaDemo/libs/HCNetSDKCom
注意:/home/aa/java/LinuxJavaDemo/lib 改路径为存放so文件以及HCNetSDKCom文件夹的路径,export 与LD_LIBRARY…在一行上
退出后,使用source /etc/profile使环境变量生效
2.2:进入/etc/ld.so.conf下,加入java工程所需要的so文件,如下:
/home/aa/java/LinuxJavaDemo/libs
/home/aa/java/LinuxJavaDemo/libs/HCNetSDKCom
使用ldconfig命令使配置生效
二:SDK的具体调用
SDK中提供了很多模块的接口,如预览模块、回放和下载模块等的接口,根据文档接口的说明实现模块功能,本次拿云台控制模块中的云台基本控制来作为例子
①初始化sdk:获得sdk对象,进行初始化,如下
private HCNetSDK sdk = HCNetSDK.INSTANCE;
sdk.NET_DVR_Init();
②注册设备
在sdk接口文档中有好几种实现注册的接口,参数的具体含义也给出了,根据情况选择接口实现注册,我选择的是NET_DVR_Login_V30接口实现注册,接口位置在文档下的基本接口定义
-> 用户注册
NET_DVR_DEVICEINFO_V30 lpDeviceInfo = new NET_DVR_DEVICEINFO_V30();
//注册
id = sdk.NET_DVR_Login_V30(ip, port, username, password, lpDeviceInfo);
实现云台基本控制的接口总共有四个接口,大致分为两大类,开启预览和不开启预览,而每一类又有两个接口,分别是能设置速度和不能设置速度,本次以开启预览不设置速度作为示例
③开启预览
开启预览的接口会根据sdk版本的不同而有所变化,本次示例中用的是NET_DVR_RealPlay_V30这个接口,具体参数查看接口文档,位置在文档下的基本接口定义 -> 实时预览
NET_DVR_CLIENTINFO lpClientInfo = new NET_DVR_CLIENTINFO();
lpClientInfo.hPlayWnd = null;
lpClientInfo.lChannel = Channel;
lpClientInfo.lLinkMode = new NativeLong(0);
lpClientInfo.sMultiCastIP = null;
FRealDataCallBack_V30Imple fRealDataCallBack_V30 = new FRealDataCallBack_V30Imple();
handel = sdk.NET_DVR_RealPlay_V30(id, lpClientInfo, fRealDataCallBack_V30, null, false);
④云台控制
本次示例使用 NET_DVR_PTZControl接口,参数 LONG lRealHandle,DWORD dwPTZCommand, DWORD dwStop,dwPTZCommand 云台控制命令,可以实现云台的控制,具体命令请查看文档,再此不一一列举。dwStop参数实现了云台控制的开启和结束,1为结束,0为开始
sdk.NET_DVR_PTZControl(handel, comment, 0); //开启控制,comment为云台控制命令
sdk.NET_DVR_PTZControl(handel, comment, 1);//结束云台控制,comment为云台控制命令,因与开启时的命令一致
⑤结束预览
结束预览的接口为NET_DVR_StopRealPlay,参数为开启预览接口的返回值
boolean b1 = sdk.NET_DVR_StopRealPlay(handel);
⑥注销设备
//注销设备使用的是NET_DVR_Logout接口,参数为注册接口的返回值
boolean b2 = sdk.NET_DVR_Logout_V30(id);
⑦释放SDK资源
//释放SDK资源,调用NET_DVR_Cleanup接口实现,无需传递参数。
boolean b2 = sdk.NET_DVR_Cleanup();
注意:每个接口调用,可以根据其返回值判断是否成功,不同的接口返回值有所不同,具体可以查看文档,在出现错误的情况下,可以使用NET_DVR_GetLastError接口来获得操作的错误码,根据错误码去查询网络通讯库错误码表,即可查看错误原因。NET_DVR_GetLastError位置在文档下的基本接口定义-> SDK本地功能 ->获取错误信息
海康 linux java demo_Linux下调用海康SDK(java版)相关推荐
- linux64下调用海康sdk(=登陆、获取通道列表、获取文件列表、按照文件下载文件、按照时间下载文件)
linux下调用海康sdk 1.库文件的配置 mkdir /data/hk_sdk/ cd /data/hk_sdk/将海康SDK的lib文件夹复制到/data/hk_sdk/下 lib文件下面的结构 ...
- java接口方式调用海康大华摄像机预览。
客户有海康和大华的监控设备,没有买各类安防平台,国标方式需要预留给其他需要接入的系统,得兼容高版本chrome,询问了大华的客服人员,最后选择了该方案进行解决,记录下曲折的过程.延迟大约10秒的样子, ...
- java web页面调用海康摄像头
之前做过web页面调用海康显示4个摄像头.网上web调用的确实比较少,我做的时候参考了http://blog.csdn.net/lucius93/article/details/75308165,但也 ...
- java如何查看调用记录_查看Java记录
java如何查看调用记录 JEP 359 (可在JDK 14中用作预览功能)将记录引入Java. 记录是对普通数据聚合建模的简单方法. 一个简单的范围记录如下所示: record Range( int ...
- java同步异步调用_详解java 三种调用机制(同步、回调、异步)
1:同步调用:一种阻塞式调用,调用方要等待对方执行完毕才返回,jsPwwCe它是一种单向调用 2:回调:一种双向调用模式,也就是说,被调用方在接口被调用时也会调用对方的接口: 3:异步调用:一种类似消 ...
- PVF(PGI Visual Fortran) 安装以及openacc在linux和window下调用
1. PVF(PGI VisualFortran)安装 1.首先下载软件到这个地址: http://www.pgroup.com/support/download_pgi2015.php 因为已经安 ...
- linux 退出java,linux kill命令下如何优雅的退出java程序
实现SignalHandler kill命令常用信号(之后代码会用到):HUP 1 终端断线 INT 2 中断(同 Ctrl + C) QUIT 3 退出(同 Ctrl + \) TERM 15 终止 ...
- java进程里面调用方法_在java里面调用CUI程序的方法
在java里面调用CUI程序的方法推荐查看本文HTML版本 在java里面调用CUI程序的方法 问题描述: 该函数在win平台上面调用不是很成功,GUI会可以调出来,但可能和屏蔽调其中的一些用 ...
- Java使用JNA调用C的SDK
案例中用到的jar包,javacv1.2,opencv3.0 java模仿c的结构体,保存身份证信息 package com.aast.service;import java.util.ArrayLi ...
最新文章
- 论文《Attention Is All You Need》及Transformer模型
- ASP.NET MVC开发,编辑页面和添加页面基本相同,我们控制器 Add Edit是共用同一个View吗?...
- 标准C程序设计七---53
- 裴蜀定理(note)
- Exchange Server 2003邮件服务器系统的基本部署思路
- 神经架构搜索(Neural Architecture Search,NAS)介绍
- python接口自动化(三十五)-封装与调用--流程类接口关联(详解)
- ajax实例详解(2)
- 常见的Ajax写法汇总
- pycharm生成exe文件及关联ico图标
- 怎么快速的把CAD文件转化为MAPGIS详细步骤
- 计算机sci检索,计算机方向国内EI检索、SCI检索的期刊目录
- 电脑蓝屏怎么解决0x0000007b,解决电脑蓝屏问题
- leaflet地图生成图片下载
- linux双显卡配置_linux双显卡解决方案
- matlab excel 新建sheet,matlab excel的sheet增加,重命名操作
- ava.net.ConnectException: Connection refused: connect
- 学历的事情,你要反省,太没有效率,太托,托墨迹,太没有决断力,太TM纠结了。
- PyDev for Eclipse 简介
- vue实战-产品详情页(轮播图、放大镜)
热门文章
- 2022-2028全球便携式X射线探测仪行业调研及趋势分析报告
- QT error: LNK2019: 无法解析的外部符号 __imp__SendMessageW@ 类型的错误 以及 pragma comment 的作用(用法)
- Delphi XE10.4 TrayIcon托盘
- 具体芯片的I2C_Adapter驱动分析
- python面向对象实例王者荣耀_PYTHON-面向对象-练习-王者荣耀 对砍游戏
- 看过的最好的护肤心得 续
- Matlab滤波器的设计
- PooledDataSource forcefully closed/removed all connections的解决
- 基于FactorySimulation的汽车总装及物流配送过程仿真示例
- MAC MySql 安装(详细步骤)