我正在使用这行代码从图像中创建一个简单的视频。
ffmpeg -framerate 1/5 -i C:\mydir\img.jpg -c:v libx264 -r 30 -pix_fmt yuv420p test2.mp4
如果我从cmd执行它,它可以完美地工作。但是如果我从我的java程序中调用它,我会开始看到一些ffmpeg行,但它会卡在这行上
Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown), 110x162 [SAR 1:1 DAR 55:81], 0.20 tbr, 0.20 tbn, 0.20 tbc
请注意,eclipse没有说该程序是<终止>。 这是我用来调用命令的方法:
try{
ProcessBuilder builder = new ProcessBuilder(
"cmd.exe", "/c",
//"cd \"C:\\Users\\Davide\\Downloads\\ffmpeg-20160811-b83d907-win64-static\\bin\" && "
ffCommand);
builder.redirectErrorStream(true);
Process p = builder.start();
BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line;
while (true) {
line = r.readLine();
if (line == null) { break; }
System.out.println(line);
}
}catch(IOException e){
e.printStackTrace();
其中ffcommand
是我先写的代码行。
感谢。