pipewire/spa/plugins/v4l2
Sven Püschel 5932963506 spa: match camera property types with libcamera
The Pipewire libcamera spa plugin exposes multiple camera properties.
Unlike v4l2, libcamera usually exposes these as normalized floating
point values. But as the SPA_PROP types are based on v4l2, they are
currently set to integers.

This causes a problem when using pw-cli to change the properties,
as the spa_json_to_pod_part function casts the properties according
to their spa_type_info. Other software that doesn't depend on the
spa_type_info can correctly set the properties, as the values are
encoded in the spa_pod type and therefore also carry a type.

As the limited range from switching integers to floats is likely not a
problem, the affected spa properties were changed to the Float type.
This will cause pw-cli to also generate spa_pod values of type float
when setting v4l2 properties. Therefore the v4l2 spa plugin is also
adapted to allow floating point properties and cast these to integers.

Signed-off-by: Sven Püschel <s.pueschel@pengutronix.de>
2024-07-17 15:56:53 +00:00
..
meson.build v4l2: include config.h to check for udev 2024-02-06 22:41:54 +01:00
v4l2-device.c v4l2: fix string size 2024-06-06 16:25:24 +02:00
v4l2-source.c v4l2: Improve format and control enumeration 2024-07-09 14:14:42 +02:00
v4l2-udev.c spa: alsa,v4l2: avoid double access check on inotify events 2024-02-09 18:32:53 +01:00
v4l2-utils.c spa: match camera property types with libcamera 2024-07-17 15:56:53 +00:00
v4l2.c v4l2: include config.h to check for udev 2024-02-06 22:41:54 +01:00
v4l2.h spa: remove unnecessary indirection for some spa_log_topics 2023-10-06 13:08:24 +00:00