From 258120a0e917c9d4faead4707e69ebc72f859e5e Mon Sep 17 00:00:00 2001 From: Dave Jones Date: Sat, 9 May 2020 11:38:57 +0100 Subject: [PATCH 1/2] HQ camera changes Still need to determine final sensor name and framerate-limitations but resolutions are correct --- picamera/camera.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/picamera/camera.py b/picamera/camera.py index 36b1202a..d7d7fbbd 100644 --- a/picamera/camera.py +++ b/picamera/camera.py @@ -229,6 +229,17 @@ class PiCamera(object): 6: mo.PiSensorMode('720p', (40, 90), full_fov=False), 7: mo.PiSensorMode('VGA', (40, 90), full_fov=False), }, + # XXX guessing testc isn't the final sensor name, and these modes are + # probably a bit wrong (definitely the framerates which are entirely + # guesses!). May want to extend PiSensorMode to have a bpp field given + # the XGA modes beneath are definitely 10-bit and the rest are 12-bit + # raw? Doesn't matter for picamera operations, but useful to API users + 'testc': { + 1: mo.PiSensorMode('2028x1088', (1, 30), full_fov=False), + 2: mo.PiSensorMode('2028x1520', (1, 15), still=True), + 3: mo.PiSensorMode('4056x3040', (1/10, 1), still=True), + 4: mo.PiSensorMode('1012x760', (1, 40)), + }, } METER_MODES = { @@ -491,6 +502,7 @@ def _init_revision(self, options): if revision.lower() == 'ov5647': PiCamera.MAX_FRAMERATE = 90 else: + # XXX is this correct for sensor testc? PiCamera.MAX_FRAMERATE = 120 self._revision = revision From 31751bb96d8f78f3a24fa4dbc29e34ea8714ac5a Mon Sep 17 00:00:00 2001 From: chrisruk Date: Tue, 28 Jul 2020 12:36:57 +0100 Subject: [PATCH 2/2] new framerates --- picamera/camera.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/picamera/camera.py b/picamera/camera.py index d7d7fbbd..f815e379 100644 --- a/picamera/camera.py +++ b/picamera/camera.py @@ -235,10 +235,16 @@ class PiCamera(object): # the XGA modes beneath are definitely 10-bit and the rest are 12-bit # raw? Doesn't matter for picamera operations, but useful to API users 'testc': { - 1: mo.PiSensorMode('2028x1088', (1, 30), full_fov=False), - 2: mo.PiSensorMode('2028x1520', (1, 15), still=True), - 3: mo.PiSensorMode('4056x3040', (1/10, 1), still=True), - 4: mo.PiSensorMode('1012x760', (1, 40)), + 1: mo.PiSensorMode('2028x1088', (1/10, 50), full_fov=False), + 2: mo.PiSensorMode('2028x1520', (1/10, 50), still=True), + 3: mo.PiSensorMode('4056x3040', (5/1000, 10), still=True), + 4: mo.PiSensorMode('1012x760', (50.1, 120)), + }, + 'imx477': { + 1: mo.PiSensorMode('2028x1088', (1/10, 50), full_fov=False), + 2: mo.PiSensorMode('2028x1520', (1/10, 50), still=True), + 3: mo.PiSensorMode('4056x3040', (5/1000, 10), still=True), + 4: mo.PiSensorMode('1012x760', (50.1, 120)), }, }