def init_capture(self,uid,size,fps): if uid is not None: self.capture = uvc.Capture(uid) else: self.capture = Fake_Capture() self.uid = uid self.frame_size = size self.frame_rate = fps if 'C930e' in self.capture.name: logger.debug('Timestamp offset for c930 applied: -0.1sec') self.ts_offset = -0.1 else: self.ts_offset = 0.0 #UVC setting quirks: controls_dict = dict([(c.display_name,c) for c in self.capture.controls]) try: controls_dict['Auto Focus'].value = 0 except KeyError: pass if "Pupil Cam1" in self.capture.name or "USB2.0 Camera" in self.capture.name: self.capture.bandwidth_factor = 1.3 if "ID0" in self.capture.name or "ID1" in self.capture.name: try: # Auto Exposure Priority = 1 leads to reduced framerates under low light and corrupt timestamps. controls_dict['Auto Exposure Priority'].value = 1 except KeyError: pass try: controls_dict['Absolute Exposure Time'].value = 59 except KeyError: pass try: controls_dict['Auto Focus'].value = 0 except KeyError: pass
def init_capture(self,uid): self.uid = uid if uid is not None: self.capture = uvc.Capture(uid) else: self.capture = Fake_Capture() if 'C930e' in self.capture.name: logger.debug('Timestamp offset for c930 applied: -0.1sec') self.ts_offset = -0.1 else: self.ts_offset = 0.0 #UVC setting quirks: controls_dict = dict([(c.display_name,c) for c in self.capture.controls]) try: controls_dict['Auto Focus'].value = 0 except KeyError: pass if "Pupil Cam1" in self.capture.name or "USB2.0 Camera" in self.capture.name: self.capture.bandwidth_factor = 1.8 if "ID0" in self.capture.name or "ID1" in self.capture.name: self.capture.bandwidth_factor = 1.3 try: controls_dict['Auto Exposure Priority'].value = 1 except KeyError: pass try: controls_dict['Saturation'].value = 0 except KeyError: pass try: controls_dict['Absolute Exposure Time'].value = 63 except KeyError: pass try: controls_dict['Auto Focus'].value = 0 except KeyError: pass