我正在尝试使用 NDK 构建 FFmpeg 库以在我的 android 应用程序中使用。这样做的原因是因为我在android中使用了本机视频捕获功能,因为我真的不想编写自己的录像机。但是,本机视频捕获仅允许高质量编码或低质量编码。我想要介于两者之间的东西,我相信解决方案是使用 FFmpeg 库重新编码高质量视频以使其更轻。
到目前为止,我已经能够根据本指南构建 FFmpeg 库:http ://www.roman10.net/how-to-build-ffmpeg-for-android/以及我已经能够得到它的一些调整去工作。
然而,我发现的一切似乎都是关于编写自己的编码器,这对我来说似乎有点过头了。我真正想做的就是将命令行格式的字符串发送到 FFmpeg 的 main() 函数并重新编码我的视频。但是,我似乎无法弄清楚如何构建 FFmpeg 以使我能够访问 main 方法。我找到了这篇文章:编译 ffmpeg.c 并通过 JNI 调用它的 main(),它链接到一个项目,做我想做的事,但对于我的生活,我无法弄清楚发生了什么。看起来他编译的东西比我想要的要多,我真的很想让我的应用程序尽可能地轻量级。
一些额外的方向将非常有帮助。谢谢你。