当前位置: 首页 > 知识库问答 >
问题:

Android中的Ffmpeg命令不起作用。创建多个图像的视频

齐昊苍
2023-03-14

我试着从我的文件夹中加载PNG的,并把它放在一个单一的视频中。我使用Mobile-FFmpeg作为库和Android Studio

但我在执行命令后不断得到错误代码:

I/mobile-ffmpeg:命令执行失败,RC=1,输出如下所示。

               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);
            }

共有1个答案

司马耘豪
2023-03-14

如果没有显示错误的日志,我最好的猜测是ffmpeg不应该包含在命令中:

int rc = FFmpeg.execute("-r 1/5 -i " + src + "/img%03d.png -c:v libx264 -vf \"fps=25,format=yuv420p\" "+ src + "/out.mp4");
 类似资料:
  • 这行工作良好,但我想创建一个视频文件从图像在另一个文件夹。“我的文件夹”中的映像名称为: 我如何从不同的文件夹输入图像文件?示例: 我尝试了这个命令,但是只生成了第一个图像(img001.jpg)的视频。

  • 问题内容: 我现在可以编译ffmpeg并将其添加到项目创建的Android.mk文件的jni文件夹中,我想使用ffmpeg从存储在静态arraylist中的图像创建视频文件 我已经搜索了很多,但找不到任何教程,对此表示感谢。 问题答案: 我也有类似的需求,并且达到了相同的目的。您可以通过两种方式执行此操作。我想先分享一个简单的例子。 在Android内部创建一个临时文件夹。 将图像复制到新文件夹中

  • 我试图创建缩略图图像上传视频与FFMPEG在ASP. NET核心如下: 它没有显示任何错误,但也没有生成缩略图。请问我遗漏了什么吗? 注意:如果我从命令行执行上面的配置,它就会工作!

  • 我有两个视频和两个音频 1:-视频1-长度:-60秒||音频1-长度:-15秒 2:-视频-长度:-86秒| |音频2-长度:-18秒 同时播放video1和audio1,如果audio1结束,则重新启动该音频,直到video1结束。这将是最后的视频1。 同样的方式, 同时播放video2和audio2,如果audio2结束,则重新启动该音频,直到video2结束。这将是最后的视频2。 之后,将最

  • 我开发了一个工具,使用JSch(一个java库,用于通过ssh与其他机器通信)一次性向不同的linux机器发送一行命令 因此,我们的客户需要更改所有机器上的密码。谷歌帮助我达到了这一点: 其中“123”是新密码。 命令将执行,但这始终是输出: 这表明命令没有成功。 请注意,这是一个运行linux的小型设备。这是一个私人编译的版本,尽可能紧凑。其实我对linux了解不多! 这是机器信息: 密码帮助: