sarxos / webcam-capture

The goal of this project is to allow integrated or USB-connected webcams to be accessed directly from Java. Using provided libraries users are able to read camera images and detect motion. Main project consist of several sub projects - the root one, which contains required classes, build-in webcam driver compatible with Windows, Linux and Mac OS, which can stream images as fast as your camera can serve them (up to 50 FPS). Main project can be used standalone, but user is able to replace build-in driver with different one - such as OpenIMAJ, GStreamer, V4L4j, JMF, LTI-CIVIL, FMJ, etc.
http://webcam-capture.sarxos.pl
MIT License
2.26k stars 1.11k forks source link

Raspberry Pi problem #419

Open maxx79 opened 8 years ago

maxx79 commented 8 years ago

I have read on the site that there is a support of Raspberry pi but really it is not tested in real life and I tried to do it but without any success. I used the latest version of library webcam-capture-0.3.10.jar, bridj-0.7-20140918.jar and fatal error occured, log is bellow:

[error occurred during error reporting (printing native stack), id 0xb]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code) j com.github.sarxos.webcam.ds.buildin.natives.OpenIMAJGrabber.startSession(IIDLorg/bridj/Pointer;)Z+0 j com.github.sarxos.webcam.ds.buildin.WebcamDefaultDevice.open()V+175 j com.github.sarxos.webcam.ds.cgt.WebcamOpenTask.handle()V+55 j com.github.sarxos.webcam.WebcamProcessor$AtomicProcessor.run()V+14 j java.util.concurrent.ThreadPoolExecutor.runWorker(Ljava/util/concurrent/ThreadPoolExecutor$Worker;)V+95 j java.util.concurrent.ThreadPoolExecutor$Worker.run()V+5 j java.lang.Thread.run()V+11 v ~StubRoutines::call_stub

CPU:total 1 (ARMv6), vfp

/proc/cpuinfo: processor : 0 model name : ARMv6-compatible processor rev 7 (v6l) Features : swp half thumb fastmult vfp edsp java tls CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xb76 CPU revision : 7

Hardware : BCM2708 Revision : 000d Serial : 0000000081f4454f

Also I tested on Linux 32/64 successfully

sarxos commented 8 years ago

Hi @maxx79,

You may try downgrading BridJ to 0.6.3-SNAPSHOT to check if it runs well on RasPi.

The other option is to use webcam-capture-driver-v4l4j instead of a default one. It also has some issues, but at least does not crash (usually). There is still much work to be done to stabilize Webcam Capture API on RaspberryPi.

And the last one, if you do not need high FPS is to use webcam-capture-driver-fswebcam.

maxx79 commented 8 years ago

Thank your for the links, actually I tried to use the library 0.6.3-SNAPSHOT and the effect is the same - crashing of JVM. I will try the recommended jar files and will write about result.