linux下调用海康sdk

linux下调用海康sdklinux 下调用海康 sdk1 库文件的配置方法一 在系统 sur lib 下加入所需的 so 文件 HCNetSDKCom 文件下的 so 文件也拷贝到 usr lib 目录下 方法二 进入 etc profile 里 将所需 so 文件的路径添加进去 例如 expotLD LIBRARY PATH LD LIBRARY PATH home pi java lib home pi java lib

linux下调用海康sdk

1 库文件的配置
方法一:在系统/sur/lib下加入所需的so文件,HCNetSDKCom文件下的so文件也拷贝到/usr/lib目录下。
方法二:①进入/etc/profile 里,将所需so文件的路径添加进去。例如:




expot LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/pi/java/lib:/home/pi/java/lib/HCNetSDKCom 

保存后在终端输入source /etc/profile 使其生效. 注意:export与LD_LIBRARY_PATH在一行上,中间有空格

②进入/etc/ld.so.conf下,加入所需的so文件路径。例如:

/home/pi/java/lib /home/pi/java/lib/HCNetSDKCom 

保存后在终端输入 ldconfig 使其生效

2 调用sdk的具体步骤
一般调用海康sdk分为:初始化sdk、注册设备、开启预览、在开启预览后对摄像头的操作、停止预览、注销、释放sdk资源。
①初始化:首先获取sdk对象,后注册。




HCNetSDK sdk = HCNetSDK.INSTANCE; boolean b = sdk.NET_DVR_Init() //初始化 

②注册设备:调用接口NET_DVR_Login_V30(String ip, short port, String userName, String password,NET_DVR_DEVICEINFO_V30 configInfo) 完成注册,接口所需的参数,摄像头的ip,端口号,用户名,密码,设备信息。返回-1表示失败,其他返回值代表的是用户的ID值,该ID值唯一,后续对设备的操作都要通过这个ID完成。

//获取设备信息 HCNetSDK.NET_DVR_DEVICEINFO_V30 config = new HCNetSDK.NET_DVR_DEVICEINFO_V30(); //注册 NativeLong uId = sdk.NET_DVR_Login_V30(ip, (short) 8000, "admin", "Hist1207", config); 

③开启预览:调用NET_DVR_RealPlay_V30(NativeLong uId,LPNET_DVR_CLIENTINFO info,fRealDataCallBack_V30 callBack, Pointer pUser , boolean bBlocked),其中UId是注册后的返回值,info是预览参数,callBack是码流数据回调函数,pUser是用户信息,bBlocked请求码流是否阻塞。-1表示失败,其他值是调用其他函数的句柄参数。

// 预览参数设置 HCNetSDK.NET_DVR_CLIENTINFO nInfo = new HCNetSDK.NET_DVR_CLIENTINFO(); nInfo.hPlayWnd = null; nInfo.lChannel = new NativeLong(1); nInfo.lLinkMode = new NativeLong(0); nInfo.sMultiCastIP = null; // 开启预览 NativeLong realPlay = sdk.NET_DVR_RealPlay_V30(uId, nInfo, new FRealDataCallBack_V30Impls(), null, false); 

④具体操作,以云台控制为例。调用NET_DVR_PTZControl(NativeLong lRealHandle,int dwPTZCommand,int dwStop)接口,lRealHandle是预览的返回值,dwPTZCommand,移动的方向,具体参考sdk文档说明,dwStop 开始或停止,0开始,1停止。

boolean b = sdk.NET_DVR_PTZControl(uId, direction, 0); //开始 boolean b1 = sdk.NET_DVR_PTZControl(uId, direction, 1);//结束 

⑤停止预览:调用NET_DVR_StopRealPlay(NativeLong uId);uId是开启预览的返回值。

boolean b = sdk.NET_DVR_StopRealPlay(uId); 

⑥注销用户:NET_DVR_Logout_V30(NativeLong uId) uId 是注册后的返回值

boolean b1 = sdk.NET_DVR_Logout_V30(uId); 

⑦释放资源:NET_DVR_Cleanup();

boolean b2 = sdk.NET_DVR_Cleanup(); 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/226189.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 上午7:38
下一篇 2026年3月17日 上午7:38


相关推荐

  • python读取excel单元格内容_python如何读取txt文件

    python读取excel单元格内容_python如何读取txt文件今天,跟大家谈一下用python计算Excel中的数据我们先学习读取Excel中的数据首先我们要安装xlrd库,在命令提示符(快捷键win+r)中输入:pipinstallxlrd下载完成xlrd库。首先呢,当然要先有一个Excel啦,如下:我们先仔细观察这个Excel,里面有2018、2017、2016的月收入来来来,跟着小哥哥一起月入3w!1、利用python读取Excel内容xrld库中的open_workbook函数可以打开Excel文件,并且返回一个代表打开Excel文

    2022年10月2日
    7
  • 国外漂亮的手机网站模板

    国外漂亮的手机网站模板简介 国外漂亮的手机网站模板网盘下载地址 http kekewl cc RW4b928S8Wz0 图片

    2026年3月17日
    2
  • Python3中打开文件的方式(With open)「建议收藏」

    Python3中打开文件的方式(With open)「建议收藏」python文件读写文件是最常见的IO操作。Python内置了读写文件的函数,用法和C是兼容的。读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘。读写文件就是请求操作系统打开一个文件对象(通常称为文件描述符),然后,通过操作系统提供的接口从这个文件对象中读取数据(读文件),或者把数据写入这个文件对象(写文件…

    2022年4月19日
    43
  • 我国古代的勾股定理

    略微了解了一下古代中国人民对于勾股定理的证明。发现,智慧出自于劳动。何问起当年灌溉插秧需要对位置和时间的精确掌握,所以勾股定理就在劳动中绽放了。一个公式都不需要,看下面的图就可以证明勾股定理了。

    2021年12月25日
    56
  • httprunner3源码解读(1)简单介绍源码模块内容「建议收藏」

    httprunner3源码解读(1)简单介绍源码模块内容「建议收藏」前言最近想着搭建一个API测试平台,基础的注册登录功能已经完成,就差测试框架的选型,最后还是选择了httprunner,github上已经有很多开源的httprunner测试平台,但是看了下都是基于

    2022年7月30日
    11
  • jquery nextsibling_javascript中预编译

    jquery nextsibling_javascript中预编译JavaScript中的nextSibling和previousSibling和作用类似于jquery的next()和prev(),都是获取下一个/上一个同胞元素,如果下一个同级节点不存在,则此属性返

    2022年8月2日
    11

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号