Wykonaj polecenie terminalu linux w java?
Próbuję wykonać komendę SOX z java, ale niestety powraca błąd za każdym razem. Każda inna komenda SOX działa idealnie! Oto kod:
class Simple {
public static void main(String args[]) throws IOException, Exception {
Process p;
BufferedReader br;
String co = "sox speech_16.wav -p pad 0 2.5 | sox - -m speech_16.wav speech_output.wav";
p = Runtime.getRuntime().exec(co);
br = new BufferedReader(new InputStreamReader(p.getInputStream()));
int returnCode = p.waitFor();
System.out.println("reurn code : "+returnCode);
}
}
Kiedy wykonuję to samo polecenie sox w terminalu, działa poprawnie. Naprawdę nie mogę zrozumieć, na czym polega problem !! Czy to z powodu „|” symbol??