java - 在没有任何 C/C++ 或 make 知识的情况下使用 FFmpeg for android

标签 java android c++ ffmpeg

我想在我的 Android 应用程序上使用 FFmpeg 库。 我没有 C/C++/Make 知识,我一直在阅读有关它的所有线程都在谈论我完全不理解的东西。

是否有任何预编译库可以添加到我的项目中,然后在我的 java 类中添加一个简单的“导入”语句,然后调用它?

谢谢

最佳答案

您需要 FFmpeg 有什么特别的原因吗?我想有可能获得预构建的二进制文件,但由于它是一个 C 库,你还需要一个 JNI 包装器代码——我认为没有人会为整个库生成它,因为它非常大,所以即使有预建库您仍然需要具备一些 JNI 知识才能在 C 中连接 Java 和 FFmpeg 之间的通信。仅用于演示 - here是一个例子。

除此之外,如果没有特殊原因使用 FFmpeg,为什么不能坚持使用 MediaCodec那是Android API的一部分吗?它包装了 native StageFright 库,并可以在可用的设备上提供硬件支持,而 FFmpeg 将是仅 CPU 的解决方案。当然,如果需要一些冷门编解码器或者MediaCodec中没有的muxer,那么FFmpeg就是这种方式。

关于java - 在没有任何 C/C++ 或 make 知识的情况下使用 FFmpeg for android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26140651/

相关文章:

java - 母牛和公牛重复

Java 8 破坏了我使用 PKCS12 的应用程序

java - 如何锐化android中的图像?

android - 如何使用 MVP 和 rxjava 构建我的应用程序并进行改造以从 Observables 中获取数据?

c++ - 如何在我的成员函数中包含默认参数?

c++ - g++ 认为我的类声明是 "forward declaration"

java - 使用 Java 运行 .reg 文件

java - 如何修复任务 ':app:mergeDebugResources' 执行失败

android - 跟踪 android 中应用程序的长期 CPU 使用率

c++ - C++中的PQexecParams,查询错误