PDA

View Full Version : [Java] ...DEVASTAZIONE e Process.waitFor()


peppedx
18-07-2003, 08:36
...Sono nei guai... dopo aver ricompilato per windows ffmpeg dovevo utilizzarlo da un programma JAVA...
vabbè direte voi, che sarà mai : chiami Runtime.exec() ... già, ma peccato che poi devo aspettare che abbia finito...p.waitFor() direte voi... NON FUNZIONA!!!!! Qualcuno ha mai avuto problemi simili? Aiuto....:mc:

tudo75
15-11-2007, 10:28
io ho risolto così:

Process proc = Runtime.getRuntime().exec("ffmpeg.exe -i \"" + files[i].getAbsolutePath()+ "\" \"" + files[i].getAbsolutePath() + ".flv\"");
InputStream stderr = proc.getErrorStream();
InputStreamReader isr = new InputStreamReader(stderr);
BufferedReader br = new BufferedReader(isr);
String line = null;
System.out.println("<file>");
while ( (line = br.readLine()) != null)
System.out.println(line);
System.out.println("</file>");
int exitVal = proc.waitFor();

andbin
15-11-2007, 10:42
...Sono nei guai... dopo aver ricompilato per windows ffmpeg dovevo utilizzarlo da un programma JAVA...
vabbè direte voi, che sarà mai : chiami Runtime.exec() ... già, ma peccato che poi devo aspettare che abbia finito...p.waitFor() direte voi... NON FUNZIONA!!!!! Qualcuno ha mai avuto problemi simili? Aiuto....:mc:Non è un problema della waitFor! Il fatto è che se il programma eseguito fa dell'output sullo standard-output/error, allora tale output bisognerebbe leggerlo (anche se poi magari non ti serve), altrimenti possono accadere dei blocchi.