[libcamera-devel] [PATCH v2 1/5] pipeline: rkisp1: Support IPA tuning file
Florian Sylvestre
fsylvestre at baylibre.com
Thu Jun 16 10:07:40 CEST 2022
Allow the usage of a Yaml IPA tuning file that is either defined by
the sensor name (sensor_name.yaml) or defined by
LIBCAMERA_RKISP1_TUNING_FILE environment variable.
Signed-off-by: Florian Sylvestre <fsylvestre at baylibre.com>
---
src/libcamera/pipeline/rkisp1/rkisp1.cpp | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
index 4b3d2cf7..96bf09e3 100644
--- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp
+++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp
@@ -322,7 +322,18 @@ int RkISP1CameraData::loadIPA(unsigned int hwRevision)
ipa_->paramsBufferReady.connect(this, &RkISP1CameraData::paramFilled);
ipa_->metadataReady.connect(this, &RkISP1CameraData::metadataReady);
- int ret = ipa_->init(IPASettings{ "", sensor_->model() }, hwRevision);
+ /*
+ * The API tuning file is made from the sensor name unless
+ * the environment variable overrides it.
+ */
+ std::string IPATunigFile;
+ char const *configFromEnv = utils::secure_getenv("LIBCAMERA_RKISP1_TUNING_FILE");
+ if (!configFromEnv || *configFromEnv == '\0')
+ IPATunigFile = ipa_->configurationFile(sensor_->model() + ".yaml");
+ else
+ IPATunigFile = std::string(configFromEnv);
+
+ int ret = ipa_->init({ IPATunigFile, sensor_->model() }, hwRevision);
if (ret < 0) {
LOG(RkISP1, Error) << "IPA initialization failure";
return ret;
--
2.34.1
More information about the libcamera-devel
mailing list