mirror of
https://github.com/vladmandic/automatic
synced 2026-09-19 09:14:35 +02:00
feat(video): wire scripts and control to video_interpolate field
Set p.video_interpolate at run() entry so process_images_inner picks up the helper. Save calls keep their existing kwargs; the sentinel guard skips re-interpolation when the helper already ran. - animatediff, text2video, image2video, stablevideodiffusion route mp4_interpolate into p.video_interpolate - modules/control/run.py routes the request video_interpolate arg - xyz_grid intentionally untouched: its end-of-axis save_video stitches the cell slideshow, not per-cell videos; a future video_interpolate axis would set p.video_interpolate per cell via axis_options
This commit is contained in:
@@ -248,6 +248,7 @@ class AnimateDiffScript(scripts_manager.Script):
|
||||
p.extra_generation_params['AnimateDiff'] = loaded_adapter
|
||||
p.do_not_save_grid = True
|
||||
p.ops.append('video')
|
||||
p.video_interpolate = mp4_interpolate
|
||||
p.task_args['generator'] = None
|
||||
p.task_args['num_frames'] = frames
|
||||
p.task_args['num_inference_steps'] = p.steps
|
||||
|
||||
@@ -57,6 +57,7 @@ class VGenI2VScript(scripts_manager.Script):
|
||||
return None
|
||||
if p.init_images is None or len(p.init_images) == 0:
|
||||
return None
|
||||
p.video_interpolate = mp4_interpolate
|
||||
model = [m for m in MODELS if m['name'] == model_name][0]
|
||||
repo_id = model['url']
|
||||
log.debug(f'Image2Video: model={model_name} frames={num_frames}, video={video_type} duration={duration} loop={gif_loop} pad={mp4_pad} interpolate={mp4_interpolate}')
|
||||
|
||||
@@ -69,6 +69,7 @@ class SVDScript(scripts_manager.Script):
|
||||
return frames
|
||||
|
||||
def run(self, p: processing.StableDiffusionProcessing, model, num_frames, override_resolution, min_guidance_scale, max_guidance_scale, decode_chunk_size, motion_bucket_id, noise_aug_strength, video_type, duration, gif_loop, mp4_pad, mp4_interpolate): # pylint: disable=arguments-differ, unused-argument
|
||||
p.video_interpolate = mp4_interpolate
|
||||
image = getattr(p, 'init_images', None)
|
||||
if image is None or len(image) == 0:
|
||||
log.error('SVD: no init_images')
|
||||
|
||||
@@ -54,6 +54,7 @@ class ModelScopeScript(scripts_manager.Script):
|
||||
def run(self, p: processing.StableDiffusionProcessing, model_name, use_default, num_frames, video_type, duration, gif_loop, mp4_pad, mp4_interpolate): # pylint: disable=arguments-differ, unused-argument
|
||||
if model_name == 'None':
|
||||
return None
|
||||
p.video_interpolate = mp4_interpolate
|
||||
model = [m for m in MODELS if m['name'] == model_name][0]
|
||||
log.debug(f'Text2Video: model={model} defaults={use_default} frames={num_frames}, video={video_type} duration={duration} loop={gif_loop} pad={mp4_pad} interpolate={mp4_interpolate}')
|
||||
|
||||
|
||||
Reference in New Issue
Block a user