2

I am trying to work with JavaCV's FFmpegFrameGrabber on Android 4.4.2 / 4.3.1 .

Inside the onCreate(...) method I am calling:

FFmpegFrameGrabber grabber = new FFmpegFrameGrabber(path)

This causes the following runtime error:

dlopen("/data/app-lib/com.example.testjavacv-1/libjniavdevice.so")
failed: dlopen failed: cannot locate symbol "av_input_audio_device_next"
referenced by "libjniavdevice.so"

Other (possible) relevant information:

1) I have included all the JavaCV .so libraries inside the libs/armeabi and libs/x86 folders.

2) I have given the application permissions to read/write to external storage and access the camera and microphone.

3) I am NOT statically loading any of the JavaCV native libraries before instantiating FFmpegFrameGrabber. This is because,

  • Some of the libraries cause runtime exceptions when I attempt to load them statically by myself.
  • I get the impression that JavaCV handles it's own native library loading - for example the error I get ocurrs even though I have not requested to load the jniavdevice.so library and happens only if the ... new FFmpegFrameGrabber(...) ... code is present.

4) I have taken a look at: https://groups.google.com/forum/#!topic/javacv/bgB5rCv_fVM which seems to address a similar issue, but the suggested solutions don't seem to work.

Any help on this issue would be much appreciated, Cheers!

liorg
  • 21
  • 2

1 Answers1

0

Hey liorg did you get the issue solved? There is a link posted by Samuel in the same link of google groups which you have stated that says he has fixed bugs and the binaries are available at this link : Updated JavaCV Binaries but after trying them too the same problem persists.. Will you please just try out and let me know if you get it solved!!!! Also check this link in which Samuel states he has fixed bugs : JavaCV Bugs Fixed but to no avail!!

Namrata Bagerwal
  • 1,202
  • 13
  • 27