mirror of
https://github.com/blw1138/Zordon.git
synced 2025-12-17 16:58:12 +00:00
Add ability to get file list and download files from project output
This commit is contained in:
@@ -75,15 +75,15 @@ class AERenderWorker(BaseRenderWorker):
|
||||
# }
|
||||
job = {'template':
|
||||
{
|
||||
'src': 'file://' + self.input, 'composition': self.comp.replace('"', ''),
|
||||
'src': 'file://' + self.input_path, 'composition': self.comp.replace('"', ''),
|
||||
'settingsTemplate': self.render_settings.replace('"', ''),
|
||||
'outputModule': self.omsettings.replace('"', ''), 'outputExt': 'mov'}
|
||||
}
|
||||
x = ['./nexrender-cli-macos', "'{}'".format(json.dumps(job))]
|
||||
else:
|
||||
logging.info('nexrender not found')
|
||||
x = [aerender_path(), '-project', self.input, '-comp', self.comp, '-RStemplate', self.render_settings,
|
||||
'-OMtemplate', self.omsettings, '-output', self.output]
|
||||
x = [aerender_path(), '-project', self.input_path, '-comp', self.comp, '-RStemplate', self.render_settings,
|
||||
'-OMtemplate', self.omsettings, '-output', self.output_path]
|
||||
return x
|
||||
|
||||
def _parse_stdout(self, line):
|
||||
|
||||
@@ -44,12 +44,12 @@ class BlenderRenderWorker(BaseRenderWorker):
|
||||
|
||||
def _generate_subprocess(self):
|
||||
|
||||
cmd = [self.renderer_path(), '-b', self.input]
|
||||
cmd = [self.renderer_path(), '-b', self.input_path]
|
||||
|
||||
if self.camera:
|
||||
cmd.extend(['--python-expr', f"import bpy;bpy.context.scene.camera = bpy.data.objects['{self.camera}'];"])
|
||||
|
||||
cmd.extend(['-E', self.engine, '-o', self.output, '-F', self.export_format])
|
||||
cmd.extend(['-E', self.engine, '-o', self.output_path, '-F', self.export_format])
|
||||
|
||||
# all frames or single
|
||||
cmd.extend(['-a'] if self.render_all_frames else ['-f', str(self.frame)])
|
||||
|
||||
@@ -41,10 +41,10 @@ class FFMPEGRenderWorker(BaseRenderWorker):
|
||||
|
||||
def _generate_subprocess(self):
|
||||
|
||||
cmd = [self.renderer_path(), '-y', '-stats', '-i', self.input]
|
||||
cmd = [self.renderer_path(), '-y', '-stats', '-i', self.input_path]
|
||||
if self.args:
|
||||
cmd.extend(self.args)
|
||||
cmd.append(self.output)
|
||||
cmd.append(self.output_path)
|
||||
|
||||
return cmd
|
||||
|
||||
|
||||
@@ -45,8 +45,8 @@ class BaseRenderWorker(object):
|
||||
raise ValueError(err_meg)
|
||||
|
||||
# Essential Info
|
||||
self.input = input_path
|
||||
self.output = output_path
|
||||
self.input_path = input_path
|
||||
self.output_path = output_path
|
||||
self.args = args or {}
|
||||
self.date_created = datetime.now()
|
||||
self.renderer_version = self.version()
|
||||
@@ -96,9 +96,9 @@ class BaseRenderWorker(object):
|
||||
|
||||
def start(self):
|
||||
|
||||
if not os.path.exists(self.input):
|
||||
if not os.path.exists(self.input_path):
|
||||
self.status = RenderStatus.ERROR
|
||||
msg = 'Cannot find input path: {}'.format(self.input)
|
||||
msg = 'Cannot find input path: {}'.format(self.input_path)
|
||||
logger.error(msg)
|
||||
self.errors.append(msg)
|
||||
return
|
||||
@@ -111,7 +111,7 @@ class BaseRenderWorker(object):
|
||||
return
|
||||
|
||||
self.status = RenderStatus.RUNNING
|
||||
logger.info('Starting {0} {1} Render for {2}'.format(self.renderer, self.version(), self.input))
|
||||
logger.info('Starting {0} {1} Render for {2}'.format(self.renderer, self.version(), self.input_path))
|
||||
self.thread.start()
|
||||
|
||||
def run(self):
|
||||
@@ -119,10 +119,10 @@ class BaseRenderWorker(object):
|
||||
# Setup logging
|
||||
try:
|
||||
if not self.log_path:
|
||||
log_dir = os.path.join(os.path.dirname(self.input), 'logs')
|
||||
log_dir = os.path.join(os.path.dirname(self.input_path), 'logs')
|
||||
if not os.path.exists(log_dir):
|
||||
os.makedirs(log_dir)
|
||||
self.log_path = os.path.join(log_dir, os.path.basename(self.input)) + '.log'
|
||||
self.log_path = os.path.join(log_dir, os.path.basename(self.input_path)) + '.log'
|
||||
logger.info('Logs saved in {}'.format(self.log_path))
|
||||
except Exception as e:
|
||||
logger.error("Error setting up logging: {}".format(e))
|
||||
@@ -141,7 +141,7 @@ class BaseRenderWorker(object):
|
||||
|
||||
with open(self.log_path, "a") as f:
|
||||
|
||||
f.write("{3} - Starting {0} {1} Render for {2}\n".format(self.renderer, self.version(), self.input,
|
||||
f.write("{3} - Starting {0} {1} Render for {2}\n".format(self.renderer, self.version(), self.input_path,
|
||||
self.start_time.isoformat()))
|
||||
f.write(f"Running command: {' '.join(subprocess_cmds)}\n")
|
||||
for c in io.TextIOWrapper(self.process.stdout, encoding="utf-8"): # or another encoding
|
||||
@@ -173,7 +173,7 @@ class BaseRenderWorker(object):
|
||||
f.write(message)
|
||||
|
||||
if self.failed_attempts >= self.maximum_attempts and self.status is not RenderStatus.CANCELLED:
|
||||
logger.error('{} Render of {} failed after {} attempts'.format(self.renderer, self.input, self.failed_attempts))
|
||||
logger.error('{} Render of {} failed after {} attempts'.format(self.renderer, self.input_path, self.failed_attempts))
|
||||
self.status = RenderStatus.ERROR
|
||||
if not self.errors:
|
||||
self.errors = [self.last_output]
|
||||
|
||||
Reference in New Issue
Block a user