From 97a0bbd8b75c7ba8df78a1e8f67bbaad23edf298 Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Sat, 24 Apr 2021 15:47:52 +0800
Subject: [PATCH] 1.App警情反馈新增

---
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/rvideo/controller/RvideoController.java |  161 ++++++++++++++++++++++++++++++++---------------------
 1 files changed, 96 insertions(+), 65 deletions(-)

diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/rvideo/controller/RvideoController.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/rvideo/controller/RvideoController.java
index 8d7ee85..6915d6a 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/rvideo/controller/RvideoController.java
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/rvideo/controller/RvideoController.java
@@ -16,23 +16,18 @@
  */
 package org.springblade.jfpt.rvideo.controller;
 
-import io.minio.MinioClient;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
-import jodd.util.StringPool;
 import lombok.AllArgsConstructor;
-
 import javax.validation.Valid;
-
 import net.logstash.logback.encoder.org.apache.commons.lang3.StringEscapeUtils;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.DateUtil;
 import org.springblade.core.tool.utils.Func;
-import org.springblade.core.tool.utils.StringUtil;
 import org.springblade.jfpt.alarm.service.IAlarmService;
 import org.springblade.jfpt.xlfeedback.service.IXlfeedbackService;
 import org.springframework.web.bind.annotation.*;
@@ -67,6 +62,8 @@
 	private static String PRF_MINIO_URL = "minio/jfpt/void/";
 	private static  Thread thread;
 	private static  String UUIDs;
+	private static  String uids;
+	private static  int count=0;
 
 	/**
 	 * 详情
@@ -135,6 +132,7 @@
 	/**
 	 * 删除
 	 */
+
 	@PostMapping("/remove")
 	@ApiOperationSupport(order = 8)
 	@ApiOperation(value = "删除", notes = "传入ids")
@@ -142,89 +140,122 @@
 		return R.status(rvideoService.removeByIds(Func.toLongList(ids)));
 	}
 
-	/**
-	 * @param sourcePath 源路径
-	 * @param jid 警情id
-	 * @throws Exception
-	 */
-	@PostMapping("/rVoid")
-	public String rVoid(String sourcePath,String jid) throws Exception {
-		String webroot = "D:\\LXVideoServer\\3rd\\ffmpeg\\bin";
-		String UUID = DateUtil.time();
-		//目标路径
-		String targetPath = PRE_URL + UUID + ".mp4";
-		//返回前端路径
-		String vaddress = null;
-		Runtime run = null;
-
-		try {
-
-			run = Runtime.getRuntime();
-
-			long start = System.currentTimeMillis();
-
-			System.out.println(new File(webroot).getAbsolutePath());
-			//通过视频url录制30s视频保存,格式为MP4
-			String newJson = StringEscapeUtils.unescapeHtml4(sourcePath);
-			Process p = run.exec(new File(webroot).getAbsolutePath() + "/ffmpeg -i " +newJson+ " -y -t 00:00:30 -codec copy -f mp4 " + targetPath);
-
-			//释放进程
-
-			p.getOutputStream().close();
-
-			p.getInputStream().close();
-
-			p.getErrorStream().close();
-
-			p.waitFor();
-
-			long end = System.currentTimeMillis();
-
-			System.out.println(sourcePath + " convert success, costs:" + (end - start) + "ms");
-
-		} catch (Exception e) {
-
-			e.printStackTrace();
-
-		} finally {
-			//run调用lame解码器最后释放内存
-			run.freeMemory();
-			//返回路径
-			vaddress = "https://web.byisf.com/" + PRF_MINIO_URL + UUID + ".mp4";
-			//把路径通过警情id添加到警情信息
-			alarmService.updateVaddress(vaddress,jid);
-		}
-		return vaddress;
-	}
+//	/**
+//	 * @param sourcePath 源路径
+//	 * @param jid 警情id
+//	 * @throws Exception
+//	 */
+//	@PostMapping("/rVoid")
+//	public String rVoid(String sourcePath,String jid) throws Exception {
+//		String webroot = "D:\\LXVideoServer\\3rd\\ffmpeg\\bin";
+//		String UUID = DateUtil.time();
+//		//目标路径
+//		String targetPath = PRE_URL + UUID + ".mp4";
+//		//返回前端路径
+//		String vaddress = null;
+//		Runtime run = null;
+//
+//		try {
+//
+//			run = Runtime.getRuntime();
+//
+//			long start = System.currentTimeMillis();
+//
+//			System.out.println(new File(webroot).getAbsolutePath());
+//			//通过视频url录制30s视频保存,格式为MP4
+//			String newJson = StringEscapeUtils.unescapeHtml4(sourcePath);
+//			Process p = run.exec(new File(webroot).getAbsolutePath() + "/ffmpeg -i " +newJson+ " -y -t 00:00:30 -codec copy -f mp4 " + targetPath);
+//
+//			//释放进程
+//
+//			p.getOutputStream().close();
+//
+//			p.getInputStream().close();
+//
+//			p.getErrorStream().close();
+//
+//			p.waitFor();
+//
+//			long end = System.currentTimeMillis();
+//
+//			System.out.println(sourcePath + " convert success, costs:" + (end - start) + "ms");
+//
+//		} catch (Exception e) {
+//
+//			e.printStackTrace();
+//
+//		} finally {
+//			//run调用lame解码器最后释放内存
+//			run.freeMemory();
+//			//返回路径
+//			vaddress = "https://web.byisf.com/" + PRF_MINIO_URL + UUID + ".mp4";
+//			//把路径通过警情id添加到警情信息
+//			alarmService.updateVaddress(vaddress,jid);
+//		}
+//		return vaddress;
+//	}
 
 
 		/**
 	 * Javacv录制视频
 	 */
 	@PostMapping("/rVoids")
-	public void rVoids() {
+	public void rVoids(String url,String uid) {
 		String UUID = DateUtil.time();
 		UUIDs=UUID;
+		uids=uid;
 		RecordVideoThread recordVideoThread = new RecordVideoThread();
 		recordVideoThread.filePath = "D:\\software\\minio\\data\\jfpt\\void\\"+UUID + ".mp4";
 		recordVideoThread.timesSec = 0L;
-		recordVideoThread.streamURL = "https://web.byisf.com:18000/live?port=1935&app=live&stream=0012415A75C6-1";// 最好设置结束时长 如直接停止程序会造成输出文件的损坏无法正常播放
+		String newJson = StringEscapeUtils.unescapeHtml4(url);
+		recordVideoThread.streamURL =newJson;// 最好设置结束时长 如直接停止程序会造成输出文件的损坏无法正常播放
 		recordVideoThread.isAudio = true;
 		thread = new Thread(recordVideoThread);
 		thread.start();
 	}
 
-
-
 	@PostMapping("/stop")
-	public void stop(String jid) throws FrameGrabber.Exception {
+	public String stop(String jid) throws FrameGrabber.Exception {
 		//返回前端路径
 		String vaddress = null;
         thread.stop();
 		//返回路径
 		vaddress = "https://web.byisf.com/" + PRF_MINIO_URL + UUIDs + ".mp4";
 		//把路径通过警情id添加到警情信息
-		alarmService.updateVaddress(vaddress,jid);
+		alarmService.updateVaddress(vaddress,uids,jid);
+		return vaddress;
+
 	}
 
+
+//	/**
+//	 * Javacv录制视频测试
+//	 */
+//	@PostMapping("/cs")
+//	public void rVoids(String url,String uid) {
+//		String UUID = DateUtil.time();
+//		UUIDs=UUID;
+//		String newJson = StringEscapeUtils.unescapeHtml4(url);
+//		RecordVideoThread recordVideoThread = new RecordVideoThread(newJson,"D:\\software\\minio\\data\\jfpt\\void\\"+UUID +".mp4");
+//		thread = new Thread(recordVideoThread);
+//		thread.start();
+//	}
+//
+//	@PostMapping("/csc")
+//	public String stopcs(String jid) throws FrameGrabber.Exception {
+//		//返回前端路径
+//		String vaddress = null;
+//		//  发出中断标志  true
+//		thread.interrupt();
+//		//返回路径
+//		vaddress = "https://web.byisf.com/" + PRF_MINIO_URL + UUIDs + ".mp4";
+//		//把路径通过警情id添加到警情信息
+//		String uids=Integer.toString(count);
+//		alarmService.updateVaddress(vaddress,uids,jid);
+//		return vaddress;
+//
+//	}
+
+
+
 }

--
Gitblit v1.9.3