java 视频中截图

时间:2022-04-30 13:29:33

package com.sun.test;

import java.io.File;
import java.util.List;

public class CreatePh {
//public static final String FFMPEG_PATH = "E:/ffmpeg/ffmpeg.exe";
public static boolean processImg(String veido_path,String ffmpeg_path) {
File file = new File(veido_path);
if (!file.exists()) {
System.err.println("路径[" + veido_path + "]对应的视频文件不存在!");
return false;
}
List<String> commands = new java.util.ArrayList<String>();
commands.add(ffmpeg_path);
commands.add("-i");
commands.add(veido_path);
commands.add("-y");
commands.add("-f");
commands.add("image2");
commands.add("-ss");
commands.add("5");//这个参数是设置截取视频多少秒时的画面
//commands.add("-t");
//commands.add("0.001");
commands.add("-s");
commands.add("200x200");
commands.add(veido_path.substring(0, veido_path.lastIndexOf(".")).replaceFirst("vedio", "file") + ".jpg");
try {
ProcessBuilder builder = new ProcessBuilder();
builder.command(commands);
builder.start();
System.out.println("截取成功");
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
public static void main(String[] args) {
processImg("C:/Users/xsp034/Desktop/video/1.mp4","C:/Users/xsp034/Desktop/ffmpeg.exe");
}
}

需要用到ffmpeg.exe这个工具