spa: libcamera: expose libcamera version

Expose the libcamera header and library versions in the device properties
similarly to `api.v4l2.cap.version` used by the v4l2 plugin.

The keys are not yet promoted into the public `keys.h` header file.
This commit is contained in:
Barnabás Pőcze 2026-01-03 22:34:40 +01:00 committed by Wim Taymans
parent 6dc55d2cb4
commit 44176d4118
4 changed files with 25 additions and 1 deletions

View file

@ -98,7 +98,7 @@ const char *cameraRot(const Camera& camera)
int emit_info(struct impl *impl, bool full)
{
struct spa_dict_item items[10];
struct spa_dict_item items[12];
struct spa_dict dict;
uint32_t n_items = 0;
struct spa_device_info info;
@ -117,6 +117,8 @@ int emit_info(struct impl *impl, bool full)
ADD_ITEM(SPA_KEY_DEVICE_API, "libcamera");
ADD_ITEM(SPA_KEY_MEDIA_CLASS, "Video/Device");
ADD_ITEM(SPA_KEY_API_LIBCAMERA_PATH, impl->device_id.c_str());
ADD_ITEM(KEY_VERSION_LIBRARY, libcamera_library_version());
ADD_ITEM(KEY_VERSION_HEADER, libcamera_header_version());
if (auto location = cameraLoc(camera))
ADD_ITEM(SPA_KEY_API_LIBCAMERA_LOCATION, location);