[libcamera-devel] [RFC PATCH 2/2] DNI: pipeline: ipu3: Set Sharpness control and control info
Paul Elder
paul.elder at ideasonboard.com
Mon Aug 23 11:48:06 CEST 2021
This is to demonstrate reporting and setting Sharpness on ipu3.
Signed-off-by: Paul Elder <paul.elder at ideasonboard.com>
---
src/libcamera/pipeline/ipu3/ipu3.cpp | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp
index a98d7eff..e90659e3 100644
--- a/src/libcamera/pipeline/ipu3/ipu3.cpp
+++ b/src/libcamera/pipeline/ipu3/ipu3.cpp
@@ -50,6 +50,7 @@ static constexpr unsigned int IMGU_OUTPUT_HEIGHT_MARGIN = 32;
static constexpr Size IPU3ViewfinderSize(1280, 720);
static const ControlInfoMap::Map IPU3Controls = {
+ { &controls::Sharpness, ControlInfo(0.0f, 1.0f, 0.0f) },
{ &controls::draft::PipelineDepth, ControlInfo(2, 3) },
};
@@ -1299,6 +1300,12 @@ void IPU3CameraData::imguOutputBufferReady(FrameBuffer *buffer)
cropRegion_ = request->controls().get(controls::ScalerCrop);
request->metadata().set(controls::ScalerCrop, cropRegion_);
+ /* \todo Actually apply sharpness. */
+ if (request->controls().contains(controls::Sharpness)) {
+ float val = request->controls().get<float>(controls::Sharpness);
+ request->metadata().set(controls::Sharpness, val);
+ }
+
if (frameInfos_.tryComplete(info))
pipe()->completeRequest(request);
}
--
2.27.0
More information about the libcamera-devel
mailing list