本文将介绍如何使用ffmpeg将视频格式文件的第一帧作为图片存储到服务器
首先,我们引入必要的依赖
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>javacv</artifactId>
<version>1.5.6</version>
</dependency>
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>ffmpeg-platform</artifactId>
<version>4.4-1.5.6</version>
</dependency>
然后实现截取第一帧功能
public void captureFirstFrame(String videoPath, String outputPath) {
FFmpegFrameGrabber grabber = new FFmpegFrameGrabber(videoPath);
try {
grabber.start();
// 读取第一帧
Java2DFrameConverter converter = new Java2DFrameConverter();
BufferedImage firstFrame = converter.convert(grabber.grabImage());
// 将图像保存到指定路径
ImageIO.write(firstFrame, "jpg", new File(outputPath));
grabber.stop();
} catch (IOException e) {
throw new RuntimeException("无法截取第一帧图像");
}
}
最后在需要转换的地方调用该方法即可
String inputPath = "源文件目录" ;
String outPath = "输出位置";
String fileName = "目标文件名";
setShowInBalloons(inputPath,outPath,fileName);
完结撒花