[libcamera-devel] [PATCH 0/2] Use YAML 1.1 for the time being

Laurent Pinchart laurent.pinchart at ideasonboard.com
Thu Aug 4 15:21:10 CEST 2022


Hello,

This small patch series switches all the YAML files in libcamera to use
YAML 1.1, in order to support the libyaml version shipped in the latest
Debian stable.

YAML 1.2 support was added to libyaml on v0.2.3, and Debian stable
currently ships v0.2.2 (Debian testing has updated to v0.2.5, which is
the version libcamera uses in the libyaml wrap fallback). This causes
issues parsing YAML files in the RkISP1 module. To fix that, we could
have mandated libyaml v0.2.3 or newer, but given that we don't depend on
any YAML 1.2 feature, downgrading our YAML files to version 1.1 should
be more user-friendly.

The main drawback I can see is that YAML 1.1 parses the unquoted string
literals Yes, No, On and Off as booleans, while YAML 1.2 parses them as
strings. None of the YAML files in libcamera use those values, but we'll
have to be careful not to use them in the future if we want to later
switch back to YAML 1.2 when distributions will have caught up.

Patch 1/2 fixes the issue in the RkISP1 IPA module tuning data files,
while patch 2/2 modifies the internal YAML files used for code
generation. The latter isn't strictly needed as explained in the commit
message of the second patch, but I've included it for consistency. I'm
fine dropping the second patch if preferred.

Florian, could you check if this fixes your YAML parsing issues ?

Laurent Pinchart (2):
  ipa: rkisp1: Use YAML 1.1 for tuning data files
  libcamera: Switch internal YAML files to YAML 1.1

 src/ipa/rkisp1/data/imx219.yaml       | 2 +-
 src/ipa/rkisp1/data/ov5640.yaml       | 2 +-
 src/ipa/rkisp1/data/uncalibrated.yaml | 2 +-
 src/libcamera/control_ids.yaml        | 2 +-
 src/libcamera/formats.yaml            | 2 +-
 src/libcamera/property_ids.yaml       | 2 +-
 6 files changed, 6 insertions(+), 6 deletions(-)


base-commit: 961a6cf7cac9b788cc285a58ae1b8a480f00b633
-- 
Regards,

Laurent Pinchart



More information about the libcamera-devel mailing list