Change blender error handling behavior

This commit is contained in:
Brett Williams
2023-05-27 22:03:41 -05:00
parent 528c802fe2
commit 06c9589093
2 changed files with 6 additions and 5 deletions

View File

@@ -64,7 +64,6 @@ class BaseRenderWorker(object):
self.status = RenderStatus.NOT_STARTED
self.warnings = []
self.errors = []
self.halt_on_errors = True
self.failed_attempts = 0
self.maximum_attempts = 1
@@ -197,10 +196,10 @@ class BaseRenderWorker(object):
return self.__thread.is_alive()
return False
def log_error(self, error_line):
def log_error(self, error_line, halt_render=False):
logger.error(error_line)
self.errors.append(error_line)
if self.halt_on_errors:
if halt_render:
self.stop(is_error=True)
def stop(self, is_error=False):

View File

@@ -87,7 +87,9 @@ class BlenderRenderWorker(BaseRenderWorker):
logger.debug(
'Frame:{0} | Mem:{1} | Time:{2} | Remaining:{3}'.format(self.current_frame, memory_use,
time_elapsed, time_remaining))
elif "file doesn't exist" in line.lower() or 'error' in line.lower():
elif "file doesn't exist" in line.lower():
self.log_error(line, halt_render=True)
elif 'error' in line.lower():
self.log_error(line)
elif 'Saved' in line or 'Saving' in line or 'quit' in line:
match = re.match(r'Time: (.*) \(Saving', line)
@@ -125,7 +127,7 @@ class BlenderRenderWorker(BaseRenderWorker):
try:
image_sequence_to_video(source_glob_pattern=glob_pattern,
output_path=self.output_path + '_preview.mp4',
output_path=self.output_path + '.mp4',
framerate=self.scene_info['fps'])
logger.info('Successfully generated preview image sequence')
except Exception as e: