From dd86eaca2e3851de08b1a267cc79ebdb1832e280 Mon Sep 17 00:00:00 2001 From: Karl Moos Date: Fri, 30 Oct 2020 06:00:03 -0500 Subject: [PATCH] Add Advanced Image settings --- README.md | 2 +- api/recording.py | 62 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 63 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index fcf2dae..594eb07 100644 --- a/README.md +++ b/README.md @@ -84,4 +84,4 @@ SET: - [x] Zoom - [x] Focus - [ ] Image (Brightness, Contrast, Saturation, Hue, Sharp, Mirror, Rotate) -- [ ] Advanced Image (Anti-flicker, Exposure, White Balance, DayNight, Backlight, LED light, 3D-NR) +- [X] Advanced Image (Anti-flicker, Exposure, White Balance, DayNight, Backlight, LED light, 3D-NR) diff --git a/api/recording.py b/api/recording.py index 259e56a..5d1d7d6 100644 --- a/api/recording.py +++ b/api/recording.py @@ -69,6 +69,68 @@ class RecordingAPIMixin: }}] return self._execute_command('SetEnc', body) + def set_advanced_imaging(self, + anti_flicker='Outdoor', + exposure='Auto', + gain_min=1, + gain_max=62, + shutter_min=1, + shutter_max=125, + blue_gain=128, + red_gain=128, + white_balance='Auto', + day_night='Auto', + back_light='DynamicRangeControl', + blc=128, + drc=128, + rotation=0, + mirroring=0, + nr3d=1) -> object: + """ + Sets the advanced camera settings. + :param anti_flicker: string + :param exposure: string + :param gain_min: int + :param gain_max: string + :param shutter_min: int + :param shutter_max: int + :param blue_gain: int + :param red_gain: int + :param white_balance: string + :param day_night: string + :param back_light: string + :param blc: int + :param drc: int + :param rotation: int + :param mirroring: int + :param nr3d: int + :return: response + """ + body = [{ + "cmd": "SetIsp", + "action": 0, + "param": { + "Isp": { + "channel": 0, + "antiFlicker": anti_flicker, + "exposure": exposure, + "gain": {"min": gain_min, "max": gain_max}, + "shutter": {"min": shutter_min, "max": shutter_max}, + "blueGain": blue_gain, + "redGain": red_gain, + "whiteBalance": white_balance, + "dayNight": day_night, + "backLight": back_light, + "blc": blc, + "drc": drc, + "rotation": rotation, + "mirroring": mirroring, + "nr3d": nr3d + } + } + }] + return self._execute_command('SetIsp', body) + ########### # RTSP Stream ###########