瀏覽代碼

流媒体推流增加预留时间

gao.qiang 1 年之前
父節點
當前提交
1a129142a1

+ 18 - 0
business-service/src/main/java/com/ozs/entity/vo/BaseVehicleTerminalDto.java

@@ -1,9 +1,11 @@
 package com.ozs.entity.vo;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.ozs.common.core.domain.BaseEntity;
 import lombok.Data;
 
 import java.io.Serializable;
+import java.util.Date;
 
 /**
  * 车载终端和日志信息表
@@ -58,4 +60,20 @@ public class BaseVehicleTerminalDto implements Serializable {
      * 线路编码(四位数字)
      */
     private String railwayCode;
+
+    /**
+     * 相机编码
+     */
+    private  String cameraCode;
+
+    /**
+     * 流
+     */
+    private String url;
+
+    /**
+     * 当前时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date time;
 }

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

@@ -44,5 +44,5 @@ public interface BaseCameraManagementService extends IService<BaseCameraManageme
 
     AjaxResult nonContactAlarmCamera(String cameraCode);
 
-    List<String> videoCaptureUrl(BaseVehicleTerminalDto baseVehicleTerminalDto);
+    List<BaseVehicleTerminalDto> videoCaptureUrl(BaseVehicleTerminalDto baseVehicleTerminalDto);
 }

+ 13 - 3
business-service/src/main/java/com/ozs/service/impl/BaseCameraManagementServiceImpl.java

@@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.generator.config.IFileCreate;
 import com.github.pagehelper.PageHelper;
 import com.ozs.common.core.domain.AjaxResult;
 import com.ozs.common.exception.ServiceException;
+import com.ozs.common.utils.AppendUtils;
 import com.ozs.common.utils.StringUtils;
 import com.ozs.common.utils.bean.BeanUtils;
 import com.ozs.common.utils.bean.BeanValidators;
@@ -60,6 +61,8 @@ public class BaseCameraManagementServiceImpl extends ServiceImpl<BaseCameraManag
     private BaseRailwayManagementService baseRailwayManagementService;
     @Autowired
     private SkynetHeartbeatLogMapper skynetHeartbeatLogMapper;
+    @Autowired
+    private BaseRailwayManagementMapper baseRailwayManagementMapper;
 
     /**
      * 相机台账管理表导入
@@ -415,8 +418,8 @@ public class BaseCameraManagementServiceImpl extends ServiceImpl<BaseCameraManag
     }
 
     @Override
-    public List<String> videoCaptureUrl(BaseVehicleTerminalDto baseVehicleTerminalDto) {
-        List<String> urlList = new ArrayList<>();
+    public List<BaseVehicleTerminalDto> videoCaptureUrl(BaseVehicleTerminalDto baseVehicleTerminalDto) {
+        List<BaseVehicleTerminalDto> urlList = new ArrayList<>();
         LambdaQueryWrapper<BaseCameraManagement> camera = new LambdaQueryWrapper<BaseCameraManagement>();
         camera.ge(BaseCameraManagement::getBeginMile, baseVehicleTerminalDto.getTravelMile());
         camera.eq(BaseCameraManagement::getLineDir, baseVehicleTerminalDto.getLineDir());
@@ -430,7 +433,14 @@ public class BaseCameraManagementServiceImpl extends ServiceImpl<BaseCameraManag
             List<BaseCameraManagement> list = new ArrayList<>(baseCameraManagementList);
             for (BaseCameraManagement baseCameraManagement : list) {
                 String flv = CameraUtil.getPlayFlv(baseCameraManagement.getCameraCode(), baseCameraManagement.getChannel());
-                urlList.add(flv);
+                BaseVehicleTerminalDto dto=new BaseVehicleTerminalDto();
+                dto.setUrl(flv);
+                dto.setCameraCode(baseCameraManagement.getCameraCode());
+                dto.setTime(new Date());
+                BaseRailwayManagement baseRailwayManagement = baseRailwayManagementMapper.selectOne(new QueryWrapper<BaseRailwayManagement>().eq("railway_code", baseVehicleTerminalDto.getRailwayCode()));
+                dto.setRailwayName(baseRailwayManagement.getRailwayName());
+                dto.setLineDir(baseVehicleTerminalDto.getLineDir());
+                String mils = AppendUtils.stringAppend(baseVehicleTerminalDto.getTravelMile());
             }
         }
         return urlList;

+ 3 - 1
business-service/src/main/java/com/ozs/utils/CameraUtil.java

@@ -81,6 +81,7 @@ public class CameraUtil {
     private static String bakUrl;
     private static String bakUrlRtsp;
     private static String wsUrl;
+    private static String httpUrl;
     private static CmdCameraUtil cUtil;
     private static RedisCache rc;
     private static ServerConfig sc;
@@ -556,6 +557,7 @@ ffmpeg -i "concat:1.ts|2.ts" -c copy output.mp4
         cUtil = cmdCameraUtil;
         sc = serverConfig;
         wsUrl = caneraConfig.getWsUrl();
+        httpUrl=caneraConfig.getHttpUrl();
         recordUrl = caneraConfig.getRecordUrl();
         hkUrl = caneraConfig.getHkUrl();
         host = caneraConfig.getHost();
@@ -1002,7 +1004,7 @@ ffmpeg -i "concat:1.ts|2.ts" -c copy output.mp4
             log.info("urls----->" + urls);
             try {
                 TimeUnit.SECONDS.sleep(5);
-                String msg = HttpUtils.sendGet(wsUrl + "/rtsp/api/pull?target=" + urls + "&streamPath=" + camerasVo.getCameraIndexCode() + "/" + channel + "&save=0");
+                String msg = HttpUtils.sendGet(httpUrl + "/rtsp/api/pull?target=" + urls + "&streamPath=" + camerasVo.getCameraIndexCode() + "/" + channel + "&save=0");
                log.info("msg---------->"+msg);
             } catch (InterruptedException e) {
                 e.printStackTrace();

+ 4 - 0
business-service/src/main/java/com/ozs/utils/CaneraConfig.java

@@ -61,4 +61,8 @@ public class CaneraConfig {
 
     @Value("${base.rtmpUrl:rtmp://10.48.36.47:1935}")
     private String rtmpUrl;
+
+    @Value("${base.httpUrl:http://10.48.36.47:9080}")
+    public String httpUrl;
+    
 }

+ 1 - 0
vehicle-admin/src/main/resources/application.yml

@@ -25,6 +25,7 @@ base:
   bakUrl: http://10.48.36.47:18891
   wsUrl: ws://10.48.36.47:9080
   historyUrl: http://10.48.36.47:18812
+  httpUrl: http://10.48.36.47:9080
   recordUrl: http://10.48.36.47:18810${server.servlet.context-path}
   env: 1
   hkUrl: http://10:122:1:22:1443