浏览代码

修改视频截图方法

xuzuoyun 5 年之前
父节点
当前提交
3e228c59e4

+ 1 - 1
jeecg-boot-module-system/src/main/java/org/jeecg/config/ureport/ServletConfig.java

@@ -9,7 +9,7 @@ import org.springframework.context.annotation.ImportResource;
 import javax.servlet.Servlet;
 import javax.servlet.Servlet;
 
 
 @Configuration
 @Configuration
-@ImportResource("classpath:ureport-console-context.xml")
+//@ImportResource("classpath:ureport-console-context.xml")
 public class ServletConfig {
 public class ServletConfig {
 
 
     @Bean
     @Bean

+ 7 - 4
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/job/OceanengineJob.java

@@ -18,6 +18,7 @@ import org.apache.http.impl.cookie.BasicClientCookie;
 import org.bytedeco.javacpp.opencv_core;
 import org.bytedeco.javacpp.opencv_core;
 import org.bytedeco.javacv.FFmpegFrameGrabber;
 import org.bytedeco.javacv.FFmpegFrameGrabber;
 import org.bytedeco.javacv.Frame;
 import org.bytedeco.javacv.Frame;
+import org.bytedeco.javacv.Java2DFrameConverter;
 import org.openqa.selenium.Cookie;
 import org.openqa.selenium.Cookie;
 import org.openqa.selenium.WebDriver;
 import org.openqa.selenium.WebDriver;
 import org.openqa.selenium.chrome.ChromeDriver;
 import org.openqa.selenium.chrome.ChromeDriver;
@@ -182,14 +183,16 @@ public class OceanengineJob implements Job {
                 }
                 }
                 i++;
                 i++;
             }
             }
-            opencv_core.IplImage img = f.image;
-            int owidth = img.width();
-            int oheight = img.height();
+//            opencv_core.IplImage img = f.image;
+            int owidth = f.imageWidth;
+            int oheight = f.imageHeight;
+            Java2DFrameConverter converter =new Java2DFrameConverter();
+            BufferedImage fecthedImage =converter.getBufferedImage(f);
 // 对截取的帧进行等比例缩放
 // 对截取的帧进行等比例缩放
             int width = 800;
             int width = 800;
             int height = (int) (((double) width / owidth) * oheight);
             int height = (int) (((double) width / owidth) * oheight);
             BufferedImage bi = new BufferedImage(width, height, BufferedImage.TYPE_3BYTE_BGR);
             BufferedImage bi = new BufferedImage(width, height, BufferedImage.TYPE_3BYTE_BGR);
-            bi.getGraphics().drawImage(f.image.getBufferedImage().getScaledInstance(width, height, Image.SCALE_SMOOTH),
+            bi.getGraphics().drawImage(fecthedImage.getScaledInstance(width, height, Image.SCALE_SMOOTH),
                     0, 0, null);
                     0, 0, null);
             ByteArrayOutputStream baos = new ByteArrayOutputStream();//io流
             ByteArrayOutputStream baos = new ByteArrayOutputStream();//io流
             ImageIO.write(bi, "jpg", baos);
             ImageIO.write(bi, "jpg", baos);