我在命令提示符下成功执行了以下FFMPEG终端命令。但是我无法在我的Java程序中执行此命令。我可以在我的Java程序中执行所有其他没有双引号的ffmpeg命令。在这里,我仅将双引号(“ ...”)混淆。
ffmpeg -i "concat:C:\\journalism\\videos\\vid1.ts|C:\\journalism\\videos\\vid2.ts" -c copy C:\\journalism\\videos\\output.mp4
Run Code Online (Sandbox Code Playgroud)
我可以在命令提示符下成功执行以上操作。但是我在我的java代码中尝试了如下。
Runtime.getRuntime().exec("C:\\ffmpeg\\bin\\ffmpeg -i 'concat:C:\\journalism\\videos\\vid1.ts|C:\\journalism\\videos\\vid2.ts' -c copy C:\\journalism\\videos\\output.mp4");
Run Code Online (Sandbox Code Playgroud)
甚至我尝试用单引号('...')替换双引号(“ ...”)。但是没有成功。
谁能帮我摆脱这个问题...
提前致谢...
我为自己找到了答案。我没有使用 String 对象,而是使用 String 数组,如下所示,然后命令执行成功。
String[] cmd={"C:\\ffmpeg\\bin\\ffmpeg","-i", "concat:C:\\journalism\\videos\\vid1.ts|C:\\journalism\\videos\\vid2.ts", "-c", "copy", "C:\\journalism\\videos\\output.mp4"};
Runtime.getRuntime().exec(cmd);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3920 次 |
| 最近记录: |