|
@@ -91,6 +91,7 @@ public class CameraUtil {
|
|
|
private static String bakUrl;
|
|
|
private static String bakUrlRtsp;
|
|
|
private static String wsUrl;
|
|
|
+ private static String wsUrls;
|
|
|
private static String httpUrl;
|
|
|
private static String httpUrls;
|
|
|
private static CmdCameraUtil cUtil;
|
|
@@ -240,6 +241,20 @@ ffmpeg -i "concat:1.ts|2.ts" -c copy output.mp4
|
|
|
* @param channel 相机通道
|
|
|
* @return
|
|
|
*/
|
|
|
+ public static String getPlayFlv(String cameraCode, String channel, boolean flay,String state) {
|
|
|
+ if (state.contains("master")) {
|
|
|
+ return wsUrl + "/ws/" + cameraCode + "/" + channel + ".flv";
|
|
|
+ }else {
|
|
|
+ return wsUrls + "/ws/" + cameraCode + "/" + channel + ".flv";
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+// if (!flay) {
|
|
|
+// return bakUrl + "/ws/" + channel + "/" + cameraCode + ".flv";
|
|
|
+// }
|
|
|
+// return webUrl + "/ws/" + channel + "/" + cameraCode + ".flv";
|
|
|
+ }
|
|
|
+
|
|
|
public static String getPlayFlv(String cameraCode, String channel, boolean flay) {
|
|
|
if (!flay) {
|
|
|
return bakUrl + "/hdl/" + cameraCode + "/" + channel + ".flv";
|
|
@@ -306,7 +321,7 @@ ffmpeg -i "concat:1.ts|2.ts" -c copy output.mp4
|
|
|
* @param channel
|
|
|
* @return
|
|
|
*/
|
|
|
- public static String getPlayFlv(String cameraCode, String channel) {
|
|
|
+ public String getPlayFlv(String cameraCode, String channel) {
|
|
|
int maxRetries = 3;
|
|
|
int retryCount = 0;
|
|
|
boolean success = false;
|
|
@@ -335,7 +350,8 @@ ffmpeg -i "concat:1.ts|2.ts" -c copy output.mp4
|
|
|
}
|
|
|
boolean contains = pathList.contains(cameraCode + "/" + channel);
|
|
|
if (contains) {
|
|
|
- return getPlayFlv(cameraCode, channel, true);
|
|
|
+ String cacheObject = redisCache.getCacheObject(cameraCode);
|
|
|
+ return getPlayFlv(cameraCode, channel, true,cacheObject);
|
|
|
} else {
|
|
|
/**
|
|
|
* jsonBody.put("cameraIndexCode", "01ea43e6676f4e47bd6c5cd9e02aa006");
|
|
@@ -347,19 +363,22 @@ ffmpeg -i "concat:1.ts|2.ts" -c copy output.mp4
|
|
|
CamerasVo camerasVo = new CamerasVo();
|
|
|
camerasVo.setCameraIndexCode(cameraCode);
|
|
|
previewURLs(camerasVo, channel);
|
|
|
- return getPlayFlv(cameraCode, channel, true);
|
|
|
+ String cacheObject = redisCache.getCacheObject(cameraCode);
|
|
|
+ return getPlayFlv(cameraCode, channel, true,cacheObject);
|
|
|
}
|
|
|
} else {
|
|
|
CamerasVo camerasVo = new CamerasVo();
|
|
|
camerasVo.setCameraIndexCode(cameraCode);
|
|
|
previewURLs(camerasVo, channel);
|
|
|
- return getPlayFlv(cameraCode, channel, true);
|
|
|
+ String cacheObject = redisCache.getCacheObject(cameraCode);
|
|
|
+ return getPlayFlv(cameraCode, channel, true,cacheObject);
|
|
|
}
|
|
|
} else {
|
|
|
CamerasVo camerasVo = new CamerasVo();
|
|
|
camerasVo.setCameraIndexCode(cameraCode);
|
|
|
previewURLs(camerasVo, channel);
|
|
|
- return getPlayFlv(cameraCode, channel, true);
|
|
|
+ String cacheObject = redisCache.getCacheObject(cameraCode);
|
|
|
+ return getPlayFlv(cameraCode, channel, true,cacheObject);
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -707,6 +726,7 @@ ffmpeg -i "concat:1.ts|2.ts" -c copy output.mp4
|
|
|
cUtil = cmdCameraUtil;
|
|
|
sc = serverConfig;
|
|
|
wsUrl = caneraConfig.getWsUrl();
|
|
|
+ wsUrls = caneraConfig.getWsUrls();
|
|
|
httpUrl = caneraConfig.getHttpUrl();
|
|
|
httpUrls = caneraConfig.getHttpUrls();
|
|
|
recordUrl = caneraConfig.getRecordUrl();
|
|
@@ -905,7 +925,7 @@ ffmpeg -i "concat:1.ts|2.ts" -c copy output.mp4
|
|
|
} catch (InterruptedException e) {
|
|
|
e.printStackTrace();
|
|
|
}
|
|
|
- return getPlayFlv(code, channel, true);
|
|
|
+ return getPlayFlv(code, channel, true,"master");
|
|
|
} else {
|
|
|
return "调用天网接口失败";
|
|
|
}
|