Patrick Gehrsitz 4e466057e6
libcamera: fix compilation errors for libcamera v0.5.0 (#169)
* libcamera: add support for ControlTypePoint

Signed-off-by: Patrick Gehrsitz <mryel00.github@gmail.com>

* libcamera: fix compile error on missing ControlType

This adds a runtime error for missing ControlTypes to fix compilation errors if there are new ControlTypes that are not implemented yet.

Signed-off-by: Patrick Gehrsitz <mryel00.github@gmail.com>

* chore: remove whitespaces

Signed-off-by: Patrick Gehrsitz <mryel00.github@gmail.com>

* libcamera: only use ControlTypePoint for libcamera>=0.3.2

Signed-off-by: Patrick Gehrsitz <mryel00.github@gmail.com>

* fix: add version check to second switch case

Signed-off-by: Patrick Gehrsitz <mryel00.github@gmail.com>

* fix: add version check to libcamera_parse_point

Signed-off-by: Patrick Gehrsitz <mryel00.github@gmail.com>

* Add AeState to stable LIBCAMERA_CONTROL block

Moved AeState from the draft control list to the stable control block for better alignment with finalized controls.

* fix: fix backwards compatibility

Signed-off-by: Patrick Gehrsitz <mryel00.github@gmail.com>

---------

Signed-off-by: Patrick Gehrsitz <mryel00.github@gmail.com>
Co-authored-by: Surion79 <102791900+Surion79@users.noreply.github.com>
2025-06-08 17:34:59 +02:00
2024-05-07 11:41:59 +02:00
2023-06-12 12:30:20 +02:00
2022-09-06 14:11:27 +00:00
2023-12-06 10:05:58 +01:00
2023-06-12 22:39:54 +02:00

camera-streamer

Use main branch for semi-stable changes, or develop for experimental changes.

There's a number of great projects doing an UVC/CSI camera streaming on SBC (like Raspberry PI's).

This is yet another camera-streamer project that is primarly focused on supporting a fully hardware accelerated streaming of MJPEG streams and H264 video streams for minimal latency.

This supports well CSI cameras that provide 10-bit Bayer packed format from sensor, by using a dedicated ISP of Raspberry PI's.

Take into account that this is a draft project, and is nowhere as complete and well supported as awesome ustreamer. This project was inspired by mentioned ustreamer.

Requirements

  1. Debian Bullseye, with at least 5.15 kernel
  2. Best: Raspberry PI for hardware acceleration

Install

  1. Use precompiled debian package (recommended)
  2. Compile manually (advanced)

Configure

  1. Configure resolution, brightness or image quality
  2. See different streaming options
  3. See example configurations

Advanced

This section contains some advanced explanations that are not complete and might be outdated:

  1. High-performance mode via ISP for CSI
  2. High-performance mode via direct decoding for USB
  3. High-compatibility via libcamera on Raspberry PI
  4. Performance analysis

License

GNU General Public License v3.0

References

This project uses:

Description
High-performance low-latency camera streamer for Raspberry PI's
Readme 5.7 MiB
Languages
C 61.3%
C++ 23.9%
HTML 10.6%
Shell 2.9%
Makefile 1.3%