我正在尝试运行此sox命令,使用以下命令混合我程序中的多个音频输入:
String command = "sox C:/serverFolder/a1.wav -p pad 0 0 | sox - -m C:/serverFolder/a2.wav -p pad 10.0 0 | sox - -m C:/serverFolder/a3.wav -p pad 0 0 | sox - -m C:/serverFolder/a4.wav -p pad 20.0 0 | sox - -m -v 0 C:/serverFolder/blank.wav C:/serverFolder/audioFile.wav";
Process proc = Runtime.getRuntime().exec(command);
我得到了
sox FAIL pad: usage: {length[@position]}
如果我将此命令运行到我的cmd中它运行正常。 我尝试了几种类似于List中建议的方法: Using Java's ProcessBuilder to run SoX
或者这里使用sox的绝对路径建议的那个 Running Sox commands from Java code
由于代码在cmd中运行正常,我猜我是从java中以错误的方式发送它。 有什么想法吗?