diff --git a/README.md b/README.md index 594eb07..8cca35b 100644 --- a/README.md +++ b/README.md @@ -83,5 +83,5 @@ SET: - [x] PTZ - [x] Zoom - [x] Focus -- [ ] Image (Brightness, Contrast, Saturation, Hue, Sharp, Mirror, Rotate) +- [X] Image (Brightness, Contrast, Saturation, Hue, Sharp, Mirror, Rotate) - [X] Advanced Image (Anti-flicker, Exposure, White Balance, DayNight, Backlight, LED light, 3D-NR) diff --git a/api/image.py b/api/image.py index 4bcfcca..6cdb823 100644 --- a/api/image.py +++ b/api/image.py @@ -2,25 +2,26 @@ class ImageAPIMixin: """API calls for image settings.""" - 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: + def set_adv_image_settings(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 @@ -63,3 +64,38 @@ class ImageAPIMixin: } }] return self._execute_command('SetIsp', body) + + def set_image_settings(self, + brightness=128, + contrast=62, + hue=1, + saturation=125, + sharpness=128) -> object: + """ + Sets the camera image settings. + + :param brightness: int + :param contrast: string + :param hue: int + :param saturation: int + :param sharpness: int + :return: response + """ + body = [ + { + "cmd": "SetImage", + "action": 0, + "param": { + "Image": { + "bright": brightness, + "channel": 0, + "contrast": contrast, + "hue": hue, + "saturation": saturation, + "sharpen": sharpness + } + } + } + ] + + return self._execute_command('SetImage', body)