Bladeren bron

重启流媒体定时任务添加

gao.qiang 1 jaar geleden
bovenliggende
commit
33d8e56ee9

+ 1 - 1
business-service/src/main/java/com/ozs/service/entity/BaseDeviceDynamicManagement.java

@@ -73,7 +73,7 @@ public class BaseDeviceDynamicManagement extends BaseEntity implements Serializa
     private String remark;
 
     /**
-     * 是否开启录像(1开启2不开启)
+     * 相机状态(1在线2离线)
      */
     private Integer isDisable;
 }

+ 38 - 0
hazard-admin/src/main/java/com/ozs/web/core/util/CameraUtil.java

@@ -950,6 +950,44 @@ ffmpeg -i "concat:1.ts|2.ts" -c copy output.mp4
 
     }
 
+
+    /**
+     * 重启流媒体
+     */
+    public void restart(String num) {
+        log.info("restart=============");
+        try {
+            Process proc = Runtime.getRuntime().exec("/opt/streams", null, null);
+            BufferedReader in = new BufferedReader(new InputStreamReader(proc.getInputStream()));
+            PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(proc.getOutputStream())), true);
+            String commit = "sh restartStreams.sh";
+            List<String> commands = new ArrayList<>();
+
+            // 删除
+            commands.add(commit);
+            for (String line : commands) {
+                out.println(line);
+            }
+            out.println("exit");// 这个命令必须执行,否则in流不结束。
+            String rspLine = "";
+            while ((rspLine = in.readLine()) != null) {
+                System.out.println(rspLine);
+
+            }
+            int i = proc.waitFor();
+            log.info("执行结果:{}", i);
+
+            in.close();
+            out.close();
+            proc.destroy();
+        } catch (IOException e) {
+            log.error(e.getMessage());
+        } catch (InterruptedException e) {
+            e.printStackTrace();
+        }
+
+    }
+
     public static void main(String[] args) {
 
 //            // 创建一个集合