You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
FATAL EXCEPTION: main
Process: com.example.viet.myappdemo, PID: 11353
java.lang.UnsatisfiedLinkError: org.bytedeco.javacpp.avutil
at java.lang.Class.classForName(Native Method)
at java.lang.Class.forName(Class.java:324)
at org.bytedeco.javacpp.Loader.load(Loader.java:442)
at org.bytedeco.javacpp.Loader.load(Loader.java:407)
at org.bytedeco.javacpp.avformat$AVFormatContext.<clinit>(avformat.java:2719)
at org.bytedeco.javacv.FFmpegFrameGrabber.startUnsafe(FFmpegFrameGrabber.java:386)
at org.bytedeco.javacv.FFmpegFrameGrabber.start(FFmpegFrameGrabber.java:380)
at com.example.viet.myappdemo.VideoActivity.getFrame(VideoActivity.java:283)
at com.example.viet.myappdemo.VideoActivity.access$100(VideoActivity.java:43)
at com.example.viet.myappdemo.VideoActivity$2.run(VideoActivity.java:245)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
What I've done so far:
Download your JavaCV 1.1 binary archive javacv-1.1-bin.zip
Extract it and put ffmpeg.jar, javacpp.jar, javacv.jar under libs folder in my Android project.
Add them as dependency for my app module.
When I try to replace ffmpeg.jar with ffmpeg-android-arm.jar as my Nexus 5 using an armv7 architect, I get this error:
FATAL EXCEPTION: main
Process: com.example.viet.myappdemo, PID: 23842
java.lang.NoClassDefFoundError: Failed resolution of: Lorg/bytedeco/javacpp/avcodec;
at org.bytedeco.javacv.FFmpegFrameGrabber.release(FFmpegFrameGrabber.java:124)
at org.bytedeco.javacv.FFmpegFrameGrabber.stop(FFmpegFrameGrabber.java:551)
at com.example.viet.myappdemo.VideoActivity.getFrame(VideoActivity.java:295)
at com.example.viet.myappdemo.VideoActivity.access$100(VideoActivity.java:43)
at com.example.viet.myappdemo.VideoActivity$2.run(VideoActivity.java:245)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Caused by: java.lang.ClassNotFoundException: Didn't find class "org.bytedeco.javacpp.avcodec" on path: DexPathList[[zip file "/data/app/com.example.viet.myappdemo-2/base.apk"],nativeLibraryDirectories=[/data/app/com.example.viet.myappdemo-2/lib/arm, /data/app/com.example.viet.myappdemo-2/base.apk!/lib/armeabi, /vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
at org.bytedeco.javacv.FFmpegFrameGrabber.release(FFmpegFrameGrabber.java:124)
at org.bytedeco.javacv.FFmpegFrameGrabber.stop(FFmpegFrameGrabber.java:551)
at com.example.viet.myappdemo.VideoActivity.getFrame(VideoActivity.java:295)
at com.example.viet.myappdemo.VideoActivity.access$100(VideoActivity.java:43)
at com.example.viet.myappdemo.VideoActivity$2.run(VideoActivity.java:245)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Suppressed: java.lang.ClassNotFoundException: org.bytedeco.javacpp.avcodec
at java.lang.Class.classForName(Native Method)
at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
... 13 more
Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available
but the same issue happens. I've also tried to change targetSdkVersion 22 but it doesn't work.
I also do not have armeabi (or armeabi-v7a) folder in my project so maybe all the necessary .so files don't get copied into my project?
Am I missing something obvious here?
The text was updated successfully, but these errors were encountered:
Hi @saudet, my Android Studio do indeed comes with proguard version 4.7. I've followed the instruction in your provided link, however I still get the java.lang.UnsatisfiedLinkError.
I'm trying to follow the instruction in one of your suggestion to use ReLinker. The step is not very clear though. Should I put all the relevant jar file (ffmpeg-android-arm.jar, ffmpeg-android-x86.jar, javacpp.jar, javacv.jar) in the libs folder and make a call like: ReLinker.loadLibrary(context, “ffmpeg-android-arm.jar”)
I've tried it but it didn't work. Is there away to make it work with gradle instead?
Sure, it works with Gradle, see #133, for example, but there are also unresolved issues with that. I guess I'll just mark this as a duplicate of that issue actually. Please continue the discussion there. Thanks!
Dear JavaCV developers, thanks you for creating this awesome tool.
However, I currently having a crash when trying to call
grabber.start();
, my code snippet:with this stack trace:
What I've done so far:
When I try to replace ffmpeg.jar with ffmpeg-android-arm.jar as my Nexus 5 using an armv7 architect, I get this error:
I've tried to download these files:
but the same issue happens. I've also tried to change
targetSdkVersion 22
but it doesn't work.I also do not have armeabi (or armeabi-v7a) folder in my project so maybe all the necessary .so files don't get copied into my project?
Am I missing something obvious here?
The text was updated successfully, but these errors were encountered: