From 308a16f4b4088377fe14c10887ca3337494d921f Mon Sep 17 00:00:00 2001 From: Caojr Date: Mon, 3 Nov 2025 15:39:03 +0800 Subject: [PATCH] =?UTF-8?q?szx-1283=20=E4=BF=AE=E6=94=B9ffmpeg=E8=B7=AF?= =?UTF-8?q?=E5=BE=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/xboe/config/CustomFFMPEGLocator.java | 15 +++++++++++++++ .../com/xboe/module/course/api/CourseFileApi.java | 11 ++--------- 2 files changed, 17 insertions(+), 9 deletions(-) create mode 100644 servers/boe-server-all/src/main/java/com/xboe/config/CustomFFMPEGLocator.java diff --git a/servers/boe-server-all/src/main/java/com/xboe/config/CustomFFMPEGLocator.java b/servers/boe-server-all/src/main/java/com/xboe/config/CustomFFMPEGLocator.java new file mode 100644 index 00000000..ad6a5b9d --- /dev/null +++ b/servers/boe-server-all/src/main/java/com/xboe/config/CustomFFMPEGLocator.java @@ -0,0 +1,15 @@ +package com.xboe.config; + +import ws.schild.jave.process.ffmpeg.DefaultFFMPEGLocator; + +/** + * @author guo jia + */ +public class CustomFFMPEGLocator extends DefaultFFMPEGLocator { + + @Override + public String getExecutablePath() { + return "/usr/local/opt/ffmpeg/ffmpeg"; + } + +} diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/api/CourseFileApi.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/api/CourseFileApi.java index c2dd408f..a0716cee 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/api/CourseFileApi.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/api/CourseFileApi.java @@ -15,6 +15,7 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import com.xboe.config.CustomFFMPEGLocator; import org.apache.commons.lang3.StringUtils; import org.springframework.orm.ObjectOptimisticLockingFailureException; import org.springframework.web.bind.annotation.GetMapping; @@ -47,11 +48,8 @@ import com.xboe.standard.BaseConstant; import com.xboe.standard.enums.BoedxCourseFileType; import lombok.extern.slf4j.Slf4j; -import ws.schild.jave.Encoder; import ws.schild.jave.MultimediaObject; import ws.schild.jave.info.MultimediaInfo; -import ws.schild.jave.process.ffmpeg.DefaultFFMPEGLocator; -import ws.schild.jave.process.ffmpeg.FFMPEGProcess; /** * 课件资源表,课程的相关文件内容 @@ -262,12 +260,7 @@ public class CourseFileApi extends ApiBaseController { log.info("上传 "+file.getFileType()+"文件:"+file.getFilePath()); try { //System.out.println(fileFullPath); - MultimediaInfo m = new MultimediaObject(new File(fileFullPath), new DefaultFFMPEGLocator() { - @Override - public String getExecutablePath() { - return "/usr/local/opt/ffmpeg/ffmpeg"; - } - }).getInfo(); + MultimediaInfo m = new MultimediaObject(new File(fileFullPath), new CustomFFMPEGLocator()).getInfo(); Long ls = m.getDuration() / 1000;//秒 log.info("文件时长 "+ls); //System.out.print("视频时长:" + ls + "秒");