По причине, о которой я не знаю, я использую команду, которая ffmpeg -i
, для получения некоторых разрешений видео. Он записывает выходные сообщения в ErrorStream
, а не OutputStream
. Когда я сначала печатаю поток ошибок, я вижу вывод.
try{
Runtime runtime = Runtime.getRuntime();
Process process = runtime.exec(args);
BufferedReader errorReader = new BufferedReader(new InputStreamReader(process.getErrorStream()));
BufferedReader lineReader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
BufferedReader err = new BufferedReader(new InputStreamReader(process.getErrorStream()));
while ((line = err.readLine()) != null) {
System.out.println(line);
}
err.close();
BufferedReader input = new BufferedReader(new InputStreamReader(process.getInputStream()));
while ((line = input.readLine()) != null) {
System.out.println(line);
}
input.close();
process.waitFor();
System.out.println("---------------------------------------");
}
catch (Exception x){
System.out.println(x.getMessage());
}