| | |
| | | private static String PRF_MINIO_URL = "minio/jfpt/void/"; |
| | | private static Thread thread; |
| | | private static String UUIDs; |
| | | private static String uids; |
| | | |
| | | /** |
| | | * 详情 |
| | |
| | | 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(String url) { |
| | | public void rVoids(String url,String uid) { |
| | | String UUID = DateUtil.time(); |
| | | uids=uid; |
| | | UUIDs=UUID; |
| | | RecordVideoThread recordVideoThread = new RecordVideoThread(); |
| | | recordVideoThread.filePath = "D:\\software\\minio\\data\\jfpt\\void\\"+UUID + ".mp4"; |
| | |
| | | //返回路径 |
| | | vaddress = "https://web.byisf.com/" + PRF_MINIO_URL + UUIDs + ".mp4"; |
| | | //把路径通过警情id添加到警情信息 |
| | | alarmService.updateVaddress(vaddress,jid); |
| | | alarmService.updateVaddress(vaddress,uids,jid); |
| | | return vaddress; |
| | | |
| | | } |