From 365cfa2e706ec7a129abd6c92c3e0ba251dbb4b6 Mon Sep 17 00:00:00 2001 From: JohemianKnapsody <43779362+JohemianKnapsody@users.noreply.github.com> Date: Thu, 6 Mar 2025 14:45:50 +0000 Subject: [PATCH] Quality factor in capture_jpeg() --- src/labthings_picamera2/thing.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/labthings_picamera2/thing.py b/src/labthings_picamera2/thing.py index 88a4ffc..c1513a1 100644 --- a/src/labthings_picamera2/thing.py +++ b/src/labthings_picamera2/thing.py @@ -698,6 +698,7 @@ def capture_jpeg( self, metadata_getter: GetThingStates, resolution: Literal["lores", "main", "full"] = "main", + quality: int = 95, ) -> JPEGBlob: """Acquire one image from the camera as a JPEG @@ -722,6 +723,7 @@ def capture_jpeg( # to reconfigure for these if resolution in ("lores", "main") and config[resolution]: with self.picamera() as cam: + cam.options['quality'] = quality cam.capture_file(path, name=resolution, format="jpeg") else: if resolution != "full": @@ -732,6 +734,7 @@ def capture_jpeg( logging.info("Reconfiguring camera for full resolution capture") cam.configure(cam.create_still_configuration()) cam.start() + cam.options['quality'] = quality logging.info("capturing") cam.capture_file(path, name="main", format="jpeg") logging.info("done")