在机器人工作室JavaCV配置 [英] JavaCV configuration in Android Studio

查看:3123
本文介绍了在机器人工作室JavaCV配置的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我知道有很多similiar问题,这一点,但很多人似乎已经过时,因为图书馆的发展等JavaCV的。

I know there is a lot of similiar questions to this, but a lot of them seem to be out of date because of the development of libraries such JavaCV.

我用从code <一个href="https://stackoverflow.com/questions/23775173/video-creation-with-images-and-audio-in-android">Video创建具有图像和音频中的Andr​​oid 以创建影片,但我有LIB进口的问题。

I used the code from Video Creation with Images and Audio in Android to create movie, but I have a problem with lib imports.

我一样JavaCV页说,我把依赖于摇篮:

I did as JavaCV page says, I put dependency in gradle :

compile group: 'org.bytedeco', name: 'javacv', version: '0.9'

现在,我不知道有没有做别的事情?

now, I don't know if I have to do something else?

我用这些进口:

import org.bytedeco.javacpp.avcodec;
import org.bytedeco.javacpp.opencv_core.IplImage;
import org.bytedeco.javacv.FFmpegFrameRecorder;

import static org.bytedeco.javacpp.opencv_highgui.cvLoadImage;

和得到这个错误:

Caused by: java.lang.NoClassDefFoundError: java.lang.ClassNotFoundException: org.bytedeco.javacpp.avutil
        at org.bytedeco.javacpp.Loader.load(Loader.java:387)
        at org.bytedeco.javacpp.Loader.load(Loader.java:353)
        at org.bytedeco.javacpp.avformat.<clinit>(avformat.java:13)
        at org.bytedeco.javacv.FFmpegFrameRecorder.<clinit>(FFmpegFrameRecorder.java:106)
        at voidstudio.app.activity.CreateMovieTask.doInBackground(CreateMovieTask.java:46)
        at voidstudio.app.activity.CreateMovieTask.doInBackground(CreateMovieTask.java:21)

Caused by: java.lang.ClassNotFoundException: org.bytedeco.javacpp.avutil
        at java.lang.Class.classForName(Native Method)
        at java.lang.Class.forName(Class.java:217)

 Caused by: java.lang.UnsatisfiedLinkError: Couldn't load jniavutil from loader dalvik.system.PathClassLoader[dexPath=/data/app/voidstudio.app-1.apk,libraryPath=/data/app-lib/voidstudio.app-1]: findLibrary returned null
        at java.lang.Runtime.loadLibrary(Runtime.java:365)
        at java.lang.System.loadLibrary(System.java:521)
        at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:535)
        at org.bytedeco.javacpp.Loader.load(Loader.java:410)

做我错过了某事的配置?我见过similiar问题,但存在这种不正确的答案。

did I missed sth in configuration? I have seen similiar questions but there was no proper answer for this.

推荐答案

更​​新!我还发现,如果你有在jniLibs的armeabi-V7A文件夹,或使用以外的任何其他armeabi文件夹,您将有问题没有被添加的.so文件。

Update! I've also found out that if you have have an armeabi-v7a folder in the jniLibs, or are using anything other than an armeabi folder, you will have issues with the .so files not being added.

看起来像ffmpeg的不被导入。我有同样的问题。这是我做的。让我知道如果这可以帮助你!

Looks like ffmpeg is not being imported. I had the same problem. Here is what I did. Let me know if this helps you!

compile group: 'org.bytedeco', name: 'javacv', version: '0.9'
compile group: 'org.bytedeco.javacpp-presets', name: 'opencv', version: '2.4.9-0.9', classifier:    'android-arm'
compile group: 'org.bytedeco.javacpp-presets', name: 'ffmpeg', version: '2.3-0.9', classifier: 'android-arm'

这篇关于在机器人工作室JavaCV配置的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆