From 49207386ea4a3d663628347eef443af9c7cc7f39 Mon Sep 17 00:00:00 2001 From: aijinhui <aijinhui> Date: 星期二, 17 十月 2023 17:20:46 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java | 31 ++++++++++++++++++++++--------- 1 files changed, 22 insertions(+), 9 deletions(-) diff --git a/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java b/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java index 4fb1c27..126acde 100644 --- a/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java +++ b/ard-work/src/main/java/com/ruoyi/device/hiksdk/service/impl/HikClientServiceImpl.java @@ -61,7 +61,7 @@ private static HCNetSDK hCNetSDK; @Override - public void loadHCNetSDKLib() { + public boolean init() { try { log.debug("寮�濮嬪姞杞絪dk搴撴枃浠惰矾寰�"); if (Platform.isWindows()) { @@ -96,8 +96,10 @@ ptrByteArraySsl.write(); hCNetSDK.NET_DVR_SetSDKInitCfg(4, ptrByteArraySsl.getPointer()); } + return true; } catch (Exception ex) { log.error("鍔犺浇搴撴枃浠跺紓甯革細" + ex.getMessage()); + return false; } } @@ -794,7 +796,7 @@ String cameraId = cmd.getCameraId(); Integer channelNum = cmd.getChanNo(); if (!GlobalVariable.loginMap.containsKey(cameraId)) { - return null; + return new HashMap<>(); } Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId); @@ -852,9 +854,9 @@ NET_DVR_PTZPOS m_ptzPosCurrent = new NET_DVR_PTZPOS(); m_ptzPosCurrent.wAction = 1; try { - String p = String.valueOf(ptz.get("p") * 10); - String t = String.valueOf(ptz.get("t") * 10); - String z = String.valueOf(ptz.get("z") * 10); + String p = String.valueOf((int)(ptz.get("p") * 10)); + String t = String.valueOf((int)(ptz.get("t") * 10)); + String z = String.valueOf((int)(ptz.get("z") * 10)); m_ptzPosCurrent.wPanPos = (short) (Integer.parseInt(p, 16)); m_ptzPosCurrent.wTiltPos = (short) (Integer.parseInt(t, 16)); m_ptzPosCurrent.wZoomPos = (short) (Integer.parseInt(z, 16)); @@ -1468,6 +1470,15 @@ GlobalVariable.previewMap.remove(cameraId); } log.debug("褰曞儚鍋滄"); + //瀛樺叆minio + String BucketName = "record"; + String ObjectName =IdUtils.simpleUUID() + ".mp4"; + FileInputStream stream = new FileInputStream(path); + boolean b = MinioUtil.uploadObject(BucketName, ObjectName, stream, stream.available(), "video/MP4"); + if (b) { + url = MinioUtil.getBucketObjectUrl(BucketName, ObjectName); + log.debug("涓婁紶鏂囦欢鎴愬姛!" + url); + } } return url; } catch (Exception ex) { @@ -1477,13 +1488,13 @@ } @Override - public void recordStart(CameraCmd cmd) { + public boolean recordStart(CameraCmd cmd) { try { String cameraId = cmd.getCameraId(); Integer channelNum = cmd.getChanNo(); String path = FileUtils.createFile("D:/recordTemp/" + cameraId + ".mp4"); if (!GlobalVariable.loginMap.containsKey(cameraId)) { - return; + return false; } Integer userId = (Integer)GlobalVariable.loginMap.get(cameraId); //寮哄埗I甯х粨鏋勪綋瀵硅薄 @@ -1515,18 +1526,20 @@ int lRealHandle = hCNetSDK.NET_DVR_RealPlay_V40(userId, previewinfo, null, null); if (lRealHandle == -1) { log.error("鍙栨祦澶辫触" + hCNetSDK.NET_DVR_GetLastError()); - return; + return false; } log.debug("鍙栨祦鎴愬姛"); GlobalVariable.threadMap.put(cameraId, Thread.currentThread().getName()); GlobalVariable.previewMap.put(cameraId, lRealHandle); if (!hCNetSDK.NET_DVR_SaveRealData_V30(GlobalVariable.previewMap.get(cameraId), 2, path)) { log.error("淇濆瓨瑙嗛鏂囦欢鍒颁复鏃舵枃浠跺す澶辫触 閿欒鐮佷负: " + hCNetSDK.NET_DVR_GetLastError()); - return; + return false; } log.debug("褰曞儚寮�濮�"); + return true; } catch (Exception ex) { log.error("寮�濮嬪綍鍍忓紓甯�" + ex.getMessage()); + return false; } } -- Gitblit v1.9.3