mirror of
https://github.com/vladmandic/automatic
synced 2026-09-19 09:14:35 +02:00
feat(video): video_interpolate as execution-time stage
Promote RIFE interpolation from a save-time kwarg to a real stage of the processing pipeline so per-frame work (detailer, color correction, postprocess scripts) operates on source-rate frames and the inflated stream becomes the saved output. - new modules/processing_video.py with apply_video_interpolation, interpolation_factor, expand_infotexts; PIL/tensor/numpy dispatch - video_interpolate, video_interpolate_scale, video_interpolated fields on StableDiffusionProcessingVideo - process_images_inner runs the helper after the batch loop and inflates infotexts in lockstep - save_video in modules/video.py and modules/video_models/video_save.py short-circuit re-interpolation when p.video_interpolated is set; the user-facing kwarg still flows into metadata
This commit is contained in:
@@ -691,6 +691,9 @@ class StableDiffusionProcessingVideo(StableDiffusionProcessing):
|
||||
self.vae_tile_frames: int = kwargs.pop('vae_tile_frames', 0)
|
||||
self.video_engine: str = kwargs.pop('video_engine', None)
|
||||
self.video_model: str = kwargs.pop('video_model', None)
|
||||
self.video_interpolate: int = kwargs.pop('video_interpolate', 0)
|
||||
self.video_interpolate_scale: float = kwargs.pop('video_interpolate_scale', 1.0)
|
||||
self.video_interpolated: bool = False
|
||||
self.scheduler_shift: float = 0.0
|
||||
debug(f'Process init: mode={self.__class__.__name__} kwargs={kwargs}') # pylint: disable=protected-access
|
||||
super().__init__(**kwargs)
|
||||
|
||||
Reference in New Issue
Block a user