【发布时间】:2016-01-13 23:23:18
【问题描述】:
我正在执行以下ffmpeg 命令来修剪视频。我遇到的问题是,如果文件路径包含空格,则命令失败。我尝试了多种处理空格的方法,但除了将文件移动到路径之外,它们都不起作用没有空间,然后以新文件路径作为源执行命令。
下面是命令-
execFFmpegBinary("-i " + filepath + " -ss " + startMs / 1000 + " -to " + endMs / 1000 + " -strict -2 -async 1 " + dest.getAbsolutePath());
private void execFFmpegBinary(final String command) {
try {
ffmpeg.execute(command, new ExecuteBinaryResponseHandler() {
@Override
public void onFailure(String s) {
Log.e("Previewragment", "FAILED with output : " + s);
}
@Override
public void onSuccess(String s) {
Log.e("Previewragment", "SUCCESS with output : " + s);
}
@Override
public void onProgress(String s) {
Log.e("Previewragment", "Started command : ffmpeg " + command);
Log.e("Previewragment", "progress : " + s);
}
@Override
public void onStart() {
Log.e("Previewragment", "Started command : ffmpeg " + command);
}
@Override
public void onFinish() {
}
});
} catch (FFmpegCommandAlreadyRunningException e) {
// do nothing for now
}
}
我看到了这个answer 并尝试了
String addQuotes(String in ) {
return "\"" + in + "\"";
}
execFFmpegBinary("-i " + addQuotes(filepath) + " -ss " + startMs / 1000 + " -to " + endMs / 1000 + " -strict -2 -async 1 " + dest.getAbsolutePath())
;
【问题讨论】:
-
我假设您尝试过这样的事情? (转义
filepath周围的双引号):execFFmpegBinary("-i \"" + filepath + "\" -ss " + ... -
@DiscGolfer 检查更新的问题..我尝试添加引号..
标签: android ffmpeg string-formatting