From 1bb4d3712daf38dda21f9536b0786ac96ba1cf2a Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Sun, 23 Feb 2025 23:12:40 +0200 Subject: ipa: rkisp1: awb: Don't calculate RGB means if stats are missing When statistics are missing we can't meaningfully calculate the RGB means. Move their calculation after checking if stats are available. Signed-off-by: Laurent Pinchart Reviewed-by: Stefan Klug --- src/ipa/rkisp1/algorithms/awb.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/ipa/rkisp1') diff --git a/src/ipa/rkisp1/algorithms/awb.cpp b/src/ipa/rkisp1/algorithms/awb.cpp index af34b81b..47b607c6 100644 --- a/src/ipa/rkisp1/algorithms/awb.cpp +++ b/src/ipa/rkisp1/algorithms/awb.cpp @@ -279,10 +279,7 @@ void Awb::process(IPAContext &context, const rkisp1_stat_buffer *stats, ControlList &metadata) { - const rkisp1_cif_isp_stat *params = &stats->params; - const rkisp1_cif_isp_awb_stat *awb = ¶ms->awb; IPAActiveState &activeState = context.activeState; - RGB rgbMeans = calculateRgbMeans(frameContext, awb); metadata.set(controls::AwbEnable, frameContext.awb.autoEnabled); metadata.set(controls::ColourGains, { @@ -296,6 +293,11 @@ void Awb::process(IPAContext &context, return; } + const rkisp1_cif_isp_stat *params = &stats->params; + const rkisp1_cif_isp_awb_stat *awb = ¶ms->awb; + + RGB rgbMeans = calculateRgbMeans(frameContext, awb); + /* * If the means are too small we don't have enough information to * meaningfully calculate gains. Freeze the algorithm in that case. -- cgit v1.2.1