[libcamera-devel] [PATCH v1 2/4] pipeline: raspberrypi: Update naming convention for tuning files
Naushir Patuck
naush at raspberrypi.com
Wed Sep 28 09:52:57 CEST 2022
Hi Jacopo,
Thank you for the review.
On Wed, 28 Sept 2022 at 08:21, Jacopo Mondi <jacopo at jmondi.org> wrote:
> On Mon, Sep 26, 2022 at 01:29:09PM +0100, Naushir Patuck via
> libcamera-devel wrote:
> > Append "_mono" to the sensor name when generating the tuning filename for
> > monochrome sensor variants. So the new naming convention is as follows:
> >
> > <sensor_name>.json - Standard colour sensor variant
> > <sensor_name>_mono.json - Monochrom sensor variant
> >
> > Rename the existing imx296.json file to imx296_mono.json as this tuning
> file
> > is based on the monochrome variant of the IMX296.
> >
> > Signed-off-by: Naushir Patuck <naush at raspberrypi.com>
> > ---
> > .../data/{imx296.json => imx296_mono.json} | 0
> > src/ipa/raspberrypi/data/meson.build | 2 +-
> > .../pipeline/raspberrypi/raspberrypi.cpp | 19 +++++++++++++++----
> > 3 files changed, 16 insertions(+), 5 deletions(-)
> > rename src/ipa/raspberrypi/data/{imx296.json => imx296_mono.json} (100%)
> >
> > diff --git a/src/ipa/raspberrypi/data/imx296.json
> b/src/ipa/raspberrypi/data/imx296_mono.json
> > similarity index 100%
> > rename from src/ipa/raspberrypi/data/imx296.json
> > rename to src/ipa/raspberrypi/data/imx296_mono.json
> > diff --git a/src/ipa/raspberrypi/data/meson.build
> b/src/ipa/raspberrypi/data/meson.build
> > index 211811cfa915..465a7a17ce6f 100644
> > --- a/src/ipa/raspberrypi/data/meson.build
> > +++ b/src/ipa/raspberrypi/data/meson.build
> > @@ -4,7 +4,7 @@ conf_files = files([
> > 'imx219.json',
> > 'imx219_noir.json',
> > 'imx290.json',
> > - 'imx296.json',
> > + 'imx296_mono.json',
> > 'imx378.json',
> > 'imx477.json',
> > 'imx477_noir.json',
> > diff --git a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> > index dcd81650c32d..c068b07b31fe 100644
> > --- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> > +++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
> > @@ -67,6 +67,14 @@ SensorFormats
> populateSensorFormats(std::unique_ptr<CameraSensor> &sensor)
> > return formats;
> > }
> >
> > +bool isMonoSensor(std::unique_ptr<CameraSensor> &sensor)
> > +{
> > + unsigned int mbusCode = sensor->mbusCodes()[0];
> > + BayerFormat bayer = BayerFormat::fromMbusCode(mbusCode);
>
> const Bayerformat &bayer ?
>
> > +
> > + return bayer.order == BayerFormat::Order::MONO;
> > +}
> > +
> > PixelFormat mbusCodeToPixelFormat(unsigned int mbus_code,
> > BayerFormat::Packing packingReq)
> > {
> > @@ -1551,10 +1559,13 @@ int
> RPiCameraData::loadIPA(ipa::RPi::IPAInitResult *result)
> > */
> > std::string configurationFile;
> > char const *configFromEnv =
> utils::secure_getenv("LIBCAMERA_RPI_TUNING_FILE");
> > - if (!configFromEnv || *configFromEnv == '\0')
> > - configurationFile =
> ipa_->configurationFile(sensor_->model() + ".json");
> > - else
> > - configurationFile = std::string(configFromEnv);
> > + std::string sensorStr = sensor_->model();
>
> const std::string &sensorStr =
>
> and maybe s/sensorStr/model ?
>
>
> > + if (!configFromEnv || *configFromEnv == '\0') {
> > + if (isMonoSensor(sensor_))
> > + configurationFile += "_mono";
> > + configurationFile = ipa_->configurationFile(sensorStr +
> ".json");
> > + } else
> > + configurationFile = sensorStr;
>
> Don't you need to append "_mono" in this case ?
>
I don't want to append _mono here as I want to load the user specified
file without any modifications to the name. It's up to the user/app to
get this right if they want to override the tuning file :)
>
> Also the else branch needs braces too
>
> >
> > IPASettings settings(configurationFile, sensor_->model());
>
> As you now get a reference to sensor_->model() you can avoid the
> function call and reuse sensorStr (or 'model' if you like the rename).
>
I'll apply your suggestions for the next revision.
Thanks!
Naush
>
> Thanks
> j
>
> >
> > --
> > 2.25.1
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.libcamera.org/pipermail/libcamera-devel/attachments/20220928/f3255269/attachment.htm>
More information about the libcamera-devel
mailing list