summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Elder <paul.elder@ideasonboard.com>2022-10-06 20:23:34 +0900
committerPaul Elder <paul.elder@ideasonboard.com>2022-11-25 15:38:13 +0900
commit4af9f81802a9b58b028222385520e8c26a991d62 (patch)
treed939eb28856574d814342673e51e994e9bcf5480
parentd62f2acce42b306d3101055faefc45417da333a4 (diff)
utils: tuning: Add alsc-only libtuning raspberrypi tuning script
Add a tuning script for raspberrypi for alsc only, that uses libtuning. Since there will also be a tuning script for raspberrypi that has more modules, put the libtuning alsc module definition in a separate file so that it can be reused later. Signed-off-by: Paul Elder <paul.elder@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
-rw-r--r--utils/tuning/raspberrypi/__init__.py3
-rw-r--r--utils/tuning/raspberrypi/alsc.py19
-rwxr-xr-xutils/tuning/raspberrypi_alsc_only.py23
3 files changed, 45 insertions, 0 deletions
diff --git a/utils/tuning/raspberrypi/__init__.py b/utils/tuning/raspberrypi/__init__.py
new file mode 100644
index 00000000..9ccabb0e
--- /dev/null
+++ b/utils/tuning/raspberrypi/__init__.py
@@ -0,0 +1,3 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+#
+# Copyright (C) 2022, Paul Elder <paul.elder@ideasonboard.com>
diff --git a/utils/tuning/raspberrypi/alsc.py b/utils/tuning/raspberrypi/alsc.py
new file mode 100644
index 00000000..024eb5a3
--- /dev/null
+++ b/utils/tuning/raspberrypi/alsc.py
@@ -0,0 +1,19 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+#
+# Copyright (C) 2022, Paul Elder <paul.elder@ideasonboard.com>
+#
+# alsc.py - ALSC module instance for Raspberry Pi tuning scripts
+
+import libtuning as lt
+from libtuning.modules.lsc import ALSCRaspberryPi
+
+ALSC = \
+ ALSCRaspberryPi(do_color=lt.Param('do_alsc_colour', lt.Param.Mode.Optional, True),
+ luminance_strength=lt.Param('luminance_strength', lt.Param.Mode.Optional, 0.5),
+ debug=[lt.Debug.Plot],
+ sector_shape=(16, 12),
+ sector_x_gradient=lt.gradient.Linear(lt.Remainder.DistributeFront),
+ sector_y_gradient=lt.gradient.Linear(lt.Remainder.DistributeFront),
+ sector_average_function=lt.average.Mean(),
+ smoothing_function=lt.smoothing.MedianBlur(3),
+ )
diff --git a/utils/tuning/raspberrypi_alsc_only.py b/utils/tuning/raspberrypi_alsc_only.py
new file mode 100755
index 00000000..af04e6a8
--- /dev/null
+++ b/utils/tuning/raspberrypi_alsc_only.py
@@ -0,0 +1,23 @@
+#!/usr/bin/env python3
+# SPDX-License-Identifier: GPL-2.0-or-later
+#
+# Copyright (C) 2022, Paul Elder <paul.elder@ideasonboard.com>
+#
+# raspberrypi_alsc_only.py - Tuning script for raspberrypi, ALSC only
+
+import sys
+
+import libtuning as lt
+from libtuning.parsers import RaspberryPiParser
+from libtuning.generators import RaspberryPiOutput
+
+from raspberrypi.alsc import ALSC
+
+tuner = lt.Tuner('Raspberry Pi (ALSC only)')
+tuner.add(ALSC)
+tuner.set_input_parser(RaspberryPiParser())
+tuner.set_output_formatter(RaspberryPiOutput())
+tuner.set_output_order([ALSC])
+
+if __name__ == '__main__':
+ sys.exit(tuner.run(sys.argv))