Closed Sciss closed 6 years ago
I tried getting all the latest library versions: https://github.com/Sciss/javacv-examples/commit/899a64c3fb2748bd6b5c2bae8e8d8b36f4ea8f7d
This gives me other linker error:
[info] Running flycapture.examples.cpp.FlyCapture2Test
[error] Exception in thread "main" java.lang.UnsatisfiedLinkError: no jniFlyCapture2 in java.library.path
[error] at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
[error] at java.lang.Runtime.loadLibrary0(Runtime.java:870)
[error] at java.lang.System.loadLibrary(System.java:1122)
[error] at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:1191)
[error] at org.bytedeco.javacpp.Loader.load(Loader.java:953)
[error] at org.bytedeco.javacpp.Loader.load(Loader.java:854)
[error] at org.bytedeco.javacpp.FlyCapture2.<clinit>(FlyCapture2.java:10)
[error] at java.lang.Class.forName0(Native Method)
[error] at java.lang.Class.forName(Class.java:348)
[error] at org.bytedeco.javacpp.Loader.load(Loader.java:913)
[error] at org.bytedeco.javacpp.Loader.load(Loader.java:854)
[error] at org.bytedeco.javacpp.FlyCapture2$FC2Version.<clinit>(FlyCapture2.java:725)
[error] at flycapture.examples.cpp.package$.printBuildInfo(package.scala:20)
[error] at flycapture.examples.cpp.FlyCapture2Test$.delayedEndpoint$flycapture$examples$cpp$FlyCapture2Test$1(FlyCapture2Test.scala:64)
[error] at flycapture.examples.cpp.FlyCapture2Test$delayedInit$body.apply(FlyCapture2Test.scala:18)
[error] at scala.Function0.apply$mcV$sp(Function0.scala:34)
[error] at scala.Function0.apply$mcV$sp$(Function0.scala:34)
[error] at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12)
[error] at scala.App.$anonfun$main$1$adapted(App.scala:76)
[error] at scala.collection.immutable.List.foreach(List.scala:389)
[error] at scala.App.main(App.scala:76)
[error] at scala.App.main$(App.scala:74)
[error] at flycapture.examples.cpp.FlyCapture2Test$.main(FlyCapture2Test.scala:18)
[error] at flycapture.examples.cpp.FlyCapture2Test.main(FlyCapture2Test.scala)
[error] Caused by: java.lang.UnsatisfiedLinkError: /home/hhrutz/.javacpp/cache/flycapture-2.11.3.121-1.4-linux-x86_64.jar/org/bytedeco/javacpp/linux-x86_64/libjniFlyCapture2.so: libmultisync.so.2: cannot open shared object file: No such file or directory
[error] at java.lang.ClassLoader$NativeLibrary.load(Native Method)
[error] at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1941)
[error] at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1824)
[error] at java.lang.Runtime.load0(Runtime.java:809)
[error] at java.lang.System.load(System.java:1086)
[error] at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:1171)
[error] ... 20 more
Do you have FlyCapture native binaries installed on your computer (https://www.ptgrey.com/support/downloads)? Which version?
No - do I need to? I thought the whole point of javacpp is that the native libraries get pulled in for the appropriate platform through a maven jar artifact? At least it works that way for OpenCV.
Or am I misunderstanding something? I want to capture from a generic USB web cam. (I succeeded now with the webcam-capture project and OpenIMAJ, though).
FlyCapture is a commercial package (though free to use) for use with PointGrey cameras, not generic webcams. You need to get it from the maker (Flir/PointGrey). It is not open source. I did not try it on Linux, but on Windows you have to have native binaries installed separately.
This example (FlyCapture2-demo) is not intended for a generic webcams.
Oh ok, sorry for the misunderstanding. Is there a way to capture from generic cameras using javacv?
There are some examples for Android in https://github.com/bytedeco/sample-projects For a desktop. I am not sure. I have some simple test code that can be turned into an example. Let me know if you need that.
Actually there is an example on the https://github.com/bytedeco/javacv front page, in the README.md. Look for FrameGrabber
about half page down.
Hello. I'm getting this from
cd FlyCapture2-demo & sbt example_ui/run
:Using OpenJDK 8 / OpenJFX 8 / Debian Stretch / amd64 (
platform
in the sbt build reportslinux-x86_64
, which is correct). Any ideas?