def re_init(self, cam, size=(640, 480), fps=30): current_size = self.capture.get_size() current_fps = self.capture.get_rate() self.capture.cleanup() self.capture = None #recreate the bar with new values bar_pos = self.bar._get_position() self.bar.destroy() self.src_id = cam.src_id self.serial = cam.serial self.name = cam.name self.controls = Controls(self.src_id) try: self.controls['focus_auto'].set_val(0) except KeyError: pass try: self.controls['exposure_auto_priority'].set_val(0) except KeyError: pass self.use_hw_ts = self.check_hw_ts_support() self.capture = VideoCapture(self.src_id, current_size, current_fps, self.timebase, self.use_hw_ts) self.get_frame = self.capture.read self.get_now = self.capture.get_time_monotonic self.create_atb_bar(bar_pos)
def __init__(self, cam, size=(640, 480), fps=None, timebase=None): self.src_id = cam.src_id self.serial = cam.serial self.name = cam.name self.controls = Controls(self.src_id) try: self.controls['focus_auto'].set_val(0) except KeyError: pass try: # exposure_auto_priority == 1 # leads to reduced framerates under low light and corrupt timestamps. self.controls['exposure_auto_priority'].set_val(0) except KeyError: pass self.timebase = timebase self.use_hw_ts = self.check_hw_ts_support() #give camera some time to change settings. sleep(0.3) self.capture = VideoCapture(self.src_id, size, fps, timebase=self.timebase, use_hw_timestamps=self.use_hw_ts) self.get_frame = self.capture.read self.get_now = self.capture.get_time_monotonic
def __init__(self, cam, size=(640, 480), fps=None): self.src_id = cam.src_id self.serial = cam.serial self.name = cam.name self.controls = Controls(self.src_id) try: self.controls['focus_auto'].set_val(0) except KeyError: pass #give camera some time to change settings. sleep(0.3) self.capture = VideoCapture(self.src_id, size, fps) self.get_frame = self.capture.read
def re_init(self, cam, size=(640, 480), fps=30): current_size = self.capture.get_size() current_fps = self.capture.get_rate() self.capture.cleanup() self.capture = None #recreate the bar with new values bar_pos = self.bar._get_position() self.bar.destroy() self.src_id = cam.src_id self.serial = cam.serial self.name = cam.name self.controls = Controls(self.src_id) try: self.controls['focus_auto'].set_val(0) except KeyError: pass self.capture = VideoCapture(self.src_id, current_size, current_fps) self.get_frame = self.capture.read self.create_atb_bar(bar_pos)