Caprica Software

Picam

Introduction

The Picam project is an Open Source project design to make it very easy to use the Raspberry Pi camera module from a Java application.


Why?

Ordinarily the Raspberry Pi camera must be accessed by a pre-existing native application, a Perl script, or a native "C" API. This works well enough, but there is no easy way to use the camera module with a Java application. The native API uses MMAL and it is a long, long way from straightforward to use that API to get pictures from the camera.

The Picam project provides a Java implementation that hides the complexities of the MMAL API and gives you a very simple interface to simply grab a picture from the camera. The API is as simple as creating a camera component and invoking a single method to grab a picture. You can save the picture to disk, process it in some way, display it in an application window, or whatever.


Where do I get Picam?

The Picam project is at GitHub.

Picam artefacts are available from Maven Central, there are two major versions...

picam-2.x uses a pure JNI solution, with a companion native library:

pom.xml
<dependency>
<groupId>uk.co.caprica</groupId>
<artifactId>picam</artifactId>
<version>2.0.2</version>
</dependency>

picam-1.x uses a JNA solution (no companion native library is required):

pom.xml
<dependency>
<groupId>uk.co.caprica</groupId>
<artifactId>picam</artifactId>
<version>2.0.2</version>
</dependency>

picam-2.x is the recommended version for new projects.


Tutorials

Some new picam-2 tutorials and picam-1 tutorials are available.