libcamera v0.7.2 Supporting cameras in Linux since 2019

Loading...
Searching...
No Matches
v4l2_params.cpp File Reference

Helper class to populate an ISP configuration buffer compatible with the generic V4L2 ISP format. More...

`#include "v4l2_params.h"`
Include dependency graph for v4l2_params.cpp:

## Namespaces
namespace | libcamera
| Top-level libcamera namespace.
namespace | libcamera::ipa
| The IPA (Image Processing Algorithm) namespace.

## Detailed Description

Helper class to populate an ISP configuration buffer compatible with the generic V4L2 ISP format.

The Linux kernel defines a generic buffer format for configuring ISP devices. The format describes a serialisation method for ISP parameters that allows userspace to populate a buffer of configuration data by appending blocks to the buffer with common headers but device-specific contents one after the other.

The V4L2Params class implements support the V4L2 ISP parameters buffer format and allows users to populate the ISP configuration blocks, represented as V4L2ParamBlock class instances.

IPA implementations using this helpers should define an enumeration of ISP blocks supported by the IPA module and use a set of common abstraction to help their derived implementation of V4L2Params translate the enumerated ISP block identifier to the actual type of the configuration data as defined by the kernel interface.

As an example of this see the RkISP1 and Mali-C55 implementations.