[libcamera-devel] [PATCH 1/2] py: gen-py-controls: Remove SceneFlicker workaround

Kieran Bingham kieran.bingham at ideasonboard.com
Tue Jul 25 14:56:40 CEST 2023

The python bindings layer has to parse the libcamera controls to ensure
that they are converted to suitable names for the python layer.

Part of this strips out common prefixes from control names, however the
SceneFlicker control would end up using an illegal name if processed in
the same way as the other controls.

The SceneFlicker control has now been removed as part of the
introduction of the AeFlickerMode and AeFlickerPeriod controls.

Remove the workaround in the python layer.

Fixes: 6fdbf3f38c31 ("libcamera: controls: Add controls for AEC/AGC flicker avoidance")
Signed-off-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
 src/py/libcamera/gen-py-controls.py | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/src/py/libcamera/gen-py-controls.py b/src/py/libcamera/gen-py-controls.py
index 99f3bbcf5b80..9948c41e42b1 100755
--- a/src/py/libcamera/gen-py-controls.py
+++ b/src/py/libcamera/gen-py-controls.py
@@ -48,9 +48,6 @@ def generate_py(controls, mode):
             # Adjustments for controls
             if name == 'LensShadingMapMode':
                 prefix = 'LensShadingMapMode'
-            elif name == 'SceneFlicker':
-                # If we strip the prefix, we would get '50Hz', which is illegal name
-                prefix = ''
                 prefix = find_common_prefix([e['name'] for e in enum])

More information about the libcamera-devel mailing list