From 8a87e4226aa802d6a0e3566c66824fedf68e77da Mon Sep 17 00:00:00 2001
From: aijinhui <aijinhui>
Date: 星期二, 24 十月 2023 16:30:48 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ard-work/src/main/java/com/ruoyi/device/dhsdk/module/RealPlayModule.java | 204 +++++++++++++++++++++++++-------------------------
1 files changed, 103 insertions(+), 101 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/device/dhsdk/module/RealPlayModule.java b/ard-work/src/main/java/com/ruoyi/device/dhsdk/module/RealPlayModule.java
index a97ce4c..767f9f3 100644
--- a/ard-work/src/main/java/com/ruoyi/device/dhsdk/module/RealPlayModule.java
+++ b/ard-work/src/main/java/com/ruoyi/device/dhsdk/module/RealPlayModule.java
@@ -1,102 +1,104 @@
-package com.ruoyi.device.dhsdk.module;
-
-import com.ruoyi.device.dhsdk.lib.NetSDKLib;
-import com.ruoyi.device.dhsdk.lib.ToolKits;
-import com.sun.jna.Pointer;
-
-import static com.ruoyi.device.dhsdk.module.LoginModule.netsdk;
-
-/**
- * 瀹炴椂棰勮鎺ュ彛瀹炵幇
- * 涓昏鏈� 锛氬紑濮嬫媺娴併�佸仠姝㈡媺娴佸姛鑳�
- */
-public class RealPlayModule {
- /**
- * \if ENGLISH_LANG
- * Start RealPlay
- * \else
- * 寮�濮嬮瑙�
- * \endif
- */
-
- public static NetSDKLib.LLong startRealPlay(NetSDKLib.LLong m_hLoginHandle, int channel, String path) {
- NetSDKLib.NET_IN_REALPLAY_BY_DATA_TYPE net_in_realplay_by_data_type = new NetSDKLib.NET_IN_REALPLAY_BY_DATA_TYPE();
- net_in_realplay_by_data_type.nChannelID = channel;
- net_in_realplay_by_data_type.hWnd = null;
- net_in_realplay_by_data_type.rType = 0;
- net_in_realplay_by_data_type.emDataType = NetSDKLib.EM_REAL_DATA_TYPE.EM_REAL_DATA_TYPE_MP4;
- net_in_realplay_by_data_type.szSaveFileName = path;
- NetSDKLib.NET_OUT_REALPLAY_BY_DATA_TYPE net_out_realplay_by_data_type = new NetSDKLib.NET_OUT_REALPLAY_BY_DATA_TYPE();
- NetSDKLib.LLong m_hPlayHandle = netsdk.CLIENT_RealPlayByDataType(m_hLoginHandle, net_in_realplay_by_data_type, net_out_realplay_by_data_type, 5000);
- if (m_hPlayHandle.longValue() == 0) {
- System.err.println("寮�濮嬪疄鏃堕瑙堝け璐ワ紝閿欒鐮�" + ToolKits.getErrorCodePrint());
- } else {
- System.out.println("Success to start realplay");
- }
- return m_hPlayHandle;
- }
-
- /**
- * \if ENGLISH_LANG
- * Stop RealPlay
- * \else
- * 鍋滄棰勮
- * \endif
- */
- public static void stopRealPlay(NetSDKLib.LLong m_hPlayHandle) {
- if (m_hPlayHandle.longValue() == 0) {
- return;
- }
- boolean bRet = netsdk.CLIENT_StopRealPlayEx(m_hPlayHandle);
- if (bRet) {
- m_hPlayHandle.setValue(0);
- }
- }
-
- /**
- * 瀹炴椂棰勮鏁版嵁鍥炶皟鍑芥暟--鎵╁睍(pBuffer鍐呭瓨鐢盨DK鍐呴儴鐢宠閲婃斁)
- */
- private static class CbfRealDataCallBackEx implements NetSDKLib.fRealDataCallBackEx {
- private CbfRealDataCallBackEx() {
- }
-
- private static class CallBackHolder {
- private static CbfRealDataCallBackEx instance = new CbfRealDataCallBackEx();
- }
-
- public static CbfRealDataCallBackEx getInstance() {
- return CallBackHolder.instance;
- }
-
- @Override
- public void invoke(NetSDKLib.LLong lRealHandle, int dwDataType, Pointer pBuffer,
- int dwBufSize, int param, Pointer dwUser) {
- int bInput = 0;
- if (0 != lRealHandle.longValue()) {
- switch (dwDataType) {
- case 0:
- System.out.println("鐮佹祦澶у皬涓�" + dwBufSize + "\n" + "鐮佹祦绫诲瀷涓哄師濮嬮煶瑙嗛娣峰悎鏁版嵁");
- break;
- case 1:
- //鏍囧噯瑙嗛鏁版嵁
- System.out.println("鐮佹祦澶у皬涓�" + dwBufSize + "\n" + "鐮佹祦绫诲瀷涓烘爣鍑嗚棰戞暟鎹�");
- break;
- case 2:
- //yuv 鏁版嵁
- System.out.println("鐮佹祦澶у皬涓�" + dwBufSize + "\n" + "鐮佹祦绫诲瀷涓簓uv鏁版嵁");
- break;
- case 3:
- //pcm 闊抽鏁版嵁
- System.out.println("鐮佹祦澶у皬涓�" + dwBufSize + "\n" + "鐮佹祦绫诲瀷涓洪煶棰戞暟鎹�");
- break;
- case 4:
- //鍘熷闊抽鏁版嵁
- System.out.println("鐮佹祦澶у皬涓�" + dwBufSize + "\n" + "鐮佹祦绫诲瀷涓哄師濮嬮煶棰戞暟鎹�");
- break;
- default:
- break;
- }
- }
- }
- }
+package com.ruoyi.device.dhsdk.module;
+
+import com.ruoyi.device.dhsdk.lib.NetSDKLib;
+import com.ruoyi.device.dhsdk.lib.ToolKits;
+import com.sun.jna.Pointer;
+import lombok.extern.slf4j.Slf4j;
+
+import static com.ruoyi.device.dhsdk.module.LoginModule.netsdk;
+
+/**
+ * 瀹炴椂棰勮鎺ュ彛瀹炵幇
+ * 涓昏鏈� 锛氬紑濮嬫媺娴併�佸仠姝㈡媺娴佸姛鑳�
+ */
+@Slf4j(topic = "dhSdk")
+public class RealPlayModule {
+ /**
+ * \if ENGLISH_LANG
+ * Start RealPlay
+ * \else
+ * 寮�濮嬮瑙�
+ * \endif
+ */
+
+ public static NetSDKLib.LLong startRealPlay(NetSDKLib.LLong m_hLoginHandle, int channel, String path) {
+ NetSDKLib.NET_IN_REALPLAY_BY_DATA_TYPE net_in_realplay_by_data_type = new NetSDKLib.NET_IN_REALPLAY_BY_DATA_TYPE();
+ net_in_realplay_by_data_type.nChannelID = channel;
+ net_in_realplay_by_data_type.hWnd = null;
+ net_in_realplay_by_data_type.rType = 0;
+ net_in_realplay_by_data_type.emDataType = NetSDKLib.EM_REAL_DATA_TYPE.EM_REAL_DATA_TYPE_MP4;
+ net_in_realplay_by_data_type.szSaveFileName = path;
+ NetSDKLib.NET_OUT_REALPLAY_BY_DATA_TYPE net_out_realplay_by_data_type = new NetSDKLib.NET_OUT_REALPLAY_BY_DATA_TYPE();
+ NetSDKLib.LLong m_hPlayHandle = netsdk.CLIENT_RealPlayByDataType(m_hLoginHandle, net_in_realplay_by_data_type, net_out_realplay_by_data_type, 5000);
+ if (m_hPlayHandle.longValue() == 0) {
+ log.error("寮�濮嬪疄鏃堕瑙堝け璐ワ紝閿欒鐮�" + ToolKits.getErrorCodePrint());
+ } else {
+ log.debug("Success to start realplay");
+ }
+ return m_hPlayHandle;
+ }
+
+ /**
+ * \if ENGLISH_LANG
+ * Stop RealPlay
+ * \else
+ * 鍋滄棰勮
+ * \endif
+ */
+ public static void stopRealPlay(NetSDKLib.LLong m_hPlayHandle) {
+ if (m_hPlayHandle.longValue() == 0) {
+ return;
+ }
+ boolean bRet = netsdk.CLIENT_StopRealPlayEx(m_hPlayHandle);
+ if (bRet) {
+ m_hPlayHandle.setValue(0);
+ }
+ }
+
+ /**
+ * 瀹炴椂棰勮鏁版嵁鍥炶皟鍑芥暟--鎵╁睍(pBuffer鍐呭瓨鐢盨DK鍐呴儴鐢宠閲婃斁)
+ */
+ private static class CbfRealDataCallBackEx implements NetSDKLib.fRealDataCallBackEx {
+ private CbfRealDataCallBackEx() {
+ }
+
+ private static class CallBackHolder {
+ private static CbfRealDataCallBackEx instance = new CbfRealDataCallBackEx();
+ }
+
+ public static CbfRealDataCallBackEx getInstance() {
+ return CallBackHolder.instance;
+ }
+
+ @Override
+ public void invoke(NetSDKLib.LLong lRealHandle, int dwDataType, Pointer pBuffer,
+ int dwBufSize, int param, Pointer dwUser) {
+ int bInput = 0;
+ if (0 != lRealHandle.longValue()) {
+ switch (dwDataType) {
+ case 0:
+ log.debug("鐮佹祦澶у皬涓�" + dwBufSize + "\n" + "鐮佹祦绫诲瀷涓哄師濮嬮煶瑙嗛娣峰悎鏁版嵁");
+ break;
+ case 1:
+ //鏍囧噯瑙嗛鏁版嵁
+ log.debug("鐮佹祦澶у皬涓�" + dwBufSize + "\n" + "鐮佹祦绫诲瀷涓烘爣鍑嗚棰戞暟鎹�");
+ break;
+ case 2:
+ //yuv 鏁版嵁
+ log.debug("鐮佹祦澶у皬涓�" + dwBufSize + "\n" + "鐮佹祦绫诲瀷涓簓uv鏁版嵁");
+ break;
+ case 3:
+ //pcm 闊抽鏁版嵁
+ log.debug("鐮佹祦澶у皬涓�" + dwBufSize + "\n" + "鐮佹祦绫诲瀷涓洪煶棰戞暟鎹�");
+ break;
+ case 4:
+ //鍘熷闊抽鏁版嵁
+ log.debug("鐮佹祦澶у皬涓�" + dwBufSize + "\n" + "鐮佹祦绫诲瀷涓哄師濮嬮煶棰戞暟鎹�");
+ break;
+ default:
+ break;
+ }
+ }
+ }
+ }
}
\ No newline at end of file
--
Gitblit v1.9.3