From 690b5ff07ace78fa1f3f4fa1b0508481cf182919 Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期一, 31 七月 2023 11:09:02 +0800
Subject: [PATCH] 修复单兵端 - 下发给我的任务列表分页问题

---
 ard-work/src/main/java/com/ruoyi/media/service/impl/MediaService.java |   30 ++++++++++++++++++------------
 1 files changed, 18 insertions(+), 12 deletions(-)

diff --git a/ard-work/src/main/java/com/ruoyi/media/service/impl/MediaService.java b/ard-work/src/main/java/com/ruoyi/media/service/impl/MediaService.java
index 9a417f4..3bdf604 100644
--- a/ard-work/src/main/java/com/ruoyi/media/service/impl/MediaService.java
+++ b/ard-work/src/main/java/com/ruoyi/media/service/impl/MediaService.java
@@ -6,6 +6,7 @@
 import com.ruoyi.media.service.IMediaService;
 import com.ruoyi.utils.forest.MediaClient;
 import com.ruoyi.utils.tools.ArdTool;
+import com.ruoyi.utils.tools.CmdUtils;
 import com.sun.jna.Platform;
 import io.minio.messages.Item;
 import lombok.extern.slf4j.Slf4j;
@@ -15,8 +16,10 @@
 
 import javax.annotation.PostConstruct;
 import javax.annotation.Resource;
+import java.io.BufferedReader;
 import java.io.File;
 import java.io.IOException;
+import java.io.InputStreamReader;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.regex.Matcher;
@@ -41,25 +44,28 @@
     @PostConstruct
     public void initMediaMtx() {
         if (Platform.isWindows()) {
+            String processName="mediamtx.exe";
             String exePath = System.getProperty("user.dir") + File.separator + "lib" + File.separator + "mediamtx" + File.separator + "mediamtx.exe";
             String ymlPath = System.getProperty("user.dir") + File.separator + "lib" + File.separator + "mediamtx" + File.separator + "mediamtx.yml";
-            try {
-                // 鏋勫缓鍚姩鍛戒护锛屼娇鐢╟md /c start鍛戒护鏉ュ惎鍔ㄥ彲鎵ц绋嬪簭骞舵樉绀哄懡浠ゆ彁绀虹绐楀彛
-                String[] cmd = {"cmd", "/c", "start", exePath,ymlPath};
-                ProcessBuilder processBuilder = new ProcessBuilder(cmd);
-                processBuilder.redirectErrorStream(true); // 灏嗛敊璇緭鍑洪噸瀹氬悜鍒版爣鍑嗚緭鍑�
-                Process process = processBuilder.start();
-                // 濡傛灉浣犳兂绛夊緟绋嬪簭瀹屾垚
-                int exitCode = process.waitFor();
-            } catch (IOException | InterruptedException e) {
-                e.printStackTrace();
+
+            List<String> cmd = new ArrayList<>();
+            cmd.add(exePath);
+            cmd.add(ymlPath);
+            if (CmdUtils.isProcessRunning(processName)) {
+                // 杩涚▼宸茬粡鍦ㄨ繍琛岋紝缁撴潫璇ヨ繘绋�
+                CmdUtils.stopProcess(processName);
             }
+            // 鍚姩鍚庡彴杩涚▼
+             CmdUtils.commandStart(processName,cmd);
+            // 鍚姩cmd绐楀彛
+//            String[] command = {"cmd","/c","start",exePath,ymlPath};
+//            CmdUtils.commandStart(command);
         }
     }
 
     @Override
     public String addPath(String name, String rtspPath, String mode) {
-        String rtspUrl = "rtsp://" + mediamtxHost + ":8554/";
+        String rtspUrl = "rtsp://" + mediamtxHost + ":7554/";
         Conf mediaInfo = new Conf();
         //-vcodec libx264 //鎸囧畾瑙嗛缂栫爜鍣ㄤ负 libx264锛屼娇鐢� H.264 缂栫爜鏍煎紡杩涜瑙嗛鍘嬬缉
         //-preset ultrafast  //--preset鐨勫弬鏁颁富瑕佽皟鑺傜紪鐮侀�熷害鍜岃川閲忕殑骞宠 锛屾湁ultrafast锛堣浆鐮侀�熷害鏈�蹇紝瑙嗛寰�寰�涔熸渶妯$硦锛夈�乻uperfast銆乿eryfast銆乫aster銆乫ast銆乵edium銆乻low銆乻lower銆乿eryslow銆乸lacebo杩�10涓�夐」锛屼粠蹇埌鎱�
@@ -223,7 +229,7 @@
             String name = item.getName();
             info.setName(name);
             //RTSP鎾斁鍦板潃
-            String rtspUrl = "rtsp://" + mediamtxHost + ":8554/" + name;
+            String rtspUrl = "rtsp://" + mediamtxHost + ":7554/" + name;
             info.setRtspUrl(rtspUrl);
             Source source = item.getSource();
             if (source == null) {

--
Gitblit v1.9.3