# 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.

Repository: https://github.com/sarxos/webcam-capture
Canonical: https://ross.abutalabs.com/products/webcam-capture
Homepage: http://webcam-capture.sarxos.pl
Language: Java
License: MIT
License Family: permissive
Topics: webcam, java, webcam-capture
Last push: 2025-11-08T18:52:08+00:00

## Health v2 (maintenance only)
Score: 46/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 51, release rhythm 8, longevity 100
- inputs: {"age_days": 5213, "days_push": 298, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2356, forks 1101 (observed 2026-08-28T04:06:40.619084+00:00)

## What it is
A Java library for accessing built-in or USB webcams (and MJPEG IP cameras) with a simple, thread-safe, driver-abstracted API. It includes a built-in driver for Windows/Linux/macOS, pluggable backends (GStreamer, OpenCV, VLC, etc.), Swing viewer components, and a ready-made motion detector.

## Use cases
- capture webcam images from java
- detect motion with a webcam in java
- stream camera feed as mjpeg from java
- access ip camera mjpeg stream in java
- display live video feed in a swing app
- use webcam on raspberry pi with java

## When to choose
- you need a pure-Java, cross-platform webcam API without native setup
- you want to swap capture backends (JMF, GStreamer, OpenCV) without rewriting code
- you need simple motion detection or Swing camera UI components

## When to avoid
- you need high-performance video processing or modern codec pipelines
- you need a non-JVM language or Android support
- you need actively developed cutting-edge features (project is largely in maintenance)

## Facets
- artifact type: library
- maturity: maintenance
- function: image-processing, computer-vision
- domain: computer-vision, image-processing, cross-platform
- platform: jvm, cross-platform, windows
- tags: webcam, camera-capture, motion-detection, mjpeg, swing, raspberry-pi, linux, macos

## Member repositories
- sarxos/webcam-capture (main) score 46

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:40.619084+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:36:25.602171+00:00, confidence not recorded.
  - readme: https://github.com/sarxos/webcam-capture (fetched 2026-08-28T04:06:40.619084+00:00, sha ee61c459acd1)
  - homepage: http://webcam-capture.sarxos.pl (fetched 2026-08-29T10:17:00.620617+00:00, sha 1a33de26980d)
- Data as of 2026-08-30T08:39:29.467469+00:00.
