导入 Android NDK 项目(解码 OGG)

Posted

技术标签:

【中文标题】导入 Android NDK 项目(解码 OGG)【英文标题】:Importing Android NDK projects (to decode OGG) 【发布时间】:2013-01-27 01:17:07 【问题描述】:

我正在尝试使用 NDK 项目在 android 中解码 OGG 文件(我尝试了一些)。无论我尝试哪一个,我在构建时总是会遇到类似的错误:

Caused by: java.lang.UnsatisfiedLinkError: Couldn't load videokit: findLibrary returned null

我对 NDK 很陌生(显然),所以我不确定我做错了什么。我要做的就是能够设置OGG文件的播放速率。

【问题讨论】:

【参考方案1】:

代码的java部分链接到一个共享库对象(.so文件),该对象是通过ndk-build编译C++/NDK部分代码得到的。在这种情况下,您的应用无法找到要加载的正确 .so 文件。以下是您可以检查的一些事项 -

    非常基本的检查 - 您是否在 jni 文件夹中运行了“ndk-build”?如果你不这样做,则不会生成 .so 文件 - eclipse 仍会编译你的项目,但它不会工作。 如果您的项目根目录是 PROJECT,请检查 $(PROJECT)/jni/libs/armeabi 或 $(PROJECT)/jni/libs/armeabi-v7a - 一个或两个位置应该包含一个 .so 文件,一旦您使用“ndk-build”命令完成。 检查您的 java 代码中的某处,您正在对此 .so 文件调用“System.LoadLibrary”。 我认为它应该是“System.LoadLibrary(videokit)”,但我不确定。

【讨论】:

以上是关于导入 Android NDK 项目(解码 OGG)的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 CMake 将 FreeType 导入我的 Android Studio NDK 项目

android ndk之opencv+MediaCodec硬编解码来处理视频动态时间水印

android ndk之opencv+MediaCodec硬编解码来处理视频动态时间水印

Audio Ogg Vorbis android 默认浏览器

NDK 集成在 Android 1.5 中已弃用 - 打开相机

Android Studio 构建 NDK 项目非零退出值失败