[libcamera-devel] [PATCH] ipa: raspberrypi: Do not require SDN (spatial denoise) algorithm

Kieran Bingham kieran.bingham at ideasonboard.com
Thu Feb 18 12:40:26 CET 2021


Hi David,

On 17/02/2021 15:24, David Plowman wrote:
> A camera tuning is not required to load an SDN algorithm. In keeping
> with other controls, do not fail when a particular control was
> expecting this algorithm, just warn that it is not present.
> 
> Signed-off-by: David Plowman <david.plowman at raspberrypi.com>

Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>

We're in src/ipa here so perhaps a tag from Naush is useful, and we can
add it to the merge queue.
--
Kieran


> ---
>  src/ipa/raspberrypi/raspberrypi.cpp | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/src/ipa/raspberrypi/raspberrypi.cpp b/src/ipa/raspberrypi/raspberrypi.cpp
> index 81a3195c..4608dfd4 100644
> --- a/src/ipa/raspberrypi/raspberrypi.cpp
> +++ b/src/ipa/raspberrypi/raspberrypi.cpp
> @@ -875,7 +875,11 @@ void IPARPi::queueRequest(const ControlList &controls)
>  		case controls::NOISE_REDUCTION_MODE: {
>  			RPiController::DenoiseAlgorithm *sdn = dynamic_cast<RPiController::DenoiseAlgorithm *>(
>  				controller_.GetAlgorithm("SDN"));
> -			ASSERT(sdn);
> +			if (!sdn) {
> +				LOG(IPARPI, Warning)
> +					<< "Could not set NOISE_REDUCTION_MODE - no SDN algorithm";
> +				break;
> +			}
>  
>  			int32_t idx = ctrl.second.get<int32_t>();
>  			auto mode = DenoiseModeTable.find(idx);
> 

-- 
Regards
--
Kieran


More information about the libcamera-devel mailing list