mirror of
https://github.com/blw1138/Zordon.git
synced 2025-12-17 08:48:13 +00:00
Hotfix: Failing to convert image sequences that do not start on frame 1
This commit is contained in:
@@ -2,9 +2,11 @@ import subprocess
|
|||||||
from lib.engines.ffmpeg_engine import FFMPEG
|
from lib.engines.ffmpeg_engine import FFMPEG
|
||||||
|
|
||||||
|
|
||||||
def image_sequence_to_video(source_glob_pattern, output_path, framerate=24, encoder="prores_ks", profile=4):
|
def image_sequence_to_video(source_glob_pattern, output_path, framerate=24, encoder="prores_ks", profile=4,
|
||||||
subprocess.run([FFMPEG.renderer_path(), "-framerate", str(framerate), "-i", f"{source_glob_pattern}",
|
start_frame=1):
|
||||||
"-c:v", encoder, "-profile:v", str(profile), '-pix_fmt', 'yuva444p10le', output_path], check=True)
|
subprocess.run([FFMPEG.renderer_path(), "-framerate", str(framerate), "-start_number", str(start_frame), "-i",
|
||||||
|
f"{source_glob_pattern}", "-c:v", encoder, "-profile:v", str(profile), '-pix_fmt', 'yuva444p10le',
|
||||||
|
output_path], check=True)
|
||||||
|
|
||||||
|
|
||||||
def save_first_frame(source_path, dest_path, max_width=1280):
|
def save_first_frame(source_path, dest_path, max_width=1280):
|
||||||
|
|||||||
@@ -128,7 +128,8 @@ class BlenderRenderWorker(BaseRenderWorker):
|
|||||||
pattern = os.path.splitext(self.output_path)[0] + "_%04d" + most_common_extension(output_dir_files)
|
pattern = os.path.splitext(self.output_path)[0] + "_%04d" + most_common_extension(output_dir_files)
|
||||||
image_sequence_to_video(source_glob_pattern=pattern,
|
image_sequence_to_video(source_glob_pattern=pattern,
|
||||||
output_path=self.output_path + '.mov',
|
output_path=self.output_path + '.mov',
|
||||||
framerate=self.scene_info['fps'])
|
framerate=self.scene_info['fps'],
|
||||||
|
start_frame=self.start_frame)
|
||||||
logger.info('Successfully generated preview video from image sequence')
|
logger.info('Successfully generated preview video from image sequence')
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error(f'Error generating video from image sequence: {e}')
|
logger.error(f'Error generating video from image sequence: {e}')
|
||||||
|
|||||||
Reference in New Issue
Block a user