瀏覽代碼

封面图不更新

lyhzzz 2 年之前
父節點
當前提交
f30ec1fa3b

+ 5 - 2
src/main/java/com/fdkankan/fusion/common/util/VideoUtil.java

@@ -9,7 +9,7 @@ import java.util.*;
 public class VideoUtil {
 
 
-    public static String mergeVideo(LinkedHashSet<String> fromVideoFileList, String newVideoFile) {
+    public static String mergeVideo(LinkedHashSet<String> fromVideoFileList, String newVideoFile,Boolean newCover) {
         File tagFile = new File(newVideoFile);
         if(!tagFile.exists()){
             tagFile.mkdirs();
@@ -46,7 +46,10 @@ public class VideoUtil {
             tsPath.append(" +faststart ");
             tsPath.append(newVideoFile).append("/").append(fileName);
             ShellUtil.execCmd(tsPath.toString());
-            ffmpegVideo(newVideoFile +"/"+ fileName,newVideoFile +"/"+ imgName,"200","200");
+
+            if(newCover){
+                ffmpegVideo(newVideoFile +"/"+ fileName,newVideoFile +"/"+ imgName,"200","200");
+            }
             //删除生成的ts文件
             for (String filePath : voidTS) {
                 File file = new File(filePath);

+ 18 - 11
src/main/java/com/fdkankan/fusion/service/impl/CaseVideoServiceImpl.java

@@ -124,10 +124,6 @@ public class CaseVideoServiceImpl extends ServiceImpl<ICaseVideoMapper, CaseVide
                         mergeVideoUrl = videoFolder.getVideoMergeUrl().replace(queryPath, "/home/");
                         uploadToOssUtil.downFormAli(videoFolder.getVideoMergeUrl().replace(queryPath, ""), mergeVideoUrl);
                         ossDelList.add(videoFolder.getVideoMergeUrl());
-
-                    }
-                    if (StringUtils.isNotBlank(videoFolder.getVideoFolderCover())) {
-                        ossDelList.add(videoFolder.getVideoFolderCover());
                     }
                     caseVideoService.deleteByFolderId(videoFolder.getVideoFolderId());
                     redisUtil.set(RedisKeyUtil.mergerVideoKey + videoFolder.getVideoFolderId(), "10");
@@ -137,7 +133,11 @@ public class CaseVideoServiceImpl extends ServiceImpl<ICaseVideoMapper, CaseVide
                         filePathSetAll.add(mergeVideoUrl);
                     }
                     filePathSetAll.addAll(filePathSet);
-                    String mergeLocalName = VideoUtil.mergeVideo(filePathSetAll, FilePath.VIDEO_LOCAL_PATH);
+                    Boolean newCover = true;
+                    if(ossDelList.size() >0){
+                        newCover = false;
+                    }
+                    String mergeLocalName = VideoUtil.mergeVideo(filePathSetAll, FilePath.VIDEO_LOCAL_PATH,newCover);
                     redisUtil.set(RedisKeyUtil.mergerVideoKey + videoFolder.getVideoFolderId(), "30");
                     if (mergeLocalName == null) {
                         updateCaseVideoStatus(videoFolder.getVideoFolderId(), -1);
@@ -146,20 +146,27 @@ public class CaseVideoServiceImpl extends ServiceImpl<ICaseVideoMapper, CaseVide
                     }
                     String mergeLocalPath = FilePath.VIDEO_LOCAL_PATH + "/" + mergeLocalName;
                     String ossKey = String.format(FilePath.VIDEO_OSS_PATH, videoFolder.getVideoFolderId()) + "/" + mergeLocalName;
-
-                    String mergeLocalPathImg = FilePath.VIDEO_LOCAL_PATH + "/" + mergeLocalName.replace(".mp4", ".jpg");
-                    String ossKeyImg = String.format(FilePath.VIDEO_OSS_PATH, videoFolder.getVideoFolderId()) + "/" + mergeLocalName.replace(".mp4", ".jpg");
                     uploadToOssUtil.uploadOss(mergeLocalPath, ossKey);
-                    uploadToOssUtil.uploadOss(mergeLocalPathImg, ossKeyImg);
-                    if (!uploadToOssUtil.existKey(ossKey) && !uploadToOssUtil.existKey(ossKeyImg)) {
+                    if (!uploadToOssUtil.existKey(ossKey)) {
                         updateCaseVideoStatus(videoFolder.getVideoFolderId(), -1);
                         redisUtil.set(RedisKeyUtil.mergerVideoKey + videoFolder.getVideoFolderId(), "-1");
                         return;
                     }
+                    if(newCover){
+                        String mergeLocalPathImg = FilePath.VIDEO_LOCAL_PATH + "/" + mergeLocalName.replace(".mp4", ".jpg");
+                        String ossKeyImg = String.format(FilePath.VIDEO_OSS_PATH, videoFolder.getVideoFolderId()) + "/" + mergeLocalName.replace(".mp4", ".jpg");
+                        uploadToOssUtil.uploadOss(mergeLocalPathImg, ossKeyImg);
+                        if (!uploadToOssUtil.existKey(ossKeyImg)) {
+                            updateCaseVideoStatus(videoFolder.getVideoFolderId(), -1);
+                            redisUtil.set(RedisKeyUtil.mergerVideoKey + videoFolder.getVideoFolderId(), "-1");
+                            return;
+                        }
+                        videoFolder.setVideoFolderCover(queryPath + ossKeyImg);
+                    }
+
                     redisUtil.set(RedisKeyUtil.mergerVideoKey + videoFolder.getVideoFolderId(), "70");
 
                     videoFolder.setVideoMergeUrl(queryPath + ossKey);
-                    videoFolder.setVideoFolderCover(queryPath + ossKeyImg);
                     videoFolderService.updateById(videoFolder);
                     FileUtil.del(FilePath.VIDEO_LOCAL_PATH);
                     updateCaseVideoStatus(videoFolder.getVideoFolderId(), 1);