导入 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 默认浏览器