我尝试从我的文件夹加载 png 并将其放在一个视频中。 我使用 Mobile-FFmpeg 作为 Library和 Android Studio
但是执行命令后我不断收到错误代码:
I/mobile-ffmpeg:命令执行失败,rc=1 且输出如下。
我的图像之前是这样保存的
我使用的命令: int rc = FFmpeg.execute("ffmpeg -r 1/5 -i "+ src+"/img%03d.png -c:v libx264 -vf\"fps=25,format=yuv420p\""+ src +“/ou1t.mp4”);
这是完整的代码:
String dirPath = Environment.getExternalStorageDirectory().getAbsolutePath()+"/FlyerMaker/ffmpeg";
File dir = new File(dirPath);
String src = Environment.getExternalStorageDirectory().getAbsolutePath()+"/FlyerMaker/ffmpeg";
int rc = FFmpeg.execute(" ffmpeg -r 1/5 -i "+ src+"/img%03d.png -c:v libx264 -vf \"fps=25,format=yuv420p\" "+ src + "/ou1t.mp4");
if (rc == RETURN_CODE_SUCCESS) {
Log.i(Config.TAG, "Command execution completed successfully.");
} else if (rc == RETURN_CODE_CANCEL) {
Log.i(Config.TAG, "Command execution cancelled by user.");
} else {
Log.i(Config.TAG, String.format("Command execution failed with rc=%d and the output below.", rc));
Config.printLastCommandOutput(Log.INFO);
}
//清除文件夹,因为在上面的代码之后我不再需要图片
for(int i = 0; i < 20 ; i++){
String filePrefix = "img"; //imagename prefix
String fileExtn = ".png";//image extention
String a = filePrefix + String.format("%03d", i)+fileExtn;
File file = new File(dir, a);
file.delete();
System.out.println("del"+i);
}
最佳答案
如果日志没有显示错误,我最好的猜测是 ffmpeg
不应包含在命令中:
int rc = FFmpeg.execute("-r 1/5 -i " + src + "/img%03d.png -c:v libx264 -vf \"fps=25,format=yuv420p\" "+ src + "/out.mp4");
关于java - Android 中的 Ffmpeg 命令不起作用。创建多个图像的视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60335636/