对于我当前的项目,我自己编译了 ffmpeg 和 x264 库,遵循 this
教程。我已经看到了很多关于这个主题的问题,但没有一个真正对我有帮助。在此之前,我尝试了许多其他方法,产生了许多 .so 文件(libavcodec 等)。由于我(还)没有时间深入使用 JNI,所以我想依赖命令行,上面的教程似乎提供了该命令行。但问题来了:当我在 Android 设备上使用 Process 运行生成的文件时,它不会执行任何操作(没有输出,也没有错误消息)。我得出的结论是,生成的文件仍然是 .so 文件(可以使用 readelf 读取)。到目前为止,我还没有找到使用命令行在我的设备上运行 ffmpeg 的解决方案。你知道我是否做错了什么吗?
谢谢, 丹尼尔
最佳答案
我不久前问过这个问题,但对于遇到问题的人来说,这里是解决方案:
- 我试过 this这似乎为 x86、armeabi-v7a 和armeabi-v7a-neon 创建了 ffmpeg 二进制可执行文件
- 接下来,我将它们复制到手机上,并使用 chmod 将文件的权限设置为 775,但它无法执行。结果发现外部存储上没有文件可以执行。将其复制到内部存储(例如/data/local/tmp)并设置权限后,它可以执行并工作
关于java - Android ffmpgeg - 没有任何反应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27994420/