status: extend to provide all camera options and properties in JSON payload

- 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`
This commit is contained in:
Kamil Trzcinski
2023-06-01 23:42:18 +02:00
parent 8df8dcf2e5
commit 899f2c5e62
18 changed files with 800 additions and 163 deletions

View File

@ -9,9 +9,12 @@
typedef struct buffer_s buffer_t;
typedef struct buffer_list_s buffer_list_t;
typedef struct device_option_s device_option_t;
typedef struct device_s device_t;
struct pollfd;
typedef int device_option_fn(device_option_t *option, void *opaque);
typedef struct device_v4l2_control_s {
int fd;
struct v4l2_query_ext_ctrl control;
@ -38,6 +41,7 @@ int v4l2_device_open(device_t *dev);
void v4l2_device_close(device_t *dev);
int v4l2_device_video_force_key(device_t *dev);
void v4l2_device_dump_options(device_t *dev, FILE *stream);
int v4l2_device_dump_options2(device_t *dev, device_option_fn fn, void *opaque);
int v4l2_device_set_fps(device_t *dev, int desired_fps);
int v4l2_device_set_option(device_t *dev, const char *key, const char *value);