我正在尝试在Linux上通过exec调用运行ffmpeg。然而,我必须在命令中使用引号(ffmpeg需要)。我一直在查看processbuilder和exec的Java文档以及stackoverflow上的问题,但似乎找不到解决方案。
我需要运行:
ffmpeg -i "rtmp://127.0.0.1/vod/sample start=1500 stop=24000" -re -vcodec copy -acodec copy -f flv rtmp://127.0.0.1/live/qltv
我需要将引号插入到以下参数字符串中。请注意,仅添加带有反斜杠的单引号或双引号不起作用,因为processbuilder解析和运行命令的方式的特性。
String argument = "ffmpeg -i rtmp://127.0.0.1/vod/"
+ nextVideo.getFilename()
+ " start=" + nextVideo.getStart()
+ " stop=" + nextVideo.getStop()
+ " -re -vcodec copy -acodec copy -f flv rtmp://127.0.0.1/live/qltv";
非常感谢您的帮助。