def run(self): filename = time.strftime( 'movie%Y%m%d_%H%M%S.fmf' ) depth = FMF.format2bpp_func(self.format) fmf_saver = FMF.FlyMovieSaver(filename,version=3, format=self.format, bits_per_pixel=depth, ) while 1: try: frame,timestamp = self.backlog.pop(0) except IndexError: # no frame available if self.quit_when_done.isSet(): break else: time.sleep(0.05) # wait 50 msec continue # try again fmf_saver.add_frame(frame,timestamp)