3

我能够编译并将 ffmpeg 添加到我的项目创建的 Android.mk 文件中的 jni 文件夹现在我想使用 ffmpeg 从我存储在我的静态数组列表中的图像创建一个视频文件

我搜索了很多,但找不到任何教程,非常感谢任何帮助。

4

1 回答 1

6

我有类似的需求并完成了同样的工作。有两种方法可以做到这一点。我想先分享一个更简单的。

  • 在 Android 中创建一个临时文件夹。

  • 将图像复制到新文件夹中

  • 首先,重命名您的图片以遵循数字顺序。例如,img1.jpg, img2.jpg, img3.jpg,... 然后你可以运行:

  • 以编程方式运行此程序ffmpeg -f image2 -i img%d.jpg /tmp/a.mpg

要以编程方式运行它,

使用以下代码:

void convertImg_to_vid()
{
    Process chperm;
    try {
        chperm=Runtime.getRuntime().exec("su");
          DataOutputStream os = 
              new DataOutputStream(chperm.getOutputStream());

              os.writeBytes("ffmpeg -f image2 -i img%d.jpg /tmp/a.mpg\n");
              os.flush();

              chperm.waitFor();

    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (InterruptedException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

开始吧。我会帮你的。。一切顺利

使用教程:http : //ffmpeg.org/faq.html 特别通读教程中的 3.2 部分。

为了能够运行上述命令,您应该在 bin 目录中有 ffmpeg 命令。ffmpeg 二进制文件应针对 Android 平台进行交叉编译...

于 2012-05-02T10:41:51.680 回答