gao.qiang 1 год назад
Родитель
Сommit
f81fe766a9

+ 39 - 33
business-service/src/main/java/com/ozs/utils/CameraUtil.java

@@ -937,39 +937,45 @@ ffmpeg -i "concat:1.ts|2.ts" -c copy output.mp4
     public void playbackURLs(List<String> list) {
         log.info("--------------->playbackURLs");
         CompletableFuture future = CompletableFuture.supplyAsync(() -> {
-            for (String code : list) {
-                PlaybackVo playbackVo = new PlaybackVo();
-                playbackVo.setCameraIndexCode(code);
-                // 获取当前时间
-                LocalDateTime currentTime = LocalDateTime.now();
-                // 获取当前时间的前10分钟时间
-                LocalDateTime beforeTenMinutes = currentTime.minusMinutes(10);
-                // 获取当前时间的后10分钟时间
-                LocalDateTime afterTenMinutes = currentTime.plusMinutes(10);
-                // 格式化时间
-                DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");
-                playbackVo.setBeginTime(beforeTenMinutes.format(formatter));
-                playbackVo.setEndTime(afterTenMinutes.format(formatter));
-                //对象转换json字符串
-                String body = JSONObject.toJSONString(playbackVo);
-                //调用天网接口
-                String previewURLs = getPreviewURLs("/api/video/v1/cameras/playbackURLs", body);
-                JSONObject outJson = (JSONObject) JSONObject.parse(previewURLs);
-                if ("0".equals(outJson.getString("code"))) {
-                    log.info("outJson----->" + outJson);
-                    JSONObject data = outJson.getJSONObject("data");
-                    String urls = data.getString("url");
-                    log.info("--------------->code::" + code);
-
-                    String streamUrl = "rtsp://124.70.58.209:8554/" + code + "/" + code;
-                    ;
-                    String FilePath = "/opt/streams/map/" + code + ".mp4";
-                    Process process = rtspToMP4.StartRecord(ffmpegPath, streamUrl, FilePath);
-                    log.info("------playbackURLs----->>>>:" + process);
-                    if (null != process) {
-                        map.put(code, process);
-                    }
+//            for (String code : list) {
+            PlaybackVo playbackVo = new PlaybackVo();
+            playbackVo.setCameraIndexCode("01ea43e6676f4e47bd6c5cd9e02aa006");
+            // 获取当前时间
+            LocalDateTime currentTime = LocalDateTime.now();
+            // 获取当前时间的前10分钟时间
+            LocalDateTime beforeTenMinutes = currentTime.minusMinutes(10);
+            // 获取当前时间的后10分钟时间
+            LocalDateTime afterTenMinutes = currentTime.plusMinutes(10);
+            // 格式化时间
+            DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");
+            playbackVo.setBeginTime(beforeTenMinutes.format(formatter));
+            //现在当前时间:后续需要修改成报警时间的后几分钟
+            playbackVo.setEndTime(currentTime.format(formatter));
+            // jsonBody.put("protocol","rtsp");
+            //        jsonBody.put("expand","streamform=rtp");
+            playbackVo.setProtocol("rtsp");
+            playbackVo.setExpand("streamform=rtp");
+            //对象转换json字符串
+            String body = JSONObject.toJSONString(playbackVo);
+            //调用天网接口
+            log.info("body----->" + body);
+            String previewURLs = getPreviewURLs("/api/video/v1/cameras/playbackURLs", body);
+            log.info("previewURLs----->" + previewURLs);
+            JSONObject outJson = (JSONObject) JSONObject.parse(previewURLs);
+            if ("0".equals(outJson.getString("code"))) {
+                log.info("outJson----->" + outJson);
+                JSONObject data = outJson.getJSONObject("data");
+                String urls = data.getString("url");
+                log.info("--------------->urls::" + urls);
+
+//                    String FilePath = "/opt/streams/map/" + code + ".mp4";
+                String FilePath = "/opt/streams/map/01ea43e6676f4e47bd6c5cd9e02aa006.mp4";
+                Process process = rtspToMP4.StartRecord(ffmpegPath, urls, FilePath);
+                log.info("------playbackURLs----->>>>:" + process);
+                if (null != process) {
+                    map.put("01ea43e6676f4e47bd6c5cd9e02aa006", process);
                 }
+//                }
             }
             return 1;
         });
@@ -979,7 +985,7 @@ ffmpeg -i "concat:1.ts|2.ts" -c copy output.mp4
     public AjaxResult stop(String id) {
         if (map.containsKey(id)) {
             Process process = map.get(id);
-            log.info("-----stop------>>>"+process);
+            log.info("-----stop------>>>" + process);
             if (null != process) {
                 rtspToMP4.stopRecord(process);
                 return AjaxResult.success();

+ 19 - 13
vehicle-admin/src/main/java/com/ozs/web/controller/accountmanagment/BaseCameraManagementController.java

@@ -524,19 +524,25 @@ public class BaseCameraManagementController extends BaseController {
 //        baseCameraManagement.setMilesRange(begin + "-" + end);
 //        baseCameraManagement.setLongitudeAndLatitude(baseCameraManagement.getInstallLongitude() + "," + baseCameraManagement.getInstallLongitude());
 //        return AjaxResult.success(baseCameraManagement);
-        String cameraPreviewURL = GetCameraPreviewURL.playbackURLs();
-//        String cameraPreviewURL = GetCameraPreviewURL.getPreviewURLs();
-        log.info("-------------------------------->>>>>" + cameraPreviewURL);
-        JSONObject outJson = JSONObject.parse(cameraPreviewURL);
-        log.info("-------------------------------->>>>>outJson------" + outJson);
-        JSONObject data = outJson.getJSONObject("data");
-        log.info("-------------------------------->>>>>data------" + data);
-        String urls = data.getString("url");
-        log.info("-------------------------------->>>>>urls------" + urls);
-//        TimeUnit.SECONDS.sleep(5);
-//        String msg = HttpUtils.sendGet("http://10.48.36.47:9080/rtsp/api/pull?target=" + urls + "&streamPath=01ea43e6676f4e47bd6c5cd9e02aa006/01ea43e6676f4e47bd6c5cd9e02aa006&save=0");
-//        String msg = HttpUtils.sendGet("http://10.48.36.47:9080/api/gateway/stop?stream=01ea43e6676f4e47bd6c5cd9e02aa006/01ea43e6676f4e47bd6c5cd9e02aa006");
-        return AjaxResult.success(urls);
+//        String cameraPreviewURL = GetCameraPreviewURL.playbackURLs();
+////        String cameraPreviewURL = GetCameraPreviewURL.getPreviewURLs();
+//        log.info("-------------------------------->>>>>" + cameraPreviewURL);
+//        JSONObject outJson = JSONObject.parse(cameraPreviewURL);
+//        log.info("-------------------------------->>>>>outJson------" + outJson);
+//        JSONObject data = outJson.getJSONObject("data");
+//        log.info("-------------------------------->>>>>data------" + data);
+//        String urls = data.getString("url");
+//        log.info("-------------------------------->>>>>urls------" + urls);
+////        TimeUnit.SECONDS.sleep(5);
+////        String msg = HttpUtils.sendGet("http://10.48.36.47:9080/rtsp/api/pull?target=" + urls + "&streamPath=01ea43e6676f4e47bd6c5cd9e02aa006/01ea43e6676f4e47bd6c5cd9e02aa006&save=0");
+////        String msg = HttpUtils.sendGet("http://10.48.36.47:9080/api/gateway/stop?stream=01ea43e6676f4e47bd6c5cd9e02aa006/01ea43e6676f4e47bd6c5cd9e02aa006");
+//        return AjaxResult.success(urls);
+
+
+//        List<BaseCameraManagement> list = baseCameraManagementService.list(new QueryWrapper<BaseCameraManagement>().eq("line_dir",2));
+//        List<String> collect = list.stream().map(BaseCameraManagement::getCameraCode).collect(Collectors.toList());
+        CompletableFuture.runAsync(() -> cameraUtil.playbackURLs(new ArrayList<String>()));
+        return AjaxResult.success("ok");
     }
 
     /**