я запускаю следующий код в весенней загрузке и java, но process = Runtime.getRuntime (). Exec (cmd) не запускается в весеннем загрузочном приложении. В чистом Java-приложении это нормально. при весенней загрузке он не сообщает об исключении или ошибке. Вы можете мне помочь?
public String convetor(String videoInputPath,String basepath) {
File output = new File("/root/output.txt");
File error = new File("/root/error.txt");
File tmp = new File(videoInputPath);
String des = tmp.getName();
String[] filename = des.split("\\.");
String dest = basepath+filename[0] + ".ts";
System.out.println(videoInputPath);
List<String> command = new ArrayList<String>();
command.add("ffmpeg");
command.add("-i");
command.add(videoInputPath);
command.add("-vcodec");
command.add("copy");
command.add("-vbsf");
command.add("h264_mp4toannexb");
command.add(dest);
ProcessBuilder builder = new ProcessBuilder(command);
Process process = null;
String cmd = "ffmpeg -i " + videoInputPath + "-vcodec copy -vbsf h264_mp4toannexb "+dest;
try {
System.out.println("==============");
builder.redirectOutput(output);
builder.redirectError(error);
// process = builder.start();
process = Runtime.getRuntime().exec(cmd);
System.out.println("++++++++++++");
InputStreamReader isr = new InputStreamReader(process.getInputStream());
BufferedReader br = new BufferedReader(isr);
String lineRead;
while ((lineRead = br.readLine()) != null) {
}
process.waitFor();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (InterruptedException e){
e.printStackTrace();
}
return dest;
}`