在Java中,可以使用Runtime.getRuntime().exec()
方法来调用ffmpeg命令。
以下是一个示例代码,展示如何调用ffmpeg命令来将视频文件转换为MP4格式:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class FFMpegExample {
public static void main(String[] args) {
try {
// 定义ffmpeg命令
String ffmpegCmd = "ffmpeg -i input.avi output.mp4";
// 执行ffmpeg命令
Process process = Runtime.getRuntime().exec(ffmpegCmd);
// 获取命令输出结果
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getErrorStream()));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
// 等待命令执行完成
int exitCode = process.waitFor();
System.out.println("Exit Code: " + exitCode);
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
上述代码中,ffmpeg -i input.avi output.mp4
是要执行的ffmpeg命令,其中input.avi
是输入文件名,output.mp4
是输出文件名。你可以根据自己的需要修改这些参数。
要注意的是,Runtime.getRuntime().exec()
方法会创建一个新的进程来执行命令,并返回一个Process
对象。你可以使用Process
对象来获取命令的输出结果,也可以使用waitFor()
方法等待命令执行完成。
另外,为了在Java程序中调用ffmpeg命令,你需要确保ffmpeg已经安装并配置了环境变量。