Separated JPEG quality and MJPEG quality

This commit is contained in:
Joel Collins 2020-06-11 16:24:44 +01:00
parent 37b075e7f5
commit e01e96ea3c

View file

@ -108,7 +108,8 @@ class PiCameraStreamer(BaseCamera):
1312, 1312,
976, 976,
) #: tuple: Resolution for numpy array captures ) #: tuple: Resolution for numpy array captures
self.jpeg_quality = 75 #: int: JPEG quality self.jpeg_quality = 100 #: int: JPEG quality
self.mjpeg_quality = 75 #: int: MJPEG quality
# Set default lens shading table path # Set default lens shading table path
self.picamera_lst_path = settings_file_path( self.picamera_lst_path = settings_file_path(
@ -154,6 +155,7 @@ class PiCameraStreamer(BaseCamera):
"image_resolution": self.image_resolution, "image_resolution": self.image_resolution,
"numpy_resolution": self.numpy_resolution, "numpy_resolution": self.numpy_resolution,
"jpeg_quality": self.jpeg_quality, "jpeg_quality": self.jpeg_quality,
"mjpeg_quality": self.mjpeg_quality,
"picamera": {}, "picamera": {},
} }
) )
@ -474,7 +476,7 @@ class PiCameraStreamer(BaseCamera):
self.camera.start_recording( self.camera.start_recording(
self.stream, self.stream,
format="mjpeg", format="mjpeg",
quality=self.jpeg_quality, quality=self.mjpeg_quality,
bitrate=-1, # RWB: disable bitrate control bitrate=-1, # RWB: disable bitrate control
# (bitrate control makes JPEG size less good as a focus # (bitrate control makes JPEG size less good as a focus
# metric) # metric)
@ -526,7 +528,7 @@ class PiCameraStreamer(BaseCamera):
self.camera.capture( self.camera.capture(
output, output,
format=fmt, format=fmt,
quality=100, quality=self.jpeg_quality,
resize=resize, resize=resize,
bayer=(not use_video_port) and bayer, bayer=(not use_video_port) and bayer,
use_video_port=use_video_port, use_video_port=use_video_port,