* 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>
* 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>
---------
Signed-off-by: Patrick Gehrsitz <mryel00.github@gmail.com>
For libcamera0.2 configuraiton.stride is already set to some incorrect value and configurations->validate() doesn't update it if it's not 0.
For libcamera0.1 it was set to 0. So set it to 0 manually to make sure configurations->validate() computes the correct value.
This fixes 3DO camera not accepting `--camera-options=focus_absolute=100`
and `--camera-options=focus_automatic_continuous=0`, and not properly
configuring the sensor.
The settings are applied twice (if failed) to ignore ordering problems
related to auto-focus and focus-absolute value command line order.
As discussed on Discord a while ago, adding
Breaks/Conflicts/Replaces entries against
camera-streamer (<< 0.2) allows for a smooth
migration from the camera-streamer package
built for OctoPi to camera-streamer-raspi, through
a transitional camera-streamer version 0.2 on
OctoPi's side.
An upgrade of camera-streamer from OctoPrint's
apt repo will pull in an updated transitional
camera-streamer package version 0.2 that depends
on camera-streamer-raspi. For that to install
flawlessly in all cases, it needs to be installed
*before* the camera-streamer-raspi dependency
(as some files between that and the former
camera-streamer package overlap). By
declaring Breaks/Conflicts/Replaces relationships
on camera-streamer-raspi this is ensured.
- control: add `device_option_is_equal`
- libcamera: provide human readable configurable options
- v4l2: include camera control values
- libcamera: store all applied controls
- libcamera: use `device_option_is_equal`