【问题标题】:How to use libffmpeg.so in Android project?如何在 Android 项目中使用 libffmpeg.so?
【发布时间】:2012-06-03 14:17:30
【问题描述】:

我正在尝试在 Android 中创建屏幕录制应用程序。 为此,我正在使用 FFmpeg。我已经创建了 libffmpeg.so 文件。 现在我想在 Android 项目中使用它来调用它的原生函数。 我该怎么做..?

【问题讨论】:

    标签: android android-ndk ffmpeg


    【解决方案1】:

    本教程提供有关此主题的详细说明。 How to Build Android Applications Based on FFmpeg by An Example

    【讨论】:

    • 谢谢,但我只从该站点构建了 libffmpeg.so。但它没有说明是包含唯一的 libffmpeg.so 文件还是包含 /jni 文件夹中的完整文件夹。 “ffmpeg”为 91mb。你知道吗……?
    • ffmpeg.so 的大小应该约为 5mb。我从另一个站点构建了我的 ffmpeg.so。不记得是哪一个了。但是我使用了这个页面的本机代码和 JNI 代码。它适用于我的图书馆。
    • 我的 libffmpeg.so 为 8.2 mb。那么我应该把这个文件(libffmpeg.so)单独放在/jni文件夹中吗?还单独加载这个(libffmpeg.so)来调用本机函数..?这样就够了吗..?
    • 不,你应该把这个 ffmpeg.so 放在libs/armeabi 中。实际上,这取决于平台。如果你为armeabi-v7a 构建so,那么你应该把你的so 文件放在libs/armeabi-v7a 中。或者您可以将每个文件放在两个文件夹中。
    • 嘿.. 该教程展示了如何在 android 中使用 ffmpeg 的本机功能!我能否使用“Runtime.getRuntime.exec("ffmpeg -codecs")”从 android 运行 ffmpeg 命令?还是我只能使用本机功能来执行任何多媒体操作??
    【解决方案2】:

    你可以找到例子How to load another .so file in your android project?

    这是向您展示如何加载 *.so 文件的好方法。

    1 - 添加文件夹 jni/libs/*.so

    2 - 使用“鼠标右键” -> Android 工具 -> 添加原生支持 -> 设置文件名 *.cpp

    3 - 出现了两个文件:*.cpp 和 Android.mk。

    4 - 使用 Cygwin 构建和编译 *.so 到项目中。

    谢谢,

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-07-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-21
      • 1970-01-01
      相关资源
      最近更新 更多