Skip to content

spa: libcamera: Increase devices_str[] buffer size

Some complex camera pipelines, like the IPU6 can involve many /dev/video# nodes (32 in the IPU6 case) and the current size of 128 chars is not enough to hold all /dev/video# nodes in this cases causing SPA_KEY_DEVICE_DEVIDS to get truncated, which in turn breaks the filtering of V4L2 devices which are used by a libcamera driven camera in wireplumber.

Fix this by increasing the size of devices_str[] to 256.

This fixes wireplumber adding a bunch of non-function V4L2 video sources, e.g. before this "wpctl status" outputs the following video sources:

Video
 ├─ Devices:
...
 ├─ Sources:
 │      90. ov2740
 │  *  115. ipu6 (V4L2)
...
 │     135. ipu6 (V4L2)

 ├─ Filters:

After this fix the output is:

Video
 ├─ Devices:
...
 ├─ Sources:
 │  *   92. ov2740

 ├─ Filters:

Merge request reports