java 项目 demo 目录结构 java web 整合海康威视录像机摄像 SDK 实现拍照功能。

一、maven 项目结构

【提示】主要的是 HCNetSDK.java 文件,其中都是海康 java 调用 dll 文件获取摄像头资源的接口。

(1)库文件配置

如果是 linux 环境 将库文件放在 /usr/lib64 / 目录下,并设置可执行权限。

  1. 拍照
  • 拍照功能

  • @param CameraInfoEntity cameraInfoEntity 设备初始化注册参数

  • @return path 返回ftp文件路径

  • @throws org.bytedeco.javacv.FrameRecorder.Exception

  • @throws Exception
    */
    public static String cameraTakePhoto(CameraInfoEntity cameraInfoEntity) throws Exception {
    //初始化设备
    long startTime = System.currentTimeMillis();
    HCNetSDK sdk = HCNetSDK.INSTANCE;
    if (!sdk.NET_DVR_Init()) {
    throw new RuntimeException(“设备初始化获取失败”);
    }

     NET_DVR_DEVICEINFO_V30 devinfo = new NET_DVR_DEVICEINFO_V30();//设备注册NativeLong id = sdk.NET_DVR_Login_V30(cameraInfoEntity.getCameraIP(), (short) cameraInfoEntity.getCameraPort(), cameraInfoEntity.getUserName(), cameraInfoEntity.getUserPwd(), devinfo);if (id.longValue() < 0) {throw new RuntimeException("设备注册失败");} System.out.println("设备注册成功,用户id" + id);NET_DVR_WORKSTATE_V30 devwork = new NET_DVR_WORKSTATE_V30();if (!sdk.NET_DVR_GetDVRWorkState_V30(id, devwork)) {// 返回Boolean值,判断是否获取设备能力throw new RuntimeException("返回设备状态失败");}startTime = System.currentTimeMillis();//截屏对象NET_DVR_JPEGPARA jpeg = new NET_DVR_JPEGPARA();// 设置图片的分辨率jpeg.wPicSize = 2;// 设置图片质量jpeg.wPicQuality = 2;IntByReference reference = new IntByReference();ByteBuffer jpegBuffer = ByteBuffer.allocate(1024 * 1024);SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
    // String fileNameString = "D:/CapturePicture/"+sdf.format(date)+ "_"+ cameraInfoEntity.getChannel() +".jpg";String fileNameString = "cameracut_" + UUID.randomUUID().toString().replaceAll("-", "").toUpperCase() + sdf.format(new Date())+ "_"+ cameraInfoEntity.getChannel() +".jpg";//声明文件File file = new File(fileNameString);boolean is = sdk.NET_DVR_CaptureJPEGPicture_NEW(id, cameraInfoEntity.getChannel(), jpeg, jpegBuffer, 1024 * 1024, reference);System.out.println("拍照获取图片用时" + (System.currentTimeMillis() - startTime) + "ms]");System.out.println("拍照文件大小" + reference.getValue());BufferedOutputStream outputStream = null;try {outputStream = new BufferedOutputStream(new FileOutputStream(file));outputStream.write(jpegBuffer.array(), 0, reference.getValue());outputStream.flush();} catch (Exception e) {e.printStackTrace();} finally {if (outputStream != null) {try {outputStream.close();} catch (IOException e) {e.printStackTrace();}}}InputStream inputStream = new BufferedInputStream(new FileInputStream(file));boolean upload = FTPUtils.ftpUpload("img.xxx.net", 21, "eGpZyE38rG0ExkGv", "Kq8J6GrTt1ngJ0HKeJ", "/vtsp/imgs", file.getName(), inputStream);System.out.println("图片上传ftp,状态===========>" + upload);//删除图片文件if(file.exists() && file.isFile()) {file.deleteOnExit();}inputStream.close();sdk.NET_DVR_Logout(id);sdk.NET_DVR_Cleanup();if (is) {return "http://"+ "ftp.xxx.net" + "/vtsp/imgs/" +file.getName();} else {return null;}
    

}
在海康的 HCNetSDK 中加方法

boolean NET_DVR_CaptureJPEGPicture_NEW(NativeLong lUserID, NativeLong lChannel, NET_DVR_JPEGPARA lpJpegPara, ByteBuffer sJpegPicBuffer, int dwPicSize, IntByReference lpSizeReturned);

java web 整合海康威视录像机摄像 SDK相关推荐

  1. java对接 布防 海康威视_java web整合海康威视录像机摄像SDK

    java 项目demo目录结构 java web整合海康威视录像机摄像SDK实现拍照功能. 一.maven项目结构 [提示]主要的是HCNetSDK.java文件,其中都是海康java调用dll文件获 ...

  2. java王者归来pdf_《JAVA WEB整合开发王者归来》刘京华.pdf

    全书分为9篇,内容层次清晰,难度循序渐进.第1篇为入门篇,内容包括JavaWeb开发概述等:第2篇为基础篇,内容包括Servlet技术.JSP技术.会话跟踪.过滤器Filter.监听器Listener ...

  3. JAVA WEB整合开发王者归来 -- 读书笔记 by CZF 完整版

    JAVA WEB整合开发王者归来 -- 读书笔记  目录 第1章 概述. 1 第2章 搭建web开发环境. 1 第3章 Servlet技术. 1 第4章 深入JSP技术. 7 第5章 会话跟踪. 12 ...

  4. canoe开发从入门到精通pdf_阿里技术官手写801页PDF《精通Java Web整合开发》

    基础篇 第1~3章为基础篇,重点讲解基于开源架构Java EE应用开发的优势及其开发运行环境的安装配置,同时对JSP技术体系也进行了详细介绍. 基础篇的主要内容包括: Java Web应用开发技术选用 ...

  5. [Java Web整合开发王者归来·刘京华] 1、 Java Web开发

    目录: 1.Web技术简介 2.动态网站与静态网站 3.Java Web开发模式 4.JavaScript简介 1.Web技术简介 PS: 最近还有更凶残的技术,即整个操作系统都是基于Web的,如火狐 ...

  6. Java Web整合开发(14) -- Struts 1.x 概述

    整合Spring与Struts1的三种方法总结 无论用那种方法来整合,第一步就是要装载spring的应用环境,有三种方式: #1. struts-config.xml <?xml version ...

  7. Java Web整合开发读书笔记

    下载JDK:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html 下载Eclipse: ...

  8. Java Web整合开发(41) -- Forum

    {0} 转载于:https://www.cnblogs.com/thlzhf/p/4383610.html

  9. Java Web整合开发(42) -- Petstore

    {0} 转载于:https://www.cnblogs.com/thlzhf/p/4383630.html

最新文章

  1. Vbs脚本编程简明教程之十
  2. IT 需要知道的一些专业名词和解释 (长期更新)
  3. Java爬虫模拟登录——不给我毛概二的H某大学
  4. dbgrid的最小高度设置。否则出现滚动条。
  5. 关于GAN的灵魂七问
  6. 文件描述符和fcntl及阻塞非阻塞
  7. 最简易上手的Numpy学习笔记一
  8. linux 中国-新手村,从新手村开始,手把手带你入门梳理内核代码
  9. aix下oracle备份脚本,AIX下oracle的自动备份
  10. Java If Else 语句
  11. SecureCRT 7.3软件下载及破解工具+教程
  12. 博科交换机建立Zone基本配置
  13. web前端登录页面设计技巧
  14. 微信公众平台的账号、微信商户平台的账号、以及小程序的账号都是不同的
  15. 计算机体系结构 第三章 CPU性能公式 CPI相关计算
  16. 30岁人生进度条_人生的进度条
  17. Windows自动更新进程wuauclt.exe 进程服务关闭方法
  18. 关于微信在线客服系统的实现(已经证实可用)
  19. Scratch编程与游戏:大鱼吃小鱼!
  20. 织梦php开发tags功能开发,织梦全网最新联动筛选功能的实现(单选和多选)可显示分类的文章...

热门文章

  1. 每周记录(4月底停更了qvq)
  2. 《道德经》第二十一章
  3. 托福写作23范文与解析
  4. IMX6移植Linux3.0.35内核时需要添加的矩阵按键的平台设备信息
  5. 算法/编程练习:寻找和至少为K的最短子数组
  6. IDEA2021.2.1 http client 无法解析 enviroment file
  7. 聊聊人工智能芯片(一)
  8. Flink:DataStream Connectors 之 Kafka
  9. c语言电表管理系统原代码,基于AT89C51单片机的智能电表设计
  10. 关于LabVIEW中的“值”与“值(信号)”属性